Author: Armin Rigo <[email protected]>
Branch: 
Changeset: r404:aa1d065d886c
Date: 2012-06-17 15:28 +0200
http://bitbucket.org/cffi/cffi/changeset/aa1d065d886c/

Log:    Split setup.py into a part in setup_base.py that can be used even
        without having installed 'setuptools' previously.

diff --git a/setup.py b/setup.py
--- a/setup.py
+++ b/setup.py
@@ -2,23 +2,9 @@
 from setuptools import setup, Feature, Extension
 
 
-sources = ['c/_ffi_backend.c']
-libraries = ['ffi']
-include_dirs = []
+from setup_base import sources, libraries, include_dirs
 
 
-if sys.platform == 'win32':
-    COMPILE_LIBFFI = 'libffi_msvc'    # from the CPython distribution
-else:
-    COMPILE_LIBFFI = None
-
-if COMPILE_LIBFFI:
-    include_dirs.append(COMPILE_LIBFFI)
-    libraries.remove('ffi')
-    sources.extend(os.path.join(COMPILE_LIBFFI, filename)
-                   for filename in os.listdir(COMPILE_LIBFFI)
-                   if filename.lower().endswith('.c'))
-
 
 setup(
     name='ffi',
diff --git a/setup_base.py b/setup_base.py
new file mode 100644
--- /dev/null
+++ b/setup_base.py
@@ -0,0 +1,29 @@
+import sys, os
+
+
+sources = ['c/_ffi_backend.c']
+libraries = ['ffi']
+include_dirs = []
+
+
+if sys.platform == 'win32':
+    COMPILE_LIBFFI = 'libffi_msvc'    # from the CPython distribution
+else:
+    COMPILE_LIBFFI = None
+
+if COMPILE_LIBFFI:
+    include_dirs.append(COMPILE_LIBFFI)
+    libraries.remove('ffi')
+    sources.extend(os.path.join(COMPILE_LIBFFI, filename)
+                   for filename in os.listdir(COMPILE_LIBFFI)
+                   if filename.lower().endswith('.c'))
+
+
+if __name__ == '__main__':
+    from distutils.core import setup
+    from distutils.extension import Extension
+    setup(ext_modules=[Extension(name = '_ffi_backend',
+                                 include_dirs=include_dirs,
+                                 sources=sources,
+                                 libraries=libraries,
+                                 )])
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to