From 0966776b363ac7a66a5d22c05d474e35e6994c68 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Thu, 21 Oct 2010 17:41:42 +1100 Subject: [PATCH] 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. --- buildtools/wafsamba/samba_autoconf.py | 12 ++++-------- buildtools/wafsamba/samba_deps.py | 2 +- buildtools/wafsamba/wafsamba.py | 2 -- source4/heimdal_build/wscript_build | 4 +--- 4 files changed, 6 insertions(+), 14 deletions(-) diff --git a/buildtools/wafsamba/samba_autoconf.py b/buildtools/wafsamba/samba_autoconf.py index dffc5f0bdb4..8cab1285956 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 6ca5b5e5ef1..c2b95bb1ffb 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 9927aef649f..280ffd6ee24 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 ddcc76ec3c9..dc780b470b7 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, -- 2.34.1