summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--setup.py16
-rw-r--r--setup_base.py29
2 files changed, 30 insertions, 15 deletions
diff --git a/setup.py b/setup.py
index c88f757..306cefa 100644
--- a/setup.py
+++ b/setup.py
@@ -2,23 +2,9 @@ import sys, os
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
index 0000000..d4262af
--- /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,
+ )])