diff --git a/config/cc/gcc.in b/config/cc/gcc.in index 4c37d561..062bff2a 100644 --- a/config/cc/gcc.in +++ b/config/cc/gcc.in @@ -259,6 +259,15 @@ config CC_EXTRA_CONFIG help Extra flags to pass onto ./configure when configuring gcc. +config CC_GCC_ENABLE_TARGET_OPTSPACE + bool + prompt "Optimize gcc libs for size" + default y + help + Pass --enable-target-optspace to crossgcc's configure. + + This will compile crossgcc's libs with -Os. + config CC_PKGVERSION string prompt "gcc ID string" diff --git a/scripts/build/cc/gcc.sh b/scripts/build/cc/gcc.sh index fae185e8..2e7bb047 100644 --- a/scripts/build/cc/gcc.sh +++ b/scripts/build/cc/gcc.sh @@ -171,6 +171,10 @@ do_cc_core() { extra_config+=("--with-libelf=${CT_COMPLIBS_DIR}") fi + if [ "${CT_CC_GCC_ENABLE_TARGET_OPTSPACE}" = "y" ]; then + extra_config+=("--enable-target-optspace") + fi + CT_DoLog DEBUG "Extra config passed: '${extra_config[*]}'" # Use --with-local-prefix so older gccs don't look in /usr/local (http://gcc.gnu.org/PR10532) @@ -190,7 +194,6 @@ do_cc_core() { --disable-nls \ --enable-symvers=gnu \ --enable-languages="${lang_opt}" \ - --enable-target-optspace \ ${CT_CC_CORE_EXTRA_CONFIG} if [ "${build_libgcc}" = "yes" ]; then @@ -355,6 +358,10 @@ do_cc() { extra_config+=("--enable-threads=posix") fi + if [ "${CT_CC_GCC_ENABLE_TARGET_OPTSPACE}" = "y" ]; then + extra_config+=("--enable-target-optspace") + fi + CT_DoLog DEBUG "Extra config passed: '${extra_config[*]}'" # --enable-symvers=gnu really only needed for sh4 to work around a @@ -380,7 +387,6 @@ do_cc() { --enable-symvers=gnu \ --enable-c99 \ --enable-long-long \ - --enable-target-optspace \ ${CT_CC_EXTRA_CONFIG} if [ "${CT_CANADIAN}" = "y" ]; then