diff options
-rw-r--r-- | config/cc/gcc.in.2 | 2 | ||||
-rw-r--r-- | scripts/build/cc/gcc.sh | 6 |
2 files changed, 6 insertions, 2 deletions
diff --git a/config/cc/gcc.in.2 b/config/cc/gcc.in.2 index 822cfd7c..ef976982 100644 --- a/config/cc/gcc.in.2 +++ b/config/cc/gcc.in.2 @@ -15,6 +15,7 @@ config CC_CORE_EXTRA_CONFIG_ARRAY string prompt "Core gcc extra config" default "" + depends on CC_CORE_PASS_1_NEEDED || CC_CORE_PASS_2_NEEDED help Extra flags to pass onto ./configure when configuring the core gcc. @@ -29,7 +30,6 @@ config CC_EXTRA_CONFIG_ARRAY string prompt "gcc extra config" default "" - depends on ! BARE_METAL help Extra flags to pass onto ./configure when configuring gcc. diff --git a/scripts/build/cc/gcc.sh b/scripts/build/cc/gcc.sh index 29eaabe0..8a428a23 100644 --- a/scripts/build/cc/gcc.sh +++ b/scripts/build/cc/gcc.sh @@ -188,6 +188,7 @@ do_cc_core_backend() { local -a extra_config local -a core_LDFLAGS local -a core_targets + local -a extra_user_config local arg for arg in "$@"; do @@ -201,17 +202,20 @@ do_cc_core_backend() { extra_config+=("--with-newlib") extra_config+=("--enable-threads=no") extra_config+=("--disable-shared") + extra_user_config=( "${CT_CC_CORE_EXTRA_CONFIG_ARRAY[@]}" ) copy_headers=y # For baremetal, as there's no headers to copy, # we copy an empty directory. So, who cares? ;; shared) extra_config+=("--enable-shared") + extra_user_config=( "${CT_CC_CORE_EXTRA_CONFIG_ARRAY[@]}" ) copy_headers=y ;; baremetal) extra_config+=("--with-newlib") extra_config+=("--enable-threads=no") extra_config+=("--disable-shared") + extra_user_config=( "${CT_CC_EXTRA_CONFIG_ARRAY[@]}" ) copy_headers=n ;; *) @@ -391,7 +395,7 @@ do_cc_core_backend() { ${CC_CORE_SYSROOT_ARG} \ "${extra_config[@]}" \ --enable-languages="${lang_list}" \ - "${CT_CC_CORE_EXTRA_CONFIG_ARRAY[@]}" + "${extra_user_config[@]}" if [ "${build_libgcc}" = "yes" ]; then # HACK: we need to override SHLIB_LC from gcc/config/t-slibgcc-elf-ver or |