@@ -189,8 +189,10 @@ def __init__(self, inputList, exactMatches={}, patternMatches={}):
189
189
'-nodefaultlibs' : (0 , ArgumentListFilter .linkUnaryCallback ),
190
190
# darwin flags
191
191
'-dynamiclib' : (0 , ArgumentListFilter .linkUnaryCallback ),
192
- # need to warn the darwin user that this one will rain on their parade
193
- '-fvisibility=hidden' : (0 , ArgumentListFilter .darwinWarningCallback ),
192
+ # need to warn the darwin user that these flags will rain on their parade
193
+ # (otool is a bit single minded)
194
+ '-fvisibility=hidden' : (0 , ArgumentListFilter .darwinWarningCompilerUnaryCallback ),
195
+ '-Wl,-dead_strip' : (0 , ArgumentListFilter .darwinWarningLinkUnaryCallback ),
194
196
195
197
}
196
198
@@ -320,13 +322,20 @@ def linkUnaryCallback(self, flag):
320
322
def compileUnaryCallback (self , flag ):
321
323
self .compileArgs .append (flag )
322
324
323
- def darwinWarningCallback (self , flag ):
325
+ def darwinWarningCompileUnaryCallback (self , flag ):
324
326
if sys .platform .startswith ('darwin' ):
325
327
_logger .warning ('The flag "{0}" cannot be used with this tool' .format (flag ))
326
328
sys .exit (1 )
327
329
else :
328
330
self .compileArgs .append (flag )
329
331
332
+ def darwinWarningLinkUnaryCallback (self , flag ):
333
+ if sys .platform .startswith ('darwin' ):
334
+ _logger .warning ('The flag "{0}" cannot be used with this tool' .format (flag ))
335
+ sys .exit (1 )
336
+ else :
337
+ self .linkArgs .append (flag )
338
+
330
339
def defaultBinaryCallback (self , flag , arg ):
331
340
_logger .warning ('Ignoring compiler arg pair: "{0} {1}"' .format (flag , arg ))
332
341
0 commit comments