mirror of
https://github.com/crosstool-ng/crosstool-ng.git
synced 2025-02-21 09:21:52 +00:00
gcc: Make CC_GCC_TM_CLONE_REGISTRY tristate
Explicitly passing --disable-tm-clone-registry causes gcc to create a crtbegin.o with a zero-sized .init_array/.fini_array. This in turn causes ld to complain. Make CC_GCC_TM_CLONE_REGISTRY a tristate so if it's not explicitly enabled we can let ./configure decide. Fixes #1531 Fixes: 1e21a302 ("gcc: Add CT_CC_GCC_TM_CLONE_REGISTRY config") Signed-off-by: Chris Packham <judge.packham@gmail.com>
This commit is contained in:
parent
5ab29fbf3e
commit
96d8a0588f
@ -280,12 +280,19 @@ config CC_CXA_ATEXIT
|
||||
you might want to try disabling this option.
|
||||
|
||||
config CC_GCC_TM_CLONE_REGISTRY
|
||||
bool
|
||||
tristate
|
||||
prompt "Use TM clone registry"
|
||||
depends on GCC_10_or_later
|
||||
default m
|
||||
help
|
||||
Enable GCC transactional memory clone registry in libgcc.
|
||||
|
||||
Option | tm-clone-registry | Associated ./configure switch
|
||||
---------+--------------------+--------------------------------
|
||||
Y | forcibly used | --enable-tm-clone-registry
|
||||
M | auto | (none, ./configure decides)
|
||||
N | forcibly not used | --disable-tm-clone-registry
|
||||
|
||||
config CC_GCC_DISABLE_PCH
|
||||
bool
|
||||
prompt "Do not build PCH"
|
||||
|
@ -397,11 +397,11 @@ do_gcc_core_backend() {
|
||||
extra_config+=("--disable-__cxa_atexit")
|
||||
fi
|
||||
|
||||
if [ "${CT_CC_GCC_TM_CLONE_REGISTRY}" = "y" ]; then
|
||||
extra_config+=("--enable-tm-clone-registry")
|
||||
else
|
||||
extra_config+=("--disable-tm-clone-registry")
|
||||
fi
|
||||
case "${CT_CC_GCC_TM_CLONE_REGISTRY}" in
|
||||
y) extra_config+=("--enable-tm-clone-registry");;
|
||||
m) ;;
|
||||
"") extra_config+=("--disable-tm-clone-registry");;
|
||||
esac
|
||||
|
||||
if [ -n "${CT_CC_GCC_ENABLE_CXX_FLAGS}" \
|
||||
-a "${mode}" = "baremetal" ]; then
|
||||
@ -1021,11 +1021,11 @@ do_gcc_backend() {
|
||||
extra_config+=("--disable-__cxa_atexit")
|
||||
fi
|
||||
|
||||
if [ "${CT_CC_GCC_TM_CLONE_REGISTRY}" = "y" ]; then
|
||||
extra_config+=("--enable-tm-clone-registry")
|
||||
else
|
||||
extra_config+=("--disable-tm-clone-registry")
|
||||
fi
|
||||
case "${CT_CC_GCC_TM_CLONE_REGISTRY}" in
|
||||
y) extra_config+=("--enable-tm-clone-registry");;
|
||||
m) ;;
|
||||
"") extra_config+=("--disable-tm-clone-registry");;
|
||||
esac
|
||||
|
||||
if [ -n "${CT_CC_GCC_ENABLE_CXX_FLAGS}" ]; then
|
||||
extra_config+=("--enable-cxx-flags=${CT_CC_GCC_ENABLE_CXX_FLAGS}")
|
||||
|
Loading…
x
Reference in New Issue
Block a user