]> granicus.if.org Git - python/commitdiff
Build _ctypes after the other extensions. Its build process depends
authorChristian Heimes <christian@cheimes.de>
Fri, 18 Jan 2008 09:51:43 +0000 (09:51 +0000)
committerChristian Heimes <christian@cheimes.de>
Fri, 18 Jan 2008 09:51:43 +0000 (09:51 +0000)
on the _weakref extension (and maybe other modules, too)

setup.py

index 7f252ef410d1459ef15615573ce6f059ae1ed375..58481bb9de2ed48055bbae2965fef2d52a03adf9 100644 (file)
--- 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.