From: Ciro Santilli Date: Wed, 7 Nov 2018 00:00:00 +0000 (+0000) Subject: scons: add --gold-linker to link with the gold linker X-Git-Tag: v19.0.0.0~1398 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=fafe4e80b76e93e3d0d05797904c19928587f5b5;p=gem5.git scons: add --gold-linker to link with the gold linker This option can significantly speedup link time on Linux systems, which is the main bottleneck to rebuild after small changes. Change-Id: I3b0bdd61f7dcef0d73629c8ee2ee98091953fec3 Reviewed-on: https://gem5-review.googlesource.com/c/14075 Reviewed-by: Jason Lowe-Power Maintainer: Gabe Black --- diff --git a/SConstruct b/SConstruct index d81c5abd9..0a8cd0edc 100755 --- a/SConstruct +++ b/SConstruct @@ -145,6 +145,8 @@ AddLocalOption('--default', dest='default', type='string', action='store', help='Override which build_opts file to use for defaults') AddLocalOption('--ignore-style', dest='ignore_style', action='store_true', help='Disable style checking hooks') +AddLocalOption('--gold-linker', dest='gold_linker', action='store_true', + help='Use the gold linker') AddLocalOption('--no-lto', dest='no_lto', action='store_true', help='Disable Link-Time Optimization for fast') AddLocalOption('--force-lto', dest='force_lto', action='store_true', @@ -357,6 +359,8 @@ if main['GCC'] or main['CLANG']: main['FILTER_PSHLINKFLAGS'] = lambda x: str(x).replace(' -shared', '') main['PSHLINKFLAGS'] = main.subst('${FILTER_PSHLINKFLAGS(SHLINKFLAGS)}') + if GetOption('gold_linker'): + main.Append(LINKFLAGS='-fuse-ld=gold') main['PLINKFLAGS'] = main.subst('${LINKFLAGS}') shared_partial_flags = ['-r', '-nostdlib'] main.Append(PSHLINKFLAGS=shared_partial_flags)