dependencies version checking on setup.py
[nepi.git] / setup.py
1 #!/usr/bin/env python
2 # vim: set fileencoding=utf-8
3 from distutils.core import setup
4 import sys
5
6 # CHECK dependencies
7 # Python >= 2.6
8 if sys.hexversion < 0x2060000:
9     raise RuntimeError("Python version >= 2.6 required")
10 # ipaddr >= 2.1.7
11 try:
12     import ipaddr
13     l = ipaddr.__version__.split('.')
14     l.reverse()
15     if sum( int(l[i])*pow(10,i) for i in xrange(len(l))) < 217:
16         raise RuntimeError("ipaddr >= 2.1.7 is required")
17 except:
18     raise RuntimeError("ipaddr >= 2.1.7 is required. You can download from http://ipaddr-py.googlecode.com/files/ipaddr-2.1.7.tar.gz")
19
20 setup(
21         name        = "nepi",
22         version     = "0.2",
23         description = "High-level abstraction for running network experiments",
24         author      = "Mathieu Lacage, Alina Quereilhac, Martín Ferrari and Claudio Freire",
25         url         = "http://yans.pl.sophia.inria.fr/code/hgwebdir.cgi/nepi/",
26         license     = "GPLv2",
27         platforms   = "Linux",
28         packages    = [
29             "nepi",
30             "nepi.testbeds",
31             "nepi.testbeds.netns",
32             "nepi.testbeds.ns3",
33             "nepi.testbeds.planetlab",
34             "nepi.core",
35             "nepi.util.parser",
36             "nepi.util.settools",
37             "nepi.util.graphtools",
38             "nepi.util" ],
39         package_dir = {"": "src"},
40         package_data = {"nepi.testbeds.planetlab" : [
41                                 "scripts/*.py", "scripts/*.c", "scripts/*.patch", 
42                         ],
43                         "nepi.util" : ["*.tpl"] },
44     )