6.1.2
[nepi.git] / setup.py
1 #!/usr/bin/env python
2
3 from distutils.core import setup
4
5 # python2 or python3 ?
6 import sys
7 PY2 = sys.version_info[0] == 2
8
9 # read version
10 # while cleaning up version.py might just not be there
11 try:
12     from nepi.util.version import version_tag
13 except:
14     version_tag = 'cleaningup'
15
16 ### NOTE: these 2 files are made available at install-time in MANIFEST.in
17 # read licence info
18 with open("COPYING") as f:
19     license = f.read()
20 with open("README.md") as f:
21     long_description = f.read()
22
23 ### requirements - used by pip install
24 required_modules = [ ]
25    # we are now using six for a portable code
26 required_modules.append('six')
27    # ipaddr in py2 used to be a separate lib
28    # within recent py3, it is now in standard library but named ipaddress
29 if PY2:
30     required_modules.append('ipaddr')
31    # this is required regardless of the python version
32 required_modules.append('networkx')
33    # refrain from mentioning these ones that are not exactly crucial
34    # and that have additional, non-python, dependencies
35    # that can easily break the whole install
36 #required_modules.append('matplotlib')
37 #required_modules.append('pygraphviz')
38
39 setup(
40     name             = "nepi",
41     version          = version_tag,
42     description      = "Network Experiment Management Framework",
43     long_description = long_description,
44     license          = license,
45     author           = "Alina Quereilhac",
46     author_email     = "alina.quereilhac@inria.fr",
47     download_url     = "http://build.onelab.eu/nepi/nepi-{v}.tar.gz".format(v=version_tag),
48     url              = "http://nepi.inria.fr/",
49     platforms        = "Linux, OSX",
50     packages         = [
51         "nepi",
52         "nepi.execution",
53         "nepi.resources",
54         "nepi.resources.all",
55         "nepi.resources.linux",
56         "nepi.resources.linux.ccn",
57         "nepi.resources.linux.ns3",
58         "nepi.resources.linux.ns3.ccn",
59         "nepi.resources.linux.netns",
60         "nepi.resources.netns",
61         "nepi.resources.ns3",
62         "nepi.resources.ns3.classes",
63         "nepi.resources.omf",
64         "nepi.resources.planetlab",
65         "nepi.resources.planetlab.ns3",
66         "nepi.resources.planetlab.openvswitch",
67         "nepi.util",
68         "nepi.util.parsers",
69         "nepi.data",
70         "nepi.data.processing",
71         "nepi.data.processing.ccn",
72         "nepi.data.processing.ping"],
73     package_data     = {
74         "nepi.resources.planetlab" : [ "scripts/*.py" ],
75         "nepi.resources.linux" : [ "scripts/*.py" ],
76         "nepi.resources.linux.ns3" : [ "dependencies/*.tar.gz" ]
77     },
78     install_requires = required_modules,
79 )