Rename afs.afs to afs._util so that absolute imports from afs work.
[invirt/packages/python-afs.git] / setup.py
index e3a5133..47cf789 100755 (executable)
--- a/setup.py
+++ b/setup.py
@@ -17,16 +17,22 @@ include_dirs = [os.path.join(os.path.dirname(__file__), 'afs'),
                 '%s/include' % root]
 library_dirs = ['%s/lib' % root,
                 '%s/lib/afs' % root]
                 '%s/include' % root]
 library_dirs = ['%s/lib' % root,
                 '%s/lib/afs' % root]
-libraries = ['afsauthent', 'afsrpc', 'afsutil', 'resolv']
+if os.path.exists('%s/lib/libafsauthent_pic.a' % root):
+    suffix = '_pic'
+else:
+    suffix = ''
+libraries = ['afsauthent%s' % suffix, 'afsrpc%s' % suffix, 'resolv']
 define_macros = [('AFS_PTHREAD_ENV', None)]
 
 define_macros = [('AFS_PTHREAD_ENV', None)]
 
-def PyAFSExtension(module):
+def PyAFSExtension(module, *args, **kwargs):
+    kwargs.setdefault('libraries', []).extend(libraries)
+    kwargs.setdefault('include_dirs', []).extend(include_dirs)
+    kwargs.setdefault('library_dirs', []).extend(library_dirs)
+    kwargs.setdefault('define_macros', []).extend(define_macros)
     return Extension(module,
                      ["%s.pyx" % module.replace('.', '/')],
     return Extension(module,
                      ["%s.pyx" % module.replace('.', '/')],
-                     libraries=libraries,
-                     include_dirs=include_dirs,
-                     library_dirs=library_dirs,
-                     define_macros=define_macros)
+                     *args,
+                     **kwargs)
 
 setup(
     name="PyAFS",
 
 setup(
     name="PyAFS",
@@ -38,8 +44,10 @@ setup(
     requires=['Cython'],
     packages=['afs', 'afs.tests'],
     ext_modules=[
     requires=['Cython'],
     packages=['afs', 'afs.tests'],
     ext_modules=[
-        PyAFSExtension("afs.afs"),
-        PyAFSExtension("afs._pts"),
+        PyAFSExtension("afs._util"),
+        PyAFSExtension("afs._acl"),
+        PyAFSExtension("afs._fs"),
+        PyAFSExtension("afs._pts", libraries=['krb5']),
         ],
     cmdclass= {"build_ext": build_ext}
 )
         ],
     cmdclass= {"build_ext": build_ext}
 )