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>
This commit is contained in:
Yu-hsin Wang
2020-01-06 12:27:19 +08:00
parent f7903a2014
commit e92efbc4c8

View File

@@ -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'):