Python-version-independent

This commit is contained in:
rdb 2009-07-20 09:23:34 +00:00
parent bc647ff264
commit ffcfcf0b19
2 changed files with 21 additions and 14 deletions

View File

@ -1293,20 +1293,15 @@ for pkg in PkgListGet():
if (COMPILER == "LINUX"): if (COMPILER == "LINUX"):
if (os.path.exists(THIRDPARTYLIBS+pkg.lower()+"/lib")): if (os.path.exists(THIRDPARTYLIBS+pkg.lower()+"/lib")):
CopyAllFiles(GetOutputDir()+"/lib/",THIRDPARTYLIBS+pkg.lower()+"/lib/") CopyAllFiles(GetOutputDir()+"/lib/",THIRDPARTYLIBS+pkg.lower()+"/lib/")
if (COMPILER=="MSVC"): if (COMPILER=="MSVC"):
CopyAllFiles(GetOutputDir()+"/bin/", THIRDPARTYLIBS+"extras"+"/bin/") CopyAllFiles(GetOutputDir()+"/bin/", THIRDPARTYLIBS+"extras"+"/bin/")
if (sys.platform == "win32"): if (sys.platform == "win32"):
if (PkgSkip("PYTHON")==0): if (PkgSkip("PYTHON")==0):
(arch, osName) = platform.architecture() pydll = "/" + SDK["PYTHONVERSION"].replace(".", "") + ".dll"
archName = "win64" CopyFile(GetOutputDir()+"/bin"+pydll, SDK["PYTHON"]+pydll)
if arch=='32bit': archName = "win32" CopyTree(GetOutputDir()+"/python", SDK["PYTHON"])
if os.path.isdir('thirdparty/' + archName + '/win-python'): ConditionalWriteFile(GetOutputDir()+"/python/panda.pth", "..\n../bin\n")
CopyFile(GetOutputDir()+'/bin/python25.dll', 'thirdparty/' + archName + '/win-python/python25.dll')
CopyTree(GetOutputDir()+'/python', 'thirdparty/' + archName + '/win-python')
else:
CopyFile(GetOutputDir()+'/bin/python25.dll', 'thirdparty/win-python/python25.dll')
CopyTree(GetOutputDir()+'/python', 'thirdparty/win-python')
ConditionalWriteFile(GetOutputDir()+'/python/panda.pth',"..\n../bin\n")
######################################################################## ########################################################################
## ##

View File

@ -868,12 +868,23 @@ def SdkLocatePython():
if (PkgSkip("PYTHON")==0): if (PkgSkip("PYTHON")==0):
if (sys.platform == "win32"): if (sys.platform == "win32"):
(arch, osName) = platform.architecture() (arch, osName) = platform.architecture()
if arch=='32bit': if arch == "32bit":
SDK["PYTHON"]="thirdparty/win32/win-python" SDK["PYTHON"] = "thirdparty/win32/win-python"
else: else:
SDK["PYTHON"]="thirdparty/win64/win-python" SDK["PYTHON"] = "thirdparty/win64/win-python"
if (not os.path.exists(SDK["PYTHON"])):
SDK["PYTHON"] = "thirdparty/win-python"
if (not os.path.exists(SDK["PYTHON"]+"/python.exe")):
exit("Could not find thirdparty/win-python/python.exe!")
os.system(SDK["PYTHON"].replace("/", "\\") + "\\python.exe -V > "+OUTPUTDIR+"/tmp/pythonversion 2>&1")
pv=ReadFile(OUTPUTDIR+"/tmp/pythonversion")
if (pv.startswith("Python ")==0):
exit("python -V did not produce the expected output")
pv = pv[7:10]
SDK["PYTHONVERSION"]="python"+pv
SDK["PYTHONVERSION"]="python2.5"
elif (sys.platform == "darwin"): elif (sys.platform == "darwin"):
if not SDK.has_key("MACOSX"): SdkLocateMacOSX() if not SDK.has_key("MACOSX"): SdkLocateMacOSX()
if (os.path.isdir("%s/System/Library/Frameworks/Python.framework" % SDK["MACOSX"])): if (os.path.isdir("%s/System/Library/Frameworks/Python.framework" % SDK["MACOSX"])):
@ -883,6 +894,7 @@ def SdkLocatePython():
SDK["PYTHONVERSION"] = "python"+pv SDK["PYTHONVERSION"] = "python"+pv
else: else:
exit("Could not find the python framework!") exit("Could not find the python framework!")
else: else:
os.system("python -V > "+OUTPUTDIR+"/tmp/pythonversion 2>&1") os.system("python -V > "+OUTPUTDIR+"/tmp/pythonversion 2>&1")
pv=ReadFile(OUTPUTDIR+"/tmp/pythonversion") pv=ReadFile(OUTPUTDIR+"/tmp/pythonversion")