summaryrefslogtreecommitdiff
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
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.
-rw-r--r--buildtools/wafsamba/samba_autoconf.py12
-rw-r--r--buildtools/wafsamba/samba_deps.py2
-rw-r--r--buildtools/wafsamba/wafsamba.py2
-rw-r--r--source4/heimdal_build/wscript_build4
4 files changed, 6 insertions, 14 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,
diff --git a/source4/heimdal_build/wscript_build b/source4/heimdal_build/wscript_build
index ddcc76ec3c..dc780b470b 100644
--- a/source4/heimdal_build/wscript_build
+++ b/source4/heimdal_build/wscript_build
@@ -2,7 +2,7 @@
import os
from samba_utils import SET_TARGET_TYPE
-from samba_autoconf import CURRENT_CFLAGS, CURRENT_LDFLAGS
+from samba_autoconf import CURRENT_CFLAGS
def to_list(str):
'''Split a list, preserving quoted strings and existing lists'''
@@ -219,7 +219,6 @@ def HEIMDAL_LIBRARY(libname, source, deps, vnum,
features = features,
source = [],
target = bundled_name,
- samba_cflags = CURRENT_LDFLAGS(bld, libname, cflags),
samba_deps = deps,
samba_includes = includes,
vnum = vnum,
@@ -320,7 +319,6 @@ def HEIMDAL_BINARY(binname, source,
features = features,
source = [],
target = binname,
- samba_cflags = CURRENT_LDFLAGS(bld, binname, cflags),
samba_deps = deps,
samba_includes = includes,
local_include = True,