mirror of git://gcc.gnu.org/git/gcc.git
support Wild linker
gcc/ChangeLog: * collect2.cc (main): Add wild linker to -fuse-ld. * common.opt: Likewise. * configure: Regenerate. * configure.ac: Add detection for wild linker. * doc/invoke.texi: Document -fuse-ld=wild. * gcc.cc (driver_handle_option): Support -fuse-ld=wild. * opts.cc (common_handle_option): Likewise. libatomic/ChangeLog: * acinclude.m4: Add detection for wild linker. * configure: Regenerate. libgomp/ChangeLog: * acinclude.m4:: Add detection for wild linker. * configure: Regenerate. libitm/ChangeLog: * acinclude.m4:: Add detection for wild linker. * configure: Regenerate. libstdc++-v3/ChangeLog: * acinclude.m4:: Add detection for wild linker. * configure: Regenerate. Signed-off-by: Martin Liška <martin.liska@hey.com>
This commit is contained in:
parent
9ff2e650dd
commit
27450916cd
|
|
@ -777,6 +777,7 @@ main (int argc, char **argv)
|
|||
USE_BFD_LD,
|
||||
USE_LLD_LD,
|
||||
USE_MOLD_LD,
|
||||
USE_WILD_LD,
|
||||
USE_LD_MAX
|
||||
} selected_linker = USE_DEFAULT_LD;
|
||||
static const char *const ld_suffixes[USE_LD_MAX] =
|
||||
|
|
@ -786,7 +787,8 @@ main (int argc, char **argv)
|
|||
"ld.gold",
|
||||
"ld.bfd",
|
||||
"ld.lld",
|
||||
"ld.mold"
|
||||
"ld.mold",
|
||||
"wild"
|
||||
};
|
||||
static const char *const real_ld_suffix = "real-ld";
|
||||
static const char *const collect_ld_suffix = "collect-ld";
|
||||
|
|
@ -868,7 +870,7 @@ main (int argc, char **argv)
|
|||
#ifdef CROSS_DIRECTORY_STRUCTURE
|
||||
/* lld and mold are platform-agnostic and not prefixed with target
|
||||
triple. */
|
||||
if (!(i == USE_LLD_LD || i == USE_MOLD_LD))
|
||||
if (!(i == USE_LLD_LD || i == USE_MOLD_LD || i == USE_WILD_LD))
|
||||
full_ld_suffixes[i] = concat (target_machine, "-", ld_suffixes[i],
|
||||
NULL);
|
||||
else
|
||||
|
|
@ -964,6 +966,8 @@ main (int argc, char **argv)
|
|||
selected_linker = USE_LLD_LD;
|
||||
else if (strcmp (argv[i], "-fuse-ld=mold") == 0)
|
||||
selected_linker = USE_MOLD_LD;
|
||||
else if (strcmp (argv[i], "-fuse-ld=wild") == 0)
|
||||
selected_linker = USE_WILD_LD;
|
||||
else if (startswith (argv[i], "-o"))
|
||||
{
|
||||
/* Parse the output filename if it's given so that we can make
|
||||
|
|
@ -1056,7 +1060,8 @@ main (int argc, char **argv)
|
|||
ld_file_name = 0;
|
||||
#ifdef DEFAULT_LINKER
|
||||
if (selected_linker == USE_BFD_LD || selected_linker == USE_GOLD_LD ||
|
||||
selected_linker == USE_LLD_LD || selected_linker == USE_MOLD_LD)
|
||||
selected_linker == USE_LLD_LD || selected_linker == USE_MOLD_LD ||
|
||||
selected_linker == USE_WILD_LD)
|
||||
{
|
||||
char *linker_name;
|
||||
# ifdef HOST_EXECUTABLE_SUFFIX
|
||||
|
|
@ -1293,7 +1298,7 @@ main (int argc, char **argv)
|
|||
else if (!use_collect_ld
|
||||
&& startswith (arg, "-fuse-ld="))
|
||||
{
|
||||
/* Do not pass -fuse-ld={bfd|gold|lld|mold} to the linker. */
|
||||
/* Do not pass -fuse-ld={bfd|gold|lld|mold|wild} to the linker. */
|
||||
ld1--;
|
||||
ld2--;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3448,6 +3448,10 @@ fuse-ld=mold
|
|||
Common Driver Negative(fuse-ld=mold)
|
||||
Use the Modern linker (MOLD) linker instead of the default linker.
|
||||
|
||||
fuse-ld=wild
|
||||
Common Driver Negative(fuse-ld=wild)
|
||||
Use the Wild linker instead of the default linker.
|
||||
|
||||
fuse-linker-plugin
|
||||
Common Undocumented Var(flag_use_linker_plugin)
|
||||
|
||||
|
|
|
|||
|
|
@ -25562,6 +25562,18 @@ fi
|
|||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_is_mold" >&5
|
||||
$as_echo "$ld_is_mold" >&6; }
|
||||
|
||||
# Check to see if we are using Wild instead of ld
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using wild" >&5
|
||||
$as_echo_n "checking whether we are using wild... " >&6; }
|
||||
ld_is_wild=no
|
||||
if test x$gcc_cv_ld != x; then
|
||||
if $gcc_cv_ld --version 2>/dev/null | sed 1q \
|
||||
| grep "Wild" > /dev/null; then
|
||||
ld_is_wild=yes
|
||||
fi
|
||||
fi
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_is_wild" >&5
|
||||
$as_echo "$ld_is_wild" >&6; }
|
||||
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking gold linker with split stack support as non default" >&5
|
||||
$as_echo_n "checking gold linker with split stack support as non default... " >&6; }
|
||||
|
|
@ -26526,6 +26538,8 @@ else
|
|||
:
|
||||
elif test x"$ld_is_mold" = xyes; then
|
||||
:
|
||||
elif test x"$ld_is_wild" = xyes; then
|
||||
:
|
||||
elif echo "$ld_ver" | grep GNU > /dev/null; then
|
||||
if test 0"$ld_date" -lt 20020404; then
|
||||
if test -n "$ld_date"; then
|
||||
|
|
@ -26598,8 +26612,11 @@ elif test x"$gcc_cv_as" != x -a x"$gcc_cv_ld" != x -a x"$gcc_cv_objdump" != x ;
|
|||
if $gcc_cv_as -o conftest1.o conftest1.s > /dev/null 2>&1 \
|
||||
&& $gcc_cv_as -o conftest2.o conftest2.s > /dev/null 2>&1 \
|
||||
&& $gcc_cv_as -o conftest3.o conftest3.s > /dev/null 2>&1; then
|
||||
# Note the Wild linker has --gc-sections on by default.
|
||||
if $gcc_cv_ld -shared -o conftest1.so conftest1.o \
|
||||
conftest2.o conftest3.o > /dev/null 2>&1 \
|
||||
conftest2.o conftest3.o --no-gc-sections > /dev/null 2>&1 \
|
||||
|| $gcc_cv_ld -shared -o conftest1.so conftest1.o \
|
||||
conftest2.o conftest3.o > /dev/null 2>&1 \
|
||||
|| $gcc_cv_ld -r -o conftest1.so conftest1.o \
|
||||
conftest2.o conftest3.o > /dev/null 2>&1; then
|
||||
gcc_cv_ld_ro_rw_mix=`$gcc_cv_objdump -h conftest1.so \
|
||||
|
|
@ -27653,6 +27670,8 @@ if test x"$ld_is_gold" = xyes; then
|
|||
comdat_group=yes
|
||||
elif test x"$ld_is_mold" = xyes; then
|
||||
comdat_group=yes
|
||||
elif test x"$ld_is_wild" = xyes; then
|
||||
comdat_group=yes
|
||||
elif test $in_tree_ld = yes ; then
|
||||
comdat_group=no
|
||||
if test "$gcc_cv_gld_major_version" -eq 2 -a "$gcc_cv_gld_minor_version" -ge 16 -o "$gcc_cv_gld_major_version" -gt 2 \
|
||||
|
|
|
|||
|
|
@ -2797,6 +2797,16 @@ if test x$gcc_cv_ld != x; then
|
|||
fi
|
||||
AC_MSG_RESULT($ld_is_mold)
|
||||
|
||||
# Check to see if we are using Wild instead of ld
|
||||
AC_MSG_CHECKING(whether we are using wild)
|
||||
ld_is_wild=no
|
||||
if test x$gcc_cv_ld != x; then
|
||||
if $gcc_cv_ld --version 2>/dev/null | sed 1q \
|
||||
| grep "Wild" > /dev/null; then
|
||||
ld_is_wild=yes
|
||||
fi
|
||||
fi
|
||||
AC_MSG_RESULT($ld_is_wild)
|
||||
|
||||
AC_MSG_CHECKING(gold linker with split stack support as non default)
|
||||
# Check to see if default ld is not gold, but gold is
|
||||
|
|
@ -3219,6 +3229,8 @@ else
|
|||
:
|
||||
elif test x"$ld_is_mold" = xyes; then
|
||||
:
|
||||
elif test x"$ld_is_wild" = xyes; then
|
||||
:
|
||||
elif echo "$ld_ver" | grep GNU > /dev/null; then
|
||||
if test 0"$ld_date" -lt 20020404; then
|
||||
if test -n "$ld_date"; then
|
||||
|
|
@ -3286,8 +3298,11 @@ elif test x"$gcc_cv_as" != x -a x"$gcc_cv_ld" != x -a x"$gcc_cv_objdump" != x ;
|
|||
if $gcc_cv_as -o conftest1.o conftest1.s > /dev/null 2>&1 \
|
||||
&& $gcc_cv_as -o conftest2.o conftest2.s > /dev/null 2>&1 \
|
||||
&& $gcc_cv_as -o conftest3.o conftest3.s > /dev/null 2>&1; then
|
||||
# Note the Wild linker has --gc-sections on by default.
|
||||
if $gcc_cv_ld -shared -o conftest1.so conftest1.o \
|
||||
conftest2.o conftest3.o > /dev/null 2>&1 \
|
||||
conftest2.o conftest3.o --no-gc-sections > /dev/null 2>&1 \
|
||||
|| $gcc_cv_ld -shared -o conftest1.so conftest1.o \
|
||||
conftest2.o conftest3.o > /dev/null 2>&1 \
|
||||
|| $gcc_cv_ld -r -o conftest1.so conftest1.o \
|
||||
conftest2.o conftest3.o > /dev/null 2>&1; then
|
||||
gcc_cv_ld_ro_rw_mix=`$gcc_cv_objdump -h conftest1.so \
|
||||
|
|
@ -3703,6 +3718,8 @@ if test x"$ld_is_gold" = xyes; then
|
|||
comdat_group=yes
|
||||
elif test x"$ld_is_mold" = xyes; then
|
||||
comdat_group=yes
|
||||
elif test x"$ld_is_wild" = xyes; then
|
||||
comdat_group=yes
|
||||
elif test $in_tree_ld = yes ; then
|
||||
comdat_group=no
|
||||
if test "$gcc_cv_gld_major_version" -eq 2 -a "$gcc_cv_gld_minor_version" -ge 16 -o "$gcc_cv_gld_major_version" -gt 2 \
|
||||
|
|
|
|||
|
|
@ -19759,6 +19759,10 @@ Use the LLVM @command{lld} linker instead of the default linker.
|
|||
@item -fuse-ld=mold
|
||||
Use the Modern Linker (@command{mold}) instead of the default linker.
|
||||
|
||||
@opindex fuse-ld=wild
|
||||
@item -fuse-ld=wild
|
||||
Use the Wild linker (@command{wild}) instead of the default linker.
|
||||
|
||||
@cindex Libraries
|
||||
@opindex l
|
||||
@item -l@var{library}
|
||||
|
|
|
|||
|
|
@ -4290,6 +4290,10 @@ driver_handle_option (struct gcc_options *opts,
|
|||
use_ld = ".mold";
|
||||
break;
|
||||
|
||||
case OPT_fuse_ld_wild:
|
||||
use_ld = ".wild";
|
||||
break;
|
||||
|
||||
case OPT_fcompare_debug_second:
|
||||
compare_debug_second = 1;
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -3382,6 +3382,7 @@ common_handle_option (struct gcc_options *opts,
|
|||
case OPT_fuse_ld_gold:
|
||||
case OPT_fuse_ld_lld:
|
||||
case OPT_fuse_ld_mold:
|
||||
case OPT_fuse_ld_wild:
|
||||
case OPT_fuse_linker_plugin:
|
||||
/* No-op. Used by the driver and passed to us because it starts with f.*/
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -300,6 +300,7 @@ dnl Sets:
|
|||
dnl with_gnu_ld
|
||||
dnl libat_ld_is_gold (possibly)
|
||||
dnl libat_ld_is_mold (possibly)
|
||||
dnl libat_ld_is_wild (possibly)
|
||||
dnl libat_gnu_ld_version (possibly)
|
||||
dnl
|
||||
dnl The last will be a single integer, e.g., version 1.23.45.0.67.89 will
|
||||
|
|
@ -333,10 +334,13 @@ AC_DEFUN([LIBAT_CHECK_LINKER_FEATURES], [
|
|||
# does some of this, but throws away the result.
|
||||
libat_ld_is_gold=no
|
||||
libat_ld_is_mold=no
|
||||
libat_ld_is_wild=no
|
||||
if $LD --version 2>/dev/null | grep 'GNU gold'> /dev/null 2>&1; then
|
||||
libat_ld_is_gold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'mold' >/dev/null 2>&1; then
|
||||
libat_ld_is_mold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'Wild' >/dev/null 2>&1; then
|
||||
libat_ld_is_wild=yes
|
||||
fi
|
||||
changequote(,)
|
||||
ldver=`$LD --version 2>/dev/null |
|
||||
|
|
@ -494,6 +498,8 @@ if test $enable_symvers != no && test $libat_shared_libgcc = yes; then
|
|||
enable_symvers=gnu
|
||||
elif test $libat_ld_is_mold = yes ; then
|
||||
enable_symvers=gnu
|
||||
elif test $libat_ld_is_wild = yes ; then
|
||||
enable_symvers=gnu
|
||||
else
|
||||
# The right tools, the right setup, but too old. Fallbacks?
|
||||
AC_MSG_WARN(=== Linker version $libat_gnu_ld_version is too old for)
|
||||
|
|
|
|||
|
|
@ -15688,10 +15688,13 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
|
|||
# does some of this, but throws away the result.
|
||||
libat_ld_is_gold=no
|
||||
libat_ld_is_mold=no
|
||||
libat_ld_is_wild=no
|
||||
if $LD --version 2>/dev/null | grep 'GNU gold'> /dev/null 2>&1; then
|
||||
libat_ld_is_gold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'mold' >/dev/null 2>&1; then
|
||||
libat_ld_is_mold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'Wild' >/dev/null 2>&1; then
|
||||
libat_ld_is_wild=yes
|
||||
fi
|
||||
|
||||
ldver=`$LD --version 2>/dev/null |
|
||||
|
|
@ -15896,6 +15899,8 @@ if test $enable_symvers != no && test $libat_shared_libgcc = yes; then
|
|||
enable_symvers=gnu
|
||||
elif test $libat_ld_is_mold = yes ; then
|
||||
enable_symvers=gnu
|
||||
elif test $libat_ld_is_wild = yes ; then
|
||||
enable_symvers=gnu
|
||||
else
|
||||
# The right tools, the right setup, but too old. Fallbacks?
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === Linker version $libat_gnu_ld_version is too old for" >&5
|
||||
|
|
|
|||
|
|
@ -118,6 +118,7 @@ dnl Sets:
|
|||
dnl with_gnu_ld
|
||||
dnl libgomp_ld_is_gold (possibly)
|
||||
dnl libgomp_ld_is_mold (possibly)
|
||||
dnl libgomp_ld_is_wild (possibly)
|
||||
dnl libgomp_gnu_ld_version (possibly)
|
||||
dnl
|
||||
dnl The last will be a single integer, e.g., version 1.23.45.0.67.89 will
|
||||
|
|
@ -151,10 +152,13 @@ AC_DEFUN([LIBGOMP_CHECK_LINKER_FEATURES], [
|
|||
# does some of this, but throws away the result.
|
||||
libgomp_ld_is_gold=no
|
||||
libgomp_ld_is_mold=no
|
||||
libgomp_ld_is_wild=no
|
||||
if $LD --version 2>/dev/null | grep 'GNU gold'> /dev/null 2>&1; then
|
||||
libgomp_ld_is_gold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'mold'> /dev/null 2>&1; then
|
||||
libgomp_ld_is_mold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'Wild'> /dev/null 2>&1; then
|
||||
libgomp_ld_is_wild=yes
|
||||
fi
|
||||
changequote(,)
|
||||
ldver=`$LD --version 2>/dev/null |
|
||||
|
|
@ -312,6 +316,8 @@ if test $enable_symvers != no && test $libgomp_shared_libgcc = yes; then
|
|||
enable_symvers=gnu
|
||||
elif test $libgomp_ld_is_mold = yes ; then
|
||||
enable_symvers=gnu
|
||||
elif test $libgomp_ld_is_wild = yes ; then
|
||||
enable_symvers=gnu
|
||||
else
|
||||
# The right tools, the right setup, but too old. Fallbacks?
|
||||
AC_MSG_WARN(=== Linker version $libgomp_gnu_ld_version is too old for)
|
||||
|
|
|
|||
|
|
@ -16544,10 +16544,13 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
|
|||
# does some of this, but throws away the result.
|
||||
libgomp_ld_is_gold=no
|
||||
libgomp_ld_is_mold=no
|
||||
libgomp_ld_is_wild=no
|
||||
if $LD --version 2>/dev/null | grep 'GNU gold'> /dev/null 2>&1; then
|
||||
libgomp_ld_is_gold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'mold'> /dev/null 2>&1; then
|
||||
libgomp_ld_is_mold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'Wild'> /dev/null 2>&1; then
|
||||
libgomp_ld_is_wild=yes
|
||||
fi
|
||||
|
||||
ldver=`$LD --version 2>/dev/null |
|
||||
|
|
@ -16752,6 +16755,8 @@ if test $enable_symvers != no && test $libgomp_shared_libgcc = yes; then
|
|||
enable_symvers=gnu
|
||||
elif test $libgomp_ld_is_mold = yes ; then
|
||||
enable_symvers=gnu
|
||||
elif test $libgomp_ld_is_wild = yes ; then
|
||||
enable_symvers=gnu
|
||||
else
|
||||
# The right tools, the right setup, but too old. Fallbacks?
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === Linker version $libgomp_gnu_ld_version is too old for" >&5
|
||||
|
|
|
|||
|
|
@ -211,6 +211,7 @@ dnl Sets:
|
|||
dnl with_gnu_ld
|
||||
dnl libitm_ld_is_gold (possibly)
|
||||
dnl libitm_ld_is_mold (possibly)
|
||||
dnl libitm_ld_is_wild (possibly)
|
||||
dnl libitm_gnu_ld_version (possibly)
|
||||
dnl
|
||||
dnl The last will be a single integer, e.g., version 1.23.45.0.67.89 will
|
||||
|
|
@ -244,10 +245,13 @@ AC_DEFUN([LIBITM_CHECK_LINKER_FEATURES], [
|
|||
# does some of this, but throws away the result.
|
||||
libitm_ld_is_gold=no
|
||||
libitm_ld_is_mold=no
|
||||
libitm_ld_is_wild=no
|
||||
if $LD --version 2>/dev/null | grep 'GNU gold'> /dev/null 2>&1; then
|
||||
libitm_ld_is_gold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'mold' >/dev/null 2>&1; then
|
||||
libitm_ld_is_mold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'Wild' >/dev/null 2>&1; then
|
||||
libitm_ld_is_wild=yes
|
||||
fi
|
||||
changequote(,)
|
||||
ldver=`$LD --version 2>/dev/null |
|
||||
|
|
@ -405,6 +409,8 @@ if test $enable_symvers != no && test $libitm_shared_libgcc = yes; then
|
|||
enable_symvers=gnu
|
||||
elif test $libitm_ld_is_mold = yes ; then
|
||||
enable_symvers=gnu
|
||||
elif test $libitm_ld_is_wild = yes ; then
|
||||
enable_symvers=gnu
|
||||
else
|
||||
# The right tools, the right setup, but too old. Fallbacks?
|
||||
AC_MSG_WARN(=== Linker version $libitm_gnu_ld_version is too old for)
|
||||
|
|
|
|||
|
|
@ -17604,10 +17604,13 @@ fi
|
|||
# does some of this, but throws away the result.
|
||||
libitm_ld_is_gold=no
|
||||
libitm_ld_is_mold=no
|
||||
libitm_ld_is_wild=no
|
||||
if $LD --version 2>/dev/null | grep 'GNU gold'> /dev/null 2>&1; then
|
||||
libitm_ld_is_gold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'mold' >/dev/null 2>&1; then
|
||||
libitm_ld_is_mold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'Wild' >/dev/null 2>&1; then
|
||||
libitm_ld_is_wild=yes
|
||||
fi
|
||||
|
||||
ldver=`$LD --version 2>/dev/null |
|
||||
|
|
@ -17812,6 +17815,8 @@ if test $enable_symvers != no && test $libitm_shared_libgcc = yes; then
|
|||
enable_symvers=gnu
|
||||
elif test $libitm_ld_is_mold = yes ; then
|
||||
enable_symvers=gnu
|
||||
elif test $libitm_ld_is_wild = yes ; then
|
||||
enable_symvers=gnu
|
||||
else
|
||||
# The right tools, the right setup, but too old. Fallbacks?
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === Linker version $libitm_gnu_ld_version is too old for" >&5
|
||||
|
|
|
|||
|
|
@ -173,6 +173,7 @@ dnl Sets:
|
|||
dnl with_gnu_ld
|
||||
dnl glibcxx_ld_is_gold (set to "no" or "yes")
|
||||
dnl glibcxx_ld_is_mold (set to "no" or "yes")
|
||||
dnl glibcxx_ld_is_wild (set to "no" or "yes")
|
||||
dnl glibcxx_gnu_ld_version (possibly)
|
||||
dnl
|
||||
dnl The last will be a single integer, e.g., version 1.23.45.0.67.89 will
|
||||
|
|
@ -206,6 +207,7 @@ AC_DEFUN([GLIBCXX_CHECK_LINKER_FEATURES], [
|
|||
# does some of this, but throws away the result.
|
||||
glibcxx_ld_is_gold=no
|
||||
glibcxx_ld_is_mold=no
|
||||
glibcxx_ld_is_wild=no
|
||||
if test x"$with_gnu_ld" = x"yes"; then
|
||||
AC_MSG_CHECKING([for ld version])
|
||||
changequote(,)
|
||||
|
|
@ -213,6 +215,8 @@ AC_DEFUN([GLIBCXX_CHECK_LINKER_FEATURES], [
|
|||
glibcxx_ld_is_gold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'mold' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_mold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'Wild' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_wild=yes
|
||||
fi
|
||||
ldver=`$LD --version 2>/dev/null |
|
||||
sed -e 's/[. ][0-9]\{8\}$//;s/.* \([^ ]\{1,\}\)$/\1/; q'`
|
||||
|
|
@ -224,7 +228,7 @@ AC_DEFUN([GLIBCXX_CHECK_LINKER_FEATURES], [
|
|||
|
||||
# Set --gc-sections.
|
||||
glibcxx_have_gc_sections=no
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" ; then
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" || test "$glibcxx_ld_is_wild" = "yes" ; then
|
||||
if $LD --help 2>/dev/null | grep gc-sections >/dev/null 2>&1; then
|
||||
glibcxx_have_gc_sections=yes
|
||||
fi
|
||||
|
|
@ -4063,6 +4067,8 @@ changequote([,])dnl
|
|||
: All versions of gold support symbol versioning.
|
||||
elif test $glibcxx_ld_is_mold = yes ; then
|
||||
: All versions of mold support symbol versioning.
|
||||
elif test $glibcxx_ld_is_wild = yes ; then
|
||||
: All versions of Wild support symbol versioning.
|
||||
elif test $glibcxx_gnu_ld_version -lt $glibcxx_min_gnu_ld_version ; then
|
||||
# The right tools, the right setup, but too old. Fallbacks?
|
||||
AC_MSG_WARN(=== Linker version $glibcxx_gnu_ld_version is too old for)
|
||||
|
|
|
|||
|
|
@ -23068,6 +23068,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
|
|||
# does some of this, but throws away the result.
|
||||
glibcxx_ld_is_gold=no
|
||||
glibcxx_ld_is_mold=no
|
||||
glibcxx_ld_is_wild=no
|
||||
if test x"$with_gnu_ld" = x"yes"; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld version" >&5
|
||||
$as_echo_n "checking for ld version... " >&6; }
|
||||
|
|
@ -23076,6 +23077,8 @@ $as_echo_n "checking for ld version... " >&6; }
|
|||
glibcxx_ld_is_gold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'mold' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_mold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'Wild' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_wild=yes
|
||||
fi
|
||||
ldver=`$LD --version 2>/dev/null |
|
||||
sed -e 's/[. ][0-9]\{8\}$//;s/.* \([^ ]\{1,\}\)$/\1/; q'`
|
||||
|
|
@ -23088,7 +23091,7 @@ $as_echo "$glibcxx_gnu_ld_version" >&6; }
|
|||
|
||||
# Set --gc-sections.
|
||||
glibcxx_have_gc_sections=no
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" ; then
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" || test "$glibcxx_ld_is_wild" = "yes" ; then
|
||||
if $LD --help 2>/dev/null | grep gc-sections >/dev/null 2>&1; then
|
||||
glibcxx_have_gc_sections=yes
|
||||
fi
|
||||
|
|
@ -28936,6 +28939,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
|
|||
# does some of this, but throws away the result.
|
||||
glibcxx_ld_is_gold=no
|
||||
glibcxx_ld_is_mold=no
|
||||
glibcxx_ld_is_wild=no
|
||||
if test x"$with_gnu_ld" = x"yes"; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld version" >&5
|
||||
$as_echo_n "checking for ld version... " >&6; }
|
||||
|
|
@ -28944,6 +28948,8 @@ $as_echo_n "checking for ld version... " >&6; }
|
|||
glibcxx_ld_is_gold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'mold' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_mold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'Wild' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_wild=yes
|
||||
fi
|
||||
ldver=`$LD --version 2>/dev/null |
|
||||
sed -e 's/[. ][0-9]\{8\}$//;s/.* \([^ ]\{1,\}\)$/\1/; q'`
|
||||
|
|
@ -28956,7 +28962,7 @@ $as_echo "$glibcxx_gnu_ld_version" >&6; }
|
|||
|
||||
# Set --gc-sections.
|
||||
glibcxx_have_gc_sections=no
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" ; then
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" || test "$glibcxx_ld_is_wild" = "yes" ; then
|
||||
if $LD --help 2>/dev/null | grep gc-sections >/dev/null 2>&1; then
|
||||
glibcxx_have_gc_sections=yes
|
||||
fi
|
||||
|
|
@ -32115,6 +32121,7 @@ done
|
|||
# does some of this, but throws away the result.
|
||||
glibcxx_ld_is_gold=no
|
||||
glibcxx_ld_is_mold=no
|
||||
glibcxx_ld_is_wild=no
|
||||
if test x"$with_gnu_ld" = x"yes"; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld version" >&5
|
||||
$as_echo_n "checking for ld version... " >&6; }
|
||||
|
|
@ -32123,6 +32130,8 @@ $as_echo_n "checking for ld version... " >&6; }
|
|||
glibcxx_ld_is_gold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'mold' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_mold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'Wild' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_wild=yes
|
||||
fi
|
||||
ldver=`$LD --version 2>/dev/null |
|
||||
sed -e 's/[. ][0-9]\{8\}$//;s/.* \([^ ]\{1,\}\)$/\1/; q'`
|
||||
|
|
@ -32135,7 +32144,7 @@ $as_echo "$glibcxx_gnu_ld_version" >&6; }
|
|||
|
||||
# Set --gc-sections.
|
||||
glibcxx_have_gc_sections=no
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" ; then
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" || test "$glibcxx_ld_is_wild" = "yes" ; then
|
||||
if $LD --help 2>/dev/null | grep gc-sections >/dev/null 2>&1; then
|
||||
glibcxx_have_gc_sections=yes
|
||||
fi
|
||||
|
|
@ -38333,6 +38342,7 @@ done
|
|||
# does some of this, but throws away the result.
|
||||
glibcxx_ld_is_gold=no
|
||||
glibcxx_ld_is_mold=no
|
||||
glibcxx_ld_is_wild=no
|
||||
if test x"$with_gnu_ld" = x"yes"; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld version" >&5
|
||||
$as_echo_n "checking for ld version... " >&6; }
|
||||
|
|
@ -38341,6 +38351,8 @@ $as_echo_n "checking for ld version... " >&6; }
|
|||
glibcxx_ld_is_gold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'mold' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_mold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'Wild' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_wild=yes
|
||||
fi
|
||||
ldver=`$LD --version 2>/dev/null |
|
||||
sed -e 's/[. ][0-9]\{8\}$//;s/.* \([^ ]\{1,\}\)$/\1/; q'`
|
||||
|
|
@ -38353,7 +38365,7 @@ $as_echo "$glibcxx_gnu_ld_version" >&6; }
|
|||
|
||||
# Set --gc-sections.
|
||||
glibcxx_have_gc_sections=no
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" ; then
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" || test "$glibcxx_ld_is_wild" = "yes" ; then
|
||||
if $LD --help 2>/dev/null | grep gc-sections >/dev/null 2>&1; then
|
||||
glibcxx_have_gc_sections=yes
|
||||
fi
|
||||
|
|
@ -38621,6 +38633,7 @@ done
|
|||
# does some of this, but throws away the result.
|
||||
glibcxx_ld_is_gold=no
|
||||
glibcxx_ld_is_mold=no
|
||||
glibcxx_ld_is_wild=no
|
||||
if test x"$with_gnu_ld" = x"yes"; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld version" >&5
|
||||
$as_echo_n "checking for ld version... " >&6; }
|
||||
|
|
@ -38629,6 +38642,8 @@ $as_echo_n "checking for ld version... " >&6; }
|
|||
glibcxx_ld_is_gold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'mold' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_mold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'Wild' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_wild=yes
|
||||
fi
|
||||
ldver=`$LD --version 2>/dev/null |
|
||||
sed -e 's/[. ][0-9]\{8\}$//;s/.* \([^ ]\{1,\}\)$/\1/; q'`
|
||||
|
|
@ -38641,7 +38656,7 @@ $as_echo "$glibcxx_gnu_ld_version" >&6; }
|
|||
|
||||
# Set --gc-sections.
|
||||
glibcxx_have_gc_sections=no
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" ; then
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" || test "$glibcxx_ld_is_wild" = "yes" ; then
|
||||
if $LD --help 2>/dev/null | grep gc-sections >/dev/null 2>&1; then
|
||||
glibcxx_have_gc_sections=yes
|
||||
fi
|
||||
|
|
@ -39086,6 +39101,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
|
|||
# does some of this, but throws away the result.
|
||||
glibcxx_ld_is_gold=no
|
||||
glibcxx_ld_is_mold=no
|
||||
glibcxx_ld_is_wild=no
|
||||
if test x"$with_gnu_ld" = x"yes"; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld version" >&5
|
||||
$as_echo_n "checking for ld version... " >&6; }
|
||||
|
|
@ -39094,6 +39110,8 @@ $as_echo_n "checking for ld version... " >&6; }
|
|||
glibcxx_ld_is_gold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'mold' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_mold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'Wild' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_wild=yes
|
||||
fi
|
||||
ldver=`$LD --version 2>/dev/null |
|
||||
sed -e 's/[. ][0-9]\{8\}$//;s/.* \([^ ]\{1,\}\)$/\1/; q'`
|
||||
|
|
@ -39106,7 +39124,7 @@ $as_echo "$glibcxx_gnu_ld_version" >&6; }
|
|||
|
||||
# Set --gc-sections.
|
||||
glibcxx_have_gc_sections=no
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" ; then
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" || test "$glibcxx_ld_is_wild" = "yes" ; then
|
||||
if $LD --help 2>/dev/null | grep gc-sections >/dev/null 2>&1; then
|
||||
glibcxx_have_gc_sections=yes
|
||||
fi
|
||||
|
|
@ -42528,6 +42546,7 @@ done
|
|||
# does some of this, but throws away the result.
|
||||
glibcxx_ld_is_gold=no
|
||||
glibcxx_ld_is_mold=no
|
||||
glibcxx_ld_is_wild=no
|
||||
if test x"$with_gnu_ld" = x"yes"; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld version" >&5
|
||||
$as_echo_n "checking for ld version... " >&6; }
|
||||
|
|
@ -42536,6 +42555,8 @@ $as_echo_n "checking for ld version... " >&6; }
|
|||
glibcxx_ld_is_gold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'mold' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_mold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'Wild' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_wild=yes
|
||||
fi
|
||||
ldver=`$LD --version 2>/dev/null |
|
||||
sed -e 's/[. ][0-9]\{8\}$//;s/.* \([^ ]\{1,\}\)$/\1/; q'`
|
||||
|
|
@ -42548,7 +42569,7 @@ $as_echo "$glibcxx_gnu_ld_version" >&6; }
|
|||
|
||||
# Set --gc-sections.
|
||||
glibcxx_have_gc_sections=no
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" ; then
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" || test "$glibcxx_ld_is_wild" = "yes" ; then
|
||||
if $LD --help 2>/dev/null | grep gc-sections >/dev/null 2>&1; then
|
||||
glibcxx_have_gc_sections=yes
|
||||
fi
|
||||
|
|
@ -45923,6 +45944,7 @@ $as_echo "#define HAVE_TLS 1" >>confdefs.h
|
|||
# does some of this, but throws away the result.
|
||||
glibcxx_ld_is_gold=no
|
||||
glibcxx_ld_is_mold=no
|
||||
glibcxx_ld_is_wild=no
|
||||
if test x"$with_gnu_ld" = x"yes"; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld version" >&5
|
||||
$as_echo_n "checking for ld version... " >&6; }
|
||||
|
|
@ -45931,6 +45953,8 @@ $as_echo_n "checking for ld version... " >&6; }
|
|||
glibcxx_ld_is_gold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'mold' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_mold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'Wild' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_wild=yes
|
||||
fi
|
||||
ldver=`$LD --version 2>/dev/null |
|
||||
sed -e 's/[. ][0-9]\{8\}$//;s/.* \([^ ]\{1,\}\)$/\1/; q'`
|
||||
|
|
@ -45943,7 +45967,7 @@ $as_echo "$glibcxx_gnu_ld_version" >&6; }
|
|||
|
||||
# Set --gc-sections.
|
||||
glibcxx_have_gc_sections=no
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" ; then
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" || test "$glibcxx_ld_is_wild" = "yes" ; then
|
||||
if $LD --help 2>/dev/null | grep gc-sections >/dev/null 2>&1; then
|
||||
glibcxx_have_gc_sections=yes
|
||||
fi
|
||||
|
|
@ -46136,6 +46160,7 @@ done
|
|||
# does some of this, but throws away the result.
|
||||
glibcxx_ld_is_gold=no
|
||||
glibcxx_ld_is_mold=no
|
||||
glibcxx_ld_is_wild=no
|
||||
if test x"$with_gnu_ld" = x"yes"; then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld version" >&5
|
||||
$as_echo_n "checking for ld version... " >&6; }
|
||||
|
|
@ -46144,6 +46169,8 @@ $as_echo_n "checking for ld version... " >&6; }
|
|||
glibcxx_ld_is_gold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'mold' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_mold=yes
|
||||
elif $LD --version 2>/dev/null | grep 'Wild' >/dev/null 2>&1; then
|
||||
glibcxx_ld_is_wild=yes
|
||||
fi
|
||||
ldver=`$LD --version 2>/dev/null |
|
||||
sed -e 's/[. ][0-9]\{8\}$//;s/.* \([^ ]\{1,\}\)$/\1/; q'`
|
||||
|
|
@ -46156,7 +46183,7 @@ $as_echo "$glibcxx_gnu_ld_version" >&6; }
|
|||
|
||||
# Set --gc-sections.
|
||||
glibcxx_have_gc_sections=no
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" ; then
|
||||
if test "$glibcxx_ld_is_gold" = "yes" || test "$glibcxx_ld_is_mold" = "yes" || test "$glibcxx_ld_is_wild" = "yes" ; then
|
||||
if $LD --help 2>/dev/null | grep gc-sections >/dev/null 2>&1; then
|
||||
glibcxx_have_gc_sections=yes
|
||||
fi
|
||||
|
|
@ -51196,6 +51223,8 @@ $as_echo "$as_me: WARNING: === Symbol versioning will be disabled." >&2;}
|
|||
: All versions of gold support symbol versioning.
|
||||
elif test $glibcxx_ld_is_mold = yes ; then
|
||||
: All versions of mold support symbol versioning.
|
||||
elif test $glibcxx_ld_is_wild = yes ; then
|
||||
: All versions of Wild support symbol versioning.
|
||||
elif test $glibcxx_gnu_ld_version -lt $glibcxx_min_gnu_ld_version ; then
|
||||
# The right tools, the right setup, but too old. Fallbacks?
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === Linker version $glibcxx_gnu_ld_version is too old for" >&5
|
||||
|
|
|
|||
Loading…
Reference in New Issue