1from distutils.core import setup, Extension
2from setuptools import setup, Extension, find_packages
3import os
4import re
5import sys
6
7intree=0
8
9args = sys.argv[:]
10for arg in args:
11    if arg.find('--basedir=') == 0:
12        basedir = arg.split('=')[1]
13        sys.argv.remove(arg)
14        intree=1
15
16if intree:
17    netsnmp_libs = os.popen(basedir+'/net-snmp-config --libs').read()
18    libdir = os.popen(basedir+'/net-snmp-config --build-lib-dirs '+basedir).read()
19    incdir = os.popen(basedir+'/net-snmp-config --build-includes '+basedir).read() + " " + os.popen(basedir+'/net-snmp-config --base-cflags '+basedir).read()
20    libs = re.findall(r"-l(\S+)", netsnmp_libs)
21    libdirs = re.findall(r"-L(\S+)", libdir)
22    incdirs = re.findall(r"-I(\S+)", incdir)
23else:
24    netsnmp_libs = os.popen('net-snmp-config --libs').read()
25    libdirs = re.findall(r"-L(\S+)", netsnmp_libs)
26    incdirs = []
27    libs = re.findall(r"-l(\S+)", netsnmp_libs)
28
29setup(
30    name="netsnmp-python", version="1.0a1",
31    description = 'The Net-SNMP Python Interface',
32    author = 'G. S. Marzot',
33    author_email = 'giovanni.marzot@sparta.com',
34    url = 'http://www.net-snmp.org',
35    license="BSD",
36    packages=find_packages(),
37    test_suite = "netsnmp.tests.test",
38
39    ext_modules = [
40       Extension("netsnmp.client_intf", ["netsnmp/client_intf.c"],
41                 library_dirs=libdirs,
42                 include_dirs=incdirs,
43                 libraries=libs )
44       ]
45    )
46