Skip to content

Commit 81c87ef

Browse files
committed
makepanda: only pass -undefined dynamic_lookup for Python modules
1 parent 6e77393 commit 81c87ef

File tree

1 file changed

+14
-3
lines changed

1 file changed

+14
-3
lines changed

makepanda/makepanda.py

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1017,6 +1017,14 @@ def parseopts(args):
10171017
# Fix for a bug in OSX Leopard:
10181018
LibName("GL", "-dylib_file /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib:/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib")
10191019

1020+
# Temporary exceptions to removal of this flag
1021+
if not PkgSkip("ROCKET"):
1022+
LibName("ROCKET", "-undefined dynamic_lookup")
1023+
if not PkgSkip("FFMPEG"):
1024+
LibName("FFMPEG", "-undefined dynamic_lookup")
1025+
if not PkgSkip("ASSIMP"):
1026+
LibName("ASSIMP", "-undefined dynamic_lookup")
1027+
10201028
if GetTarget() == 'android':
10211029
LibName("ALWAYS", '-llog')
10221030
LibName("ANDROID", '-landroid')
@@ -1142,6 +1150,7 @@ def BracketNameWithQuotes(name):
11421150
# Workaround for OSX bug - compiler doesn't like those flags quoted.
11431151
if (name.startswith("-framework")): return name
11441152
if (name.startswith("-dylib_file")): return name
1153+
if (name.startswith("-undefined ")): return name
11451154

11461155
# Don't add quotes when it's not necessary.
11471156
if " " not in name: return name
@@ -1815,9 +1824,11 @@ def CompileLink(dll, obj, opts):
18151824
cmd += ' -Wl,--allow-shlib-undefined'
18161825
else:
18171826
if (GetTarget() == "darwin"):
1818-
cmd = cxx + ' -undefined dynamic_lookup'
1819-
if ("BUNDLE" in opts or GetOrigExt(dll) == ".pyd"):
1820-
cmd += ' -bundle '
1827+
cmd = cxx
1828+
if GetOrigExt(dll) == ".pyd":
1829+
cmd += ' -bundle -undefined dynamic_lookup'
1830+
elif "BUNDLE" in opts:
1831+
cmd += ' -bundle'
18211832
else:
18221833
install_name = '@loader_path/../lib/' + os.path.basename(dll)
18231834
cmd += ' -dynamiclib -install_name ' + install_name

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy