Whoops, fix build error on windows
This commit is contained in:
parent
3337558bba
commit
0715e7eb14
|
|
@ -55,6 +55,27 @@ for (ver,key) in MAYAVERSIONINFO:
|
|||
for (ver,key1,key2,subdir) in MAXVERSIONINFO:
|
||||
MAXVERSIONS.append(ver)
|
||||
|
||||
########################################################################
|
||||
##
|
||||
## Visual Studio Manifest Manipulation.
|
||||
##
|
||||
########################################################################
|
||||
|
||||
VC90CRTVERSIONRE=re.compile("name=['\"]Microsoft.VC90.CRT['\"]\\s+version=['\"]([0-9.]+)['\"]")
|
||||
|
||||
def GetVC90CRTVersion(fn):
|
||||
manifest = ReadFile(fn)
|
||||
version = VC90CRTVERSIONRE.search(manifest)
|
||||
if (version == None):
|
||||
exit("Cannot locate version number in "+fn)
|
||||
return version.group(1)
|
||||
|
||||
def SetVC90CRTVersion(fn, ver):
|
||||
manifest = ReadFile(fn)
|
||||
subst = " name='Microsoft.VC90.CRT' version='"+ver+"' "
|
||||
manifest = VC90CRTVERSIONRE.sub(subst, manifest)
|
||||
WriteFile(fn, manifest)
|
||||
|
||||
########################################################################
|
||||
##
|
||||
## Thirdparty libraries paths
|
||||
|
|
@ -218,11 +239,14 @@ def oscmd(cmd, ignoreError = False):
|
|||
res = os.system(cmd)
|
||||
if (res == 11):
|
||||
if (LocateBinary("gdb") and GetVerbose()):
|
||||
print GetColor("red") + "Received SIGSEGV, getting traceback..." + GetColor()
|
||||
print GetColor("red") + "Received SIGSEGV, retrieving traceback..." + GetColor()
|
||||
os.system("gdb -batch -ex 'handle SIG33 pass nostop noprint' -ex 'set pagination 0' -ex 'run' -ex 'bt full' -ex 'info registers' -ex 'thread apply all backtrace' -ex 'quit' --args %s < /dev/null" % cmd)
|
||||
else:
|
||||
print GetColor("red") + "Received SIGSEGV" + GetColor()
|
||||
if res != 0 and not ignoreError:
|
||||
if "interrogate" in cmd.split(" ", 1)[0] and GetVerbose():
|
||||
print GetColor("red") + "Interrogate failed, retrieving debug output..." + GetColor()
|
||||
os.system(cmd.split(" ", 1)[0] + " -v " + cmd.split(" ", 1)[1])
|
||||
exit("")
|
||||
|
||||
########################################################################
|
||||
|
|
@ -710,27 +734,6 @@ def CheckPandaSourceTree():
|
|||
(os.path.exists(os.path.join(dir, "panda","src","pandabase","pandabase.h"))==0)):
|
||||
exit("Current directory is not the root of the panda tree.")
|
||||
|
||||
########################################################################
|
||||
##
|
||||
## Visual Studio Manifest Manipulation.
|
||||
##
|
||||
########################################################################
|
||||
|
||||
VC90CRTVERSIONRE=re.compile("name=['\"]Microsoft.VC90.CRT['\"]\\s+version=['\"]([0-9.]+)['\"]")
|
||||
|
||||
def GetVC90CRTVersion(fn):
|
||||
manifest = ReadFile(fn)
|
||||
version = VC90CRTVERSIONRE.search(manifest)
|
||||
if (version == None):
|
||||
exit("Cannot locate version number in "+fn)
|
||||
return version.group(1)
|
||||
|
||||
def SetVC90CRTVersion(fn, ver):
|
||||
manifest = ReadFile(fn)
|
||||
subst = " name='Microsoft.VC90.CRT' version='"+ver+"' "
|
||||
manifest = VC90CRTVERSIONRE.sub(subst, manifest)
|
||||
WriteFile(fn, manifest)
|
||||
|
||||
########################################################################
|
||||
##
|
||||
## Gets or sets the output directory, by default "built".
|
||||
|
|
@ -909,7 +912,7 @@ def PkgConfigEnable(opt, pkgname, tool = "pkg-config"):
|
|||
LD_CACHE = None
|
||||
STATIC_CACHE = None
|
||||
|
||||
def GetLdCache():
|
||||
def GetLibCache():
|
||||
# Returns a list of cached libraries, not prefixed by lib and not suffixed by .so* or .a!
|
||||
global LD_CACHE
|
||||
if (LD_CACHE == None):
|
||||
|
|
@ -935,8 +938,23 @@ def GetLdCache():
|
|||
LD_CACHE.append(lib)
|
||||
return LD_CACHE
|
||||
|
||||
def ChooseLib(*libs):
|
||||
# Chooses a library from the parameters, in order of preference. Returns the first if none of them were found.
|
||||
for l in libs:
|
||||
libname = l
|
||||
if (l.startswith("lib")):
|
||||
libname = l[3:]
|
||||
if (libname in GetLibCache()):
|
||||
return libname
|
||||
else:
|
||||
print GetColor("cyan") + "Couldn't find library lib" + libname + GetColor()
|
||||
if (len(libs) > 0):
|
||||
return libs[0]
|
||||
|
||||
def PkgEnable(pkg, pkgconfig = None, libs = None, incs = None, defs = None, framework = None, tool = "pkg-config"):
|
||||
global PKG_LIST_ALL
|
||||
if (pkg in PkgListGet() and PkgSkip(pkg)):
|
||||
return
|
||||
if (pkgconfig == ""):
|
||||
pkgconfig = None
|
||||
if (framework == ""):
|
||||
|
|
@ -1011,11 +1029,14 @@ def PkgEnable(pkg, pkgconfig = None, libs = None, incs = None, defs = None, fram
|
|||
# Okay, our pkg-config attempts failed. Let's try locating the libs by ourselves.
|
||||
have_pkg = True
|
||||
for l in libs:
|
||||
if (l in GetLdCache()):
|
||||
LibName(pkg, "-l" + l)
|
||||
libname = l
|
||||
if (l.startswith("lib")):
|
||||
libname = l[3:]
|
||||
if (libname in GetLibCache()):
|
||||
LibName(pkg, "-l" + libname)
|
||||
else:
|
||||
if (VERBOSE):
|
||||
print GetColor("cyan") + "Couldn't find library lib" + l + GetColor()
|
||||
print GetColor("cyan") + "Couldn't find library lib" + libname + GetColor()
|
||||
have_pkg = False
|
||||
|
||||
for i in incs:
|
||||
|
|
|
|||
Loading…
Reference in New Issue