summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--SConstruct9
-rw-r--r--site_scons/libdeps_next.py1
2 files changed, 7 insertions, 3 deletions
diff --git a/SConstruct b/SConstruct
index 2bfe2a2b426..92ec5fb67bb 100644
--- a/SConstruct
+++ b/SConstruct
@@ -1777,8 +1777,8 @@ elif env.TargetOSIs('windows'):
def init_no_global_add_flags(env, start_flag, end_flag):
""" Helper function for init_no_global_libdeps_tag_expand"""
- env.AppendUnique(LIBDEPS_PREFIX_FLAGS=[start_flag])
- env.PrependUnique(LIBDEPS_POSTFIX_FLAGS=[end_flag])
+ env['LIBDEPS_PREFIX_FLAGS']=[start_flag]
+ env['LIBDEPS_POSTFIX_FLAGS']=[end_flag]
if env.TargetOSIs('linux', 'freebsd', 'openbsd'):
env.AppendUnique(
LIBDEPS_SWITCH_FLAGS=[{
@@ -1806,6 +1806,8 @@ def init_no_global_libdeps_tag_expand(source, target, env, for_signature):
env.AppendUnique(SHLINKFLAGS=[start_flag])
else:
init_no_global_add_flags(env, start_flag, end_flag)
+ else:
+ init_no_global_add_flags(env, "", "")
else:
start_flag = env.get('LINK_WHOLE_ARCHIVE_LIB_START', '')
@@ -1817,7 +1819,8 @@ def init_no_global_libdeps_tag_expand(source, target, env, for_signature):
# at link time.
if "init-no-global-side-effects" not in env.get(libdeps.Constants.LibdepsTags, []):
init_no_global_add_flags(env, start_flag, end_flag)
-
+ else:
+ init_no_global_add_flags(env, "", "")
return []
env['LIBDEPS_TAG_EXPANSIONS'].append(init_no_global_libdeps_tag_expand)
diff --git a/site_scons/libdeps_next.py b/site_scons/libdeps_next.py
index caff3c1c4d1..c39a37ff25b 100644
--- a/site_scons/libdeps_next.py
+++ b/site_scons/libdeps_next.py
@@ -1010,6 +1010,7 @@ def setup_environment(env, emitting_shared=False, linting='on'):
)
env.Prepend(_LIBFLAGS="$_LIBDEPS_TAGS $_LIBDEPS $_SYSLIBDEPS ")
+ env.Prepend(ARFLAGS="$_LIBDEPS_TAGS ")
for builder_name in ("Program", "SharedLibrary", "LoadableModule", "SharedArchive"):
try:
update_scanner(env["BUILDERS"][builder_name])