Browse Source

makepanda: Force choose correct extension suffix for Windows

Even when cross-compiling for 32-bit using a 64-bit copy of Python, and vice versa
rdb 3 years ago
parent
commit
ad187b29f8
1 changed files with 8 additions and 2 deletions
  1. 8 2
      makepanda/makepandacore.py

+ 8 - 2
makepanda/makepandacore.py

@@ -3489,11 +3489,17 @@ def SetOrigExt(x, v):
     ORIG_EXT[x] = v
     ORIG_EXT[x] = v
 
 
 def GetExtensionSuffix():
 def GetExtensionSuffix():
-    if sys.version_info >= (3, 0):
+    target = GetTarget()
+
+    if sys.version_info >= (3, 5) and target == 'windows':
+        if GetTargetArch() == 'x64':
+            return '.cp%d%d-win_amd64.pyd' % (sys.version_info[:2])
+        else:
+            return '.cp%d%d-win32.pyd' % (sys.version_info[:2])
+    elif sys.version_info >= (3, 0):
         import _imp
         import _imp
         return _imp.extension_suffixes()[0]
         return _imp.extension_suffixes()[0]
 
 
-    target = GetTarget()
     if target == 'windows':
     if target == 'windows':
         return '.pyd'
         return '.pyd'
     else:
     else: