summaryrefslogtreecommitdiffstats
path: root/setup.py
diff options
context:
space:
mode:
authorChristian Heimes <christian@cheimes.de>2008-01-18 09:51:43 (GMT)
committerChristian Heimes <christian@cheimes.de>2008-01-18 09:51:43 (GMT)
commitb222bbc32105f7ca9a1c5c5ad37c07de3997b9c4 (patch)
treef829b5046eda3a149d3f0c1943d0574f309825d4 /setup.py
parent5cc3f26c4809d87a9573783a5ac98212a91c79e1 (diff)
downloadcpython-b222bbc32105f7ca9a1c5c5ad37c07de3997b9c4.zip
cpython-b222bbc32105f7ca9a1c5c5ad37c07de3997b9c4.tar.gz
cpython-b222bbc32105f7ca9a1c5c5ad37c07de3997b9c4.tar.bz2
Build _ctypes after the other extensions. Its build process depends
on the _weakref extension (and maybe other modules, too)
Diffstat (limited to 'setup.py')
-rw-r--r--setup.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/setup.py b/setup.py
index 7f252ef..58481bb 100644
--- a/setup.py
+++ b/setup.py
@@ -101,8 +101,14 @@ class PyBuildExt(build_ext):
missing = self.detect_modules()
# Remove modules that are present on the disabled list
- self.extensions = [ext for ext in self.extensions
- if ext.name not in disabled_module_list]
+ extensions = [ext for ext in self.extensions
+ if ext.name not in disabled_module_list]
+ # move ctypes to the end, it depends on other modules
+ ext_map = dict((ext.name, i) for i, ext in enumerate(extensions))
+ if "_ctypes" in ext_map:
+ ctypes = extensions.pop(ext_map["_ctypes"])
+ extensions.append(ctypes)
+ self.extensions = extensions
# Fix up the autodetected modules, prefixing all the source files
# with Modules/ and adding Python's include directory to the path.