diff --git a/makepanda/makepandacore.py b/makepanda/makepandacore.py index ae52eb05c7..21c16d20c6 100644 --- a/makepanda/makepandacore.py +++ b/makepanda/makepandacore.py @@ -757,10 +757,16 @@ def GetThirdpartyDir(): ######################################################################## ## ## Visual Studio Manifest Manipulation. +## These functions exist to make sure we are referencing the same +## version of the VC runtime in the manifests that we are shipping +## with Panda3D, to avoid side-by-side configuration errors. Also, +## it also removes any dependency the VC80 CRT (as we only want to +## depend on the VC90 CRT). ## ######################################################################## VC90CRTVERSIONRE=re.compile("name=['\"]Microsoft.VC90.CRT['\"]\\s+version=['\"]([0-9.]+)['\"]") +VC80CRTASSEMBLYRE=re.compile("[\t \n]*[\t \n]*[\t \n]*()?[\t \n]*[\t \n]*[\t \n]*") VC90CRTVERSION=None def GetVC90CRTVersion(fn = None): @@ -784,6 +790,7 @@ def SetVC90CRTVersion(fn, ver = None): manifest = ReadFile(fn) subst = " name='Microsoft.VC90.CRT' version='"+ver+"' " manifest = VC90CRTVERSIONRE.sub(subst, manifest) + manifest = VC80CRTASSEMBLYRE.sub("", manifest) WriteFile(fn, manifest) ########################################################################