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