summaryrefslogtreecommitdiff
path: root/buildtools/wafsamba
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2010-10-21 17:41:42 +1100
committerAndrew Tridgell <tridge@samba.org>2010-10-21 19:03:27 +1100
commit0966776b363ac7a66a5d22c05d474e35e6994c68 (patch)
treeda8959513507a4360bc5c7a0f8112505080da552 /buildtools/wafsamba
parent97ce2d89655497320ca5842b9dd8dd0d7071bb64 (diff)
downloadsamba-0966776b363ac7a66a5d22c05d474e35e6994c68.tar.gz
samba-0966776b363ac7a66a5d22c05d474e35e6994c68.tar.bz2
samba-0966776b363ac7a66a5d22c05d474e35e6994c68.zip
waf: fixed the handling of -Wl,-no-undefined
this flag was not being propogated to our link rules, so we were not in fact enforcing no undefined symbols in libraries.
Diffstat (limited to 'buildtools/wafsamba')
-rw-r--r--buildtools/wafsamba/samba_autoconf.py12
-rw-r--r--buildtools/wafsamba/samba_deps.py2
-rw-r--r--buildtools/wafsamba/wafsamba.py2
3 files changed, 5 insertions, 11 deletions
diff --git a/buildtools/wafsamba/samba_autoconf.py b/buildtools/wafsamba/samba_autoconf.py
index dffc5f0bdb..8cab128595 100644
--- a/buildtools/wafsamba/samba_autoconf.py
+++ b/buildtools/wafsamba/samba_autoconf.py
@@ -457,6 +457,10 @@ def library_flags(conf, libs):
extra_ldflags = TO_LIST(getattr(conf.env, 'LDFLAGS_%s' % lib.upper(), []))
ccflags.extend(extra_ccflags)
ldflags.extend(extra_ldflags)
+ if 'EXTRA_LDFLAGS' in conf.env:
+ ldflags.extend(conf.env['EXTRA_LDFLAGS'])
+ ccflags = unique_list(ccflags)
+ ldflags = unique_list(ldflags)
return (ccflags, ldflags)
@@ -646,14 +650,6 @@ def CURRENT_CFLAGS(bld, target, cflags, hide_symbols=False):
return ret
-def CURRENT_LDFLAGS(bld, target, cflags, hide_symbols=False):
- '''work out the current loader flags. local flags are added first'''
- flags = CURRENT_CFLAGS(bld, target, cflags, hide_symbols=hide_symbols)
- if 'EXTRA_LDFLAGS' in bld.env:
- flags.extend(bld.env['EXTRA_LDFLAGS'])
- return flags
-
-
@conf
def CHECK_CC_ENV(conf):
"""trim whitespaces from 'CC'.
diff --git a/buildtools/wafsamba/samba_deps.py b/buildtools/wafsamba/samba_deps.py
index 6ca5b5e5ef..c2b95bb1ff 100644
--- a/buildtools/wafsamba/samba_deps.py
+++ b/buildtools/wafsamba/samba_deps.py
@@ -910,7 +910,7 @@ def show_object_duplicates(bld, tgt_list):
# this provides a way to save our dependency calculations between runs
savedeps_version = 3
savedeps_inputs = ['samba_deps', 'samba_includes', 'local_include', 'local_include_first', 'samba_cflags', 'source', 'grouping_library']
-savedeps_outputs = ['uselib', 'uselib_local', 'add_objects', 'includes', 'ccflags']
+savedeps_outputs = ['uselib', 'uselib_local', 'add_objects', 'includes', 'ccflags', 'ldflags']
savedeps_outenv = ['INC_PATHS']
savedeps_envvars = ['NONSHARED_BINARIES', 'GLOBAL_DEPENDENCIES']
savedeps_caches = ['GLOBAL_DEPENDENCIES', 'TARGET_ALIAS', 'TARGET_TYPE', 'INIT_FUNCTIONS', 'SYSLIB_DEPS']
diff --git a/buildtools/wafsamba/wafsamba.py b/buildtools/wafsamba/wafsamba.py
index 9927aef649..280ffd6ee2 100644
--- a/buildtools/wafsamba/wafsamba.py
+++ b/buildtools/wafsamba/wafsamba.py
@@ -197,7 +197,6 @@ def SAMBA_LIBRARY(bld, libname, source,
features = features,
source = [],
target = bundled_name,
- samba_cflags = CURRENT_LDFLAGS(bld, libname, cflags),
depends_on = depends_on,
samba_deps = deps,
samba_includes = includes,
@@ -296,7 +295,6 @@ def SAMBA_BINARY(bld, binname, source,
features = features,
source = [],
target = binname,
- samba_cflags = CURRENT_LDFLAGS(bld, binname, cflags),
samba_deps = deps,
samba_includes = includes,
local_include = local_include,