aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Schwinge <tschwinge@baylibre.com>2024-03-22 01:04:40 +0100
committerThomas Schwinge <tschwinge@baylibre.com>2024-03-22 01:04:40 +0100
commitf96582527ef42d0a02b68aa956d51c2ed40fb8b6 (patch)
tree0a7cc14e58269974138e966b841271cc2aba7fe0
parentaf14cc24cb5f1a3b1a3abd6c289cb33ee8768bb8 (diff)
parentf37c55c14bc1176ef9a15fe584fb6d1bf2e6162f (diff)
downloadgcc-f96582527ef42d0a02b68aa956d51c2ed40fb8b6.zip
gcc-f96582527ef42d0a02b68aa956d51c2ed40fb8b6.tar.gz
gcc-f96582527ef42d0a02b68aa956d51c2ed40fb8b6.tar.bz2
Merge commit 'f37c55c14bc1176ef9a15fe584fb6d1bf2e6162f' into HEAD [#1913]
-rwxr-xr-xcontrib/gcc_update4
-rw-r--r--libgrust/Makefile.in5
-rw-r--r--libgrust/aclocal.m43
-rwxr-xr-xlibgrust/configure193
-rw-r--r--libgrust/configure.ac14
-rw-r--r--libgrust/libproc_macro_internal/Makefile.in5
6 files changed, 213 insertions, 11 deletions
diff --git a/contrib/gcc_update b/contrib/gcc_update
index cda2bdb..774c926 100755
--- a/contrib/gcc_update
+++ b/contrib/gcc_update
@@ -153,6 +153,10 @@ libgomp/testsuite/Makefile.in: libgomp/testsuite/Makefile.am libgomp/aclocal.m4
libgomp/configure.ac: libgomp/plugin/configfrag.ac
libgomp/configure: libgomp/configure.ac libgomp/aclocal.m4
libgomp/config.h.in: libgomp/configure.ac libgomp/aclocal.m4
+libgrust/Makefile.in: libgrust/Makefile.am libgrust/aclocal.m4
+libgrust/aclocal.m4: libgrust/configure.ac
+libgrust/configure: libgrust/configure.ac libgrust/aclocal.m4
+libgrust/libproc_macro_internal/Makefile.in: libgrust/libproc_macro_internal/Makefile.am libgrust/aclocal.m4
libitm/aclocal.m4: libitm/configure.ac libitm/acinclude.m4
libitm/Makefile.in: libitm/Makefile.am libitm/aclocal.m4
libitm/testsuite/Makefile.in: libitm/testsuite/Makefile.am libitm/aclocal.m4
diff --git a/libgrust/Makefile.in b/libgrust/Makefile.in
index ae9ba91..d065584 100644
--- a/libgrust/Makefile.in
+++ b/libgrust/Makefile.in
@@ -91,8 +91,11 @@ target_triplet = @target@
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
+ $(top_srcdir)/../config/cet.m4 \
$(top_srcdir)/../config/depstand.m4 \
+ $(top_srcdir)/../config/enable.m4 \
$(top_srcdir)/../config/lead-dot.m4 \
+ $(top_srcdir)/../config/multi.m4 \
$(top_srcdir)/../config/no-executables.m4 \
$(top_srcdir)/../config/override.m4 \
$(top_srcdir)/../config/toolexeclibdir.m4 \
@@ -258,6 +261,7 @@ datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
+get_gcc_base_ver = @get_gcc_base_ver@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
@@ -275,6 +279,7 @@ localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+multi_basedir = @multi_basedir@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
diff --git a/libgrust/aclocal.m4 b/libgrust/aclocal.m4
index 1bd42c3..e663092 100644
--- a/libgrust/aclocal.m4
+++ b/libgrust/aclocal.m4
@@ -1248,8 +1248,11 @@ AC_SUBST([am__untar])
]) # _AM_PROG_TAR
m4_include([../config/acx.m4])
+m4_include([../config/cet.m4])
m4_include([../config/depstand.m4])
+m4_include([../config/enable.m4])
m4_include([../config/lead-dot.m4])
+m4_include([../config/multi.m4])
m4_include([../config/no-executables.m4])
m4_include([../config/override.m4])
m4_include([../config/toolexeclibdir.m4])
diff --git a/libgrust/configure b/libgrust/configure
index 54adb82..b1d4c8f 100755
--- a/libgrust/configure
+++ b/libgrust/configure
@@ -586,7 +586,7 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='libgrust'
-PACKAGE_TARNAME='librust'
+PACKAGE_TARNAME='libgrust'
PACKAGE_VERSION='version-unused'
PACKAGE_STRING='libgrust version-unused'
PACKAGE_BUGREPORT=''
@@ -633,6 +633,7 @@ ac_subst_vars='am__EXEEXT_FALSE
am__EXEEXT_TRUE
LTLIBOBJS
LIBOBJS
+get_gcc_base_ver
toolexeclibdir
toolexecdir
target_subdir
@@ -732,6 +733,7 @@ build_os
build_vendor
build_cpu
build
+multi_basedir
target_alias
host_alias
build_alias
@@ -773,10 +775,13 @@ SHELL'
ac_subst_files=''
ac_user_opts='
enable_option_checking
+enable_multilib
enable_maintainer_mode
enable_silent_rules
with_toolexeclibdir
enable_dependency_tracking
+enable_werror
+enable_cet
enable_shared
enable_static
with_pic
@@ -786,6 +791,7 @@ enable_libtool_lock
enable_darwin_at_rpath
with_build_libsubdir
enable_version_specific_runtime_libs
+with_gcc_major_version_only
'
ac_precious_vars='build_alias
host_alias
@@ -1390,7 +1396,7 @@ Fine tuning of the installation directories:
--infodir=DIR info documentation [DATAROOTDIR/info]
--localedir=DIR locale-dependent data [DATAROOTDIR/locale]
--mandir=DIR man documentation [DATAROOTDIR/man]
- --docdir=DIR documentation root [DATAROOTDIR/doc/librust]
+ --docdir=DIR documentation root [DATAROOTDIR/doc/libgrust]
--htmldir=DIR html documentation [DOCDIR]
--dvidir=DIR dvi documentation [DOCDIR]
--pdfdir=DIR pdf documentation [DOCDIR]
@@ -1421,6 +1427,7 @@ Optional Features:
--disable-option-checking ignore unrecognized --enable/--with options
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
+ --enable-multilib build many library versions (default)
--enable-maintainer-mode
enable make rules and dependencies not useful (and
sometimes confusing) to the casual installer
@@ -1430,6 +1437,8 @@ Optional Features:
do not reject slow dependency extractors
--disable-dependency-tracking
speeds up one-time build
+ --disable-werror disable building with -Werror
+ --enable-cet enable Intel CET in target libraries [default=auto]
--enable-shared[=PKGS] build shared libraries [default=yes]
--enable-static[=PKGS] build static libraries [default=yes]
--enable-fast-install[=PKGS]
@@ -1450,6 +1459,8 @@ Optional Packages:
both]
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
--with-build-libsubdir=DIR Directory where to find libraries for build system
+ --with-gcc-major-version-only
+ use only GCC major number in filesystem paths
Some influential environment variables:
CC C compiler command
@@ -2376,7 +2387,43 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
ac_config_files="$ac_config_files Makefile"
-# AM_ENABLE_MULTILIB(, ..)
+# Default to --enable-multilib
+# Check whether --enable-multilib was given.
+if test "${enable_multilib+set}" = set; then :
+ enableval=$enable_multilib; case "$enableval" in
+ yes) multilib=yes ;;
+ no) multilib=no ;;
+ *) as_fn_error $? "bad value $enableval for multilib option" "$LINENO" 5 ;;
+ esac
+else
+ multilib=yes
+fi
+
+
+# We may get other options which we leave undocumented:
+# --with-target-subdir, --with-multisrctop, --with-multisubdir
+# See config-ml.in if you want the gory details.
+
+if test "$srcdir" = "."; then
+ if test "$with_target_subdir" != "."; then
+ multi_basedir="$srcdir/$with_multisrctop../.."
+ else
+ multi_basedir="$srcdir/$with_multisrctop.."
+ fi
+else
+ multi_basedir="$srcdir/.."
+fi
+
+
+# Even if the default multilib is not a cross compilation,
+# it may be that some of the other multilibs are.
+if test $cross_compiling = no && test $multilib = yes \
+ && test "x${with_multisubdir}" != x ; then
+ cross_compiling=maybe
+fi
+
+ac_config_commands="$ac_config_commands default-1"
+
# Do not delete or change the following two lines. For why, see
# http://gcc.gnu.org/ml/libstdc++/2003-07/msg00451.html
@@ -3033,7 +3080,7 @@ fi
# Define the identity of the package.
- PACKAGE='librust'
+ PACKAGE='libgrust'
VERSION='version-unused'
@@ -4848,6 +4895,100 @@ fi
done
+# Check whether --enable-werror was given.
+if test "${enable_werror+set}" = set; then :
+ enableval=$enable_werror;
+fi
+
+
+# Add CET specific flags if CET is enabled
+ # Check whether --enable-cet was given.
+if test "${enable_cet+set}" = set; then :
+ enableval=$enable_cet;
+ case "$enableval" in
+ yes|no|auto) ;;
+ *) as_fn_error $? "Unknown argument to enable/disable cet" "$LINENO" 5 ;;
+ esac
+
+else
+ enable_cet=auto
+fi
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CET support" >&5
+$as_echo_n "checking for CET support... " >&6; }
+
+# NB: Avoid nested save_CFLAGS and save_LDFLAGS.
+case "$host" in
+ i[34567]86-*-linux* | x86_64-*-linux*)
+ case "$enable_cet" in
+ auto)
+ # Check if target supports multi-byte NOPs
+ # and if compiler and assembler support CET insn.
+ cet_save_CFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -fcf-protection"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+#if !defined(__SSE2__)
+#error target does not support multi-byte NOPs
+#else
+asm ("setssbsy");
+#endif
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+ enable_cet=yes
+else
+ enable_cet=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ CFLAGS="$cet_save_CFLAGS"
+ ;;
+ yes)
+ # Check if assembler supports CET.
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+asm ("setssbsy");
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+
+else
+ as_fn_error $? "assembler with CET support is required for --enable-cet" "$LINENO" 5
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ ;;
+ esac
+ ;;
+ *)
+ enable_cet=no
+ ;;
+esac
+if test x$enable_cet = xyes; then
+ CET_FLAGS="-fcf-protection -mshstk"
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+else
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+XCFLAGS="$XCFLAGS $CET_FLAGS"
+
# Check for tools
if test -n "$ac_tool_prefix"; then
for ac_prog in ar lib "link -lib"
@@ -12512,7 +12653,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 12515 "configure"
+#line 12656 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -12618,7 +12759,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 12621 "configure"
+#line 12762 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -16054,8 +16195,21 @@ ac_config_files="$ac_config_files libproc_macro_internal/Makefile"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: librust has been configured." >&5
-$as_echo "$as_me: librust has been configured." >&6;}
+ get_gcc_base_ver="cat"
+
+# Check whether --with-gcc-major-version-only was given.
+if test "${with_gcc_major_version_only+set}" = set; then :
+ withval=$with_gcc_major_version_only; if test x$with_gcc_major_version_only = xyes ; then
+ get_gcc_base_ver="sed -e 's/^\([0-9]*\).*/\1/'"
+ fi
+
+fi
+
+
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: libgrust has been configured." >&5
+$as_echo "$as_me: libgrust has been configured." >&6;}
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
@@ -16804,6 +16958,20 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
#
# INIT-COMMANDS
#
+
+srcdir="$srcdir"
+host="$host"
+target="$target"
+with_multisubdir="$with_multisubdir"
+with_multisrctop="$with_multisrctop"
+with_target_subdir="$with_target_subdir"
+ac_configure_args="${multilib_arg} ${ac_configure_args}"
+multi_basedir="$multi_basedir"
+CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
+CC="$CC"
+CXX="$CXX"
+GFORTRAN="$GFORTRAN"
+GDC="$GDC"
AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
@@ -17175,6 +17343,7 @@ for ac_config_target in $ac_config_targets
do
case $ac_config_target in
"Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
+ "default-1") CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;;
"depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
"libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;
"libproc_macro_internal/Makefile") CONFIG_FILES="$CONFIG_FILES libproc_macro_internal/Makefile" ;;
@@ -17607,6 +17776,14 @@ $as_echo "$as_me: executing $ac_file commands" >&6;}
case $ac_file$ac_mode in
+ "default-1":C)
+# Only add multilib support code if we just rebuilt the top-level
+# Makefile.
+case " $CONFIG_FILES " in
+ *" Makefile "*)
+ ac_file=Makefile . ${multi_basedir}/config-ml.in
+ ;;
+esac ;;
"depfiles":C) test x"$AMDEP_TRUE" != x"" || {
# Older Autoconf quotes --file arguments for eval, but not when files
# are listed without --file. Let's play safe and only enable the eval
diff --git a/libgrust/configure.ac b/libgrust/configure.ac
index 242ad7f..1c706f3 100644
--- a/libgrust/configure.ac
+++ b/libgrust/configure.ac
@@ -1,8 +1,8 @@
-AC_INIT([libgrust], version-unused,,librust)
+AC_INIT([libgrust], version-unused,,libgrust)
AC_CONFIG_SRCDIR(Makefile.am)
AC_CONFIG_FILES([Makefile])
-# AM_ENABLE_MULTILIB(, ..)
+AM_ENABLE_MULTILIB(, ..)
# Do not delete or change the following two lines. For why, see
# http://gcc.gnu.org/ml/libstdc++/2003-07/msg00451.html
@@ -32,6 +32,13 @@ AC_HEADER_SYS_WAIT
AC_CHECK_HEADERS(limits.h stddef.h string.h strings.h stdlib.h \
time.h sys/stat.h wchar.h)
+AC_ARG_ENABLE([werror],
+ [AS_HELP_STRING([--disable-werror], [disable building with -Werror])])
+
+# Add CET specific flags if CET is enabled
+GCC_CET_FLAGS(CET_FLAGS)
+XCFLAGS="$XCFLAGS $CET_FLAGS"
+
# Check for tools
AM_PROG_AR
AC_PROG_CC
@@ -107,7 +114,8 @@ _EOF
AS_UNSET([ml_norecursion])
])
+GCC_BASE_VER
-AC_MSG_NOTICE([librust has been configured.])
+AC_MSG_NOTICE([libgrust has been configured.])
AC_OUTPUT
diff --git a/libgrust/libproc_macro_internal/Makefile.in b/libgrust/libproc_macro_internal/Makefile.in
index 0eccade..68aa461 100644
--- a/libgrust/libproc_macro_internal/Makefile.in
+++ b/libgrust/libproc_macro_internal/Makefile.in
@@ -91,8 +91,11 @@ target_triplet = @target@
subdir = libproc_macro_internal
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
+ $(top_srcdir)/../config/cet.m4 \
$(top_srcdir)/../config/depstand.m4 \
+ $(top_srcdir)/../config/enable.m4 \
$(top_srcdir)/../config/lead-dot.m4 \
+ $(top_srcdir)/../config/multi.m4 \
$(top_srcdir)/../config/no-executables.m4 \
$(top_srcdir)/../config/override.m4 \
$(top_srcdir)/../config/toolexeclibdir.m4 \
@@ -219,6 +222,7 @@ datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
+get_gcc_base_ver = @get_gcc_base_ver@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
@@ -236,6 +240,7 @@ localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
+multi_basedir = @multi_basedir@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@