Create an afs.afs module for common functions, like error handling.
[invirt/packages/python-afs.git] / setup.py
index 6dc758c..977deb5 100755 (executable)
--- a/setup.py
+++ b/setup.py
@@ -2,7 +2,7 @@
 
 from setuptools import setup, find_packages
 from distutils.extension import Extension
-from Pyrex.Distutils import build_ext
+from Cython.Distutils import build_ext
 import sys
 import os
 
@@ -13,9 +13,12 @@ for root in ['/Library/OpenAFS/Tools',
     if os.path.exists('%s/include/afs/afs.h' % root):
         break
 
-include_dirs = ['%s/include' % root]
+include_dirs = [os.path.join(os.path.dirname(__file__), 'afs'),
+                '%s/include' % root]
 library_dirs = ['%s/lib' % root,
                 '%s/lib/afs' % root]
+libraries = ['afsauthent', 'afsrpc', 'afsutil', 'resolv']
+define_macros = [('AFS_PTHREAD_ENV', None)]
 
 setup(
     name="PyAFS",
@@ -23,16 +26,22 @@ setup(
     description="PyAFS - Python bindings for AFS",
     author="Evan Broder",
     author_email="broder@mit.edu",
-    license="MIT",
-    requires=['Pyrex'],
+    license="GPL",
+    requires=['Cython'],
     packages=find_packages(),
     ext_modules=[
         Extension("afs._pts",
                   ["afs/_pts.pyx"],
-                  libraries=['bos', 'volser', 'vldb', 'afsrpc', 'afsauthent',
-                             'cmd', 'usd', 'audit'],
+                  libraries=libraries,
                   include_dirs=include_dirs,
-                  library_dirs=library_dirs)
+                  library_dirs=library_dirs,
+                  define_macros=define_macros),
+        Extension("afs.afs",
+                  ["afs/afs.pyx"],
+                  libraries=libraries,
+                  include_dirs=include_dirs,
+                  library_dirs=library_dirs,
+                  define_macros=define_macros)
         ],
     cmdclass= {"build_ext": build_ext}
 )