From 0a84865f183dcecb5711250a1a96fa18ad5d3125 Mon Sep 17 00:00:00 2001 From: Evan Broder Date: Sat, 3 Jan 2009 22:34:43 -0500 Subject: [PATCH] Get PyAFS to build on Linux. I'm...not even entirely sure what all I had to do here. Signed-off-by: Evan Broder --- setup.py | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/setup.py b/setup.py index b0dbe5b..2a66b67 100755 --- a/setup.py +++ b/setup.py @@ -17,8 +17,22 @@ include_dirs = [os.path.join(os.path.dirname(__file__), 'afs'), '%s/include' % root] library_dirs = ['%s/lib' % root, '%s/lib/afs' % root] -libraries = ['bos', 'volser', 'vldb', 'afsrpc', 'afsauthent', 'cmd', - 'usd', 'audit', 'resolv', 'com_err'] +libraries = ['bos', 'volser', 'vldb', 'afsrpc', 'afsauthent', 'cmd', 'usd', + 'audit', 'util', + 'util', 'afsrpc', 'util', + 'util', 'afsauthent', 'util', + 'resolv'] +extra_objects = [] +define_macros = [('AfS_PTHREAD_ENV', None)] + +for i, l in enumerate(libraries): + if l in ('util', 'vlib') and \ + not os.path.exists('%s/lib/afs/lib%s.a' % (root, l)): + libraries.pop(i) + extra_objects.append('%s/lib/afs/%s.a' % (root, l)) + elif l == 'com_err': + libraries.pop(i) + extra_objects.append('%s/lib/afs/libcom_err.a') setup( name="PyAFS", @@ -34,7 +48,9 @@ setup( ["afs/_pts.pyx"], libraries=libraries, include_dirs=include_dirs, - library_dirs=library_dirs) + library_dirs=library_dirs, + extra_objects=extra_objects, + define_macros=define_macros) ], cmdclass= {"build_ext": build_ext} ) -- 1.7.9.5