diff options
author | Rob Savoye <rob.savoye@linaro.org> | 2015-04-07 14:56:13 -0600 |
---|---|---|
committer | Rob Savoye <rob.savoye@linaro.org> | 2015-04-07 14:56:13 -0600 |
commit | 83f2f321444c40e53d3db70646045e432488d041 (patch) | |
tree | 022a8eef5e2bb47cfe3993d052764b62190958af | |
parent | 078801903e0003116ac1af214563616a0874935c (diff) |
add support to specify which linker is used, LD or Gold.
-rwxr-xr-x | abe.sh | 12 | ||||
-rwxr-xr-x | lib/configure.sh | 3 | ||||
-rw-r--r-- | lib/globals.sh | 1 |
3 files changed, 16 insertions, 0 deletions
@@ -31,6 +31,7 @@ usage() [--list] [--march <march>] [--manifest <manifest_file>] [--parallel] [--release <release_version_string>] [--set {libc}={glibc|eglibc|newlib}] + [--set {linker}={ld|gold}] [--set {languages}={c|c++|fortran|go|lto|objc|java|ada}] [--set {cflags|ldflags|runtestflgs|makeflags}=XXX] [--set {package}={toolchain|gdb|sysroot}] @@ -240,6 +241,12 @@ OPTIONS gcc-linaro-4.9-2014.10-1.tar.xz + --set {liinker}={ld|gold} + + The default is to build the older GNU linker. This option + changes the linker to Gold, which is required for some C++ + projects, including Andriod and Chromium. + --set {libc}={glibc|eglibc|newlib} The default value is stored in lib/global.sh. This @@ -481,6 +488,11 @@ set_package() notice "Overriding ${setting} to LDFLAGS" return 0 ;; + linker|li*) + override_linker="${setting}" + notice "Overriding the default linker to ${setting} " + return 0 + ;; cflags|cf*) override_cflags="${setting}" notice "Overriding ${setting} to CFLAGS" diff --git a/lib/configure.sh b/lib/configure.sh index e60001fb..521c010a 100755 --- a/lib/configure.sh +++ b/lib/configure.sh @@ -238,6 +238,9 @@ configure_build() local opts="${opts} --build=${build} --host=${host} --target=${target} --prefix=${prefix}" ;; binutils) + if test x"${override_linker}" = x"gold"; then + local opts="${opts} --enable-gold=default" + fi local opts="${opts} --build=${build} --host=${host} --target=${target} --prefix=${prefix}" ;; gdb*) diff --git a/lib/globals.sh b/lib/globals.sh index b374bbeb..f5bcc327 100644 --- a/lib/globals.sh +++ b/lib/globals.sh @@ -102,6 +102,7 @@ release="" with_packages="toolchain,sysroot,gdb" building=yes +override_linker= override_cflags= override_ldflags= override_runtestflags= |