summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYu-hsin Wang <yuhsingw@google.com>2020-01-06 12:27:19 +0800
committerYu-hsin Wang <yuhsingw@google.com>2020-01-08 09:01:55 +0000
commite92efbc4c89da0b9ba20168aee637dbc30229a8b (patch)
treed1cf1749b57e76d7db762baeac341e7a88a8dc47
parentf7903a2014ac06450c46dd12a4906fbd1ce82153 (diff)
downloadgem5-e92efbc4c89da0b9ba20168aee637dbc30229a8b.tar.xz
scons: Add '-Wl,--as-needed' to default LINKFLAGS
In current build flow, EXTRAS flag is evaluated before building gem5 tools and binaries. Such that, unneeded libraries may be linked into gem5 binaries. Adding '-Wl,--as-needed' can fix this problem also shrinks binaries. Change-Id: Ifb001786a66b0dd9b29865e39a5740313002f250 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/24003 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-by: Gabe Black <gabeblack@google.com> Maintainer: Jason Lowe-Power <jason@lowepower.com> Tested-by: kokoro <noreply+kokoro@google.com>
-rwxr-xr-xSConstruct1
1 files changed, 1 insertions, 0 deletions
diff --git a/SConstruct b/SConstruct
index ec74d699d..d84b91284 100755
--- a/SConstruct
+++ b/SConstruct
@@ -372,6 +372,7 @@ if main['GCC'] or main['CLANG']:
main.Append(CCFLAGS=['-I/usr/local/include'])
main.Append(CXXFLAGS=['-I/usr/local/include'])
+ main.Append(LINKFLAGS='-Wl,--as-needed')
main['FILTER_PSHLINKFLAGS'] = lambda x: str(x).replace(' -shared', '')
main['PSHLINKFLAGS'] = main.subst('${FILTER_PSHLINKFLAGS(SHLINKFLAGS)}')
if GetOption('gold_linker'):