From f02f93b6f6ff0a8b62ec2f422e07369125e1c4f2 Mon Sep 17 00:00:00 2001 From: rdb Date: Sun, 15 Nov 2009 08:39:09 +0000 Subject: [PATCH] Don't depend on the LD cache to be current --- makepanda/makepandacore.py | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/makepanda/makepandacore.py b/makepanda/makepandacore.py index 42609a32a9..7e10bcdd40 100644 --- a/makepanda/makepandacore.py +++ b/makepanda/makepandacore.py @@ -999,6 +999,7 @@ def GetLibCache(): global LD_CACHE if (LD_CACHE == None): LD_CACHE = [] + print "Generating library cache..." if (LocateBinary("ldconfig") != None): handle = os.popen(LocateBinary("ldconfig") + " -NXp") result = handle.read().strip().split("\n") @@ -1006,18 +1007,17 @@ def GetLibCache(): lib = line.strip().split(" ", 1)[0] lib = lib.split(".so", 1)[0][3:] LD_CACHE.append(lib) - else: - libs = glob.glob("/lib/*.so*") + glob.glob("/usr/lib/*.so*") + glob.glob("/usr/local/lib/*.so*") + glob.glob("/usr/PCBSD/local/lib/*.so*") - if (sys.platform == "darwin"): - libs += glob.glob("/lib/*.dylib*") + glob.glob("/usr/lib/*.dylib*") + glob.glob("/usr/local/lib/*.dylib*") - libs += glob.glob("/usr/X11/lib/*.dylib*") + glob.glob("/usr/X11R6/lib/*.dylib*") - for l in libs: - lib = os.path.basename(l).split(".so", 1)[0].split(".dylib", 1)[0][3:] + libs = glob.glob("/lib/*.so*") + glob.glob("/usr/lib/*.so*") + glob.glob("/usr/local/lib/*.so*") + glob.glob("/usr/PCBSD/local/lib/*.so*") + libs += glob.glob("/lib/*.a") + glob.glob("/usr/lib/*.a") + glob.glob("/usr/local/lib/*.a") + glob.glob("/usr/PCBSD/local/lib/*.a") + if (sys.platform == "darwin"): + libs += glob.glob("/lib/*.dylib*") + glob.glob("/usr/lib/*.dylib*") + glob.glob("/usr/local/lib/*.dylib*") + libs += glob.glob("/usr/X11/lib/*.dylib*") + glob.glob("/usr/X11R6/lib/*.dylib*") + libs += glob.glob("/lib/*.a") + glob.glob("/usr/lib/*.a") + glob.glob("/usr/local/lib/*.a") + libs += glob.glob("/usr/X11/lib/*.a") + glob.glob("/usr/X11R6/lib/*.a") + for l in libs: + lib = os.path.basename(l).split(".so", 1)[0].split(".a", 1)[0].split(".dylib", 1)[0][3:] + if lib not in LD_CACHE: LD_CACHE.append(lib) - # Now check for static libraries - they aren't found by ldconfig. - for l in glob.glob("/lib/*.a") + glob.glob("/usr/lib/*.a") + glob.glob("/usr/local/lib/*.a") + glob.glob("/usr/PCBSD/local/lib/*.a"): - lib = os.path.basename(l).split(".a", 1)[0][3:] - LD_CACHE.append(lib) return LD_CACHE def ChooseLib(*libs):