diff options
author | Matthieu Patou <mat@matws.net> | 2011-04-16 01:15:51 +0400 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2011-04-26 17:16:34 +1000 |
commit | 3a88d49d12fe6c74dffe3e8d82235c71511cc07c (patch) | |
tree | c8d7b7d4a2e9a81917bb2a41a17482c9872d4cf3 | |
parent | 0ffc4c51ee8cc9147c76d2ab1ba1f2f72c8107ca (diff) | |
download | samba-3a88d49d12fe6c74dffe3e8d82235c71511cc07c.tar.gz samba-3a88d49d12fe6c74dffe3e8d82235c71511cc07c.tar.bz2 samba-3a88d49d12fe6c74dffe3e8d82235c71511cc07c.zip |
waf: introduce reverse logic for allowing unknown symbols
Some os (ie OSX 10.6) forbids by default unknown symbols so in order to
allow them (for special case) we have no to remove linker option *but*
to add options to ask the linker to be more relax.
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
-rw-r--r-- | buildtools/wafsamba/samba_deps.py | 4 | ||||
-rwxr-xr-x | wscript | 5 |
2 files changed, 9 insertions, 0 deletions
diff --git a/buildtools/wafsamba/samba_deps.py b/buildtools/wafsamba/samba_deps.py index adeb3645ce..0bd2c6cf67 100644 --- a/buildtools/wafsamba/samba_deps.py +++ b/buildtools/wafsamba/samba_deps.py @@ -89,6 +89,10 @@ def build_dependencies(self): for f in self.env.undefined_ldflags: self.ldflags.remove(f) + if getattr(self, 'allow_undefined_symbols', False) and self.env.undefined_ignore_ldflags: + for f in self.env.undefined_ignore_ldflags: + self.ldflags.append(f) + debug('deps: computed dependencies for target %s: uselib=%s uselib_local=%s add_objects=%s', self.sname, self.uselib, self.uselib_local, self.add_objects) @@ -122,6 +122,11 @@ def configure(conf): if sys.platform != "openbsd4": conf.env.undefined_ldflags = conf.ADD_LDFLAGS('-Wl,-no-undefined', testflags=True) + if sys.platform != "openbsd4" and conf.env.undefined_ignore_ldflags == []: + if conf.CHECK_LDFLAGS(['-undefined', 'dynamic_lookup']): + conf.env.undefined_ignore_ldflags = ['-undefined', 'dynamic_lookup'] + + # gentoo always adds this. We want our normal build to be as # strict as the strictest OS we support, so adding this here # allows us to find problems on our development hosts faster. |