Commit efc643e9 by Igor Tsimbalist Committed by Igor Tsimbalist

Enable building libatomic with Intel CET

libatomic/
	* configure.ac: Set CET_FLAGS, update XCFLAGS.
	* acinclude.m4: Add cet.m4 and enable.m4.
	* configure: Regenerate.
	* Makefile.in: Likewise.
	* testsuite/Makefile.in: Likewise.

From-SVN: r254893
parent 44685d37
2017-11-17 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
* configure.ac: Set CET_FLAGS, update XCFLAGS.
* acinclude.m4: Add cet.m4 and enable.m4.
* configure: Regenerate.
* Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
2017-10-20 Richard Earnshaw <rearnsha@arm.com> 2017-10-20 Richard Earnshaw <rearnsha@arm.com>
* Makefile.am: (IFUNC_OPTIONS): Set the architecture to * Makefile.am: (IFUNC_OPTIONS): Set the architecture to
......
...@@ -75,7 +75,8 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \ ...@@ -75,7 +75,8 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
$(top_srcdir)/../ltoptions.m4 $(top_srcdir)/../ltsugar.m4 \ $(top_srcdir)/../ltoptions.m4 $(top_srcdir)/../ltsugar.m4 \
$(top_srcdir)/../ltversion.m4 $(top_srcdir)/../lt~obsolete.m4 \ $(top_srcdir)/../ltversion.m4 $(top_srcdir)/../lt~obsolete.m4 \
$(top_srcdir)/acinclude.m4 $(top_srcdir)/../libtool.m4 \ $(top_srcdir)/acinclude.m4 $(top_srcdir)/../libtool.m4 \
$(top_srcdir)/configure.ac $(top_srcdir)/../config/enable.m4 \
$(top_srcdir)/../config/cet.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4) $(ACLOCAL_M4)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
......
...@@ -632,6 +632,8 @@ AC_MSG_NOTICE(versioning on shared library symbols is $enable_symvers) ...@@ -632,6 +632,8 @@ AC_MSG_NOTICE(versioning on shared library symbols is $enable_symvers)
dnl ---------------------------------------------------------------------- dnl ----------------------------------------------------------------------
sinclude(../libtool.m4) sinclude(../libtool.m4)
sinclude(../config/enable.m4)
sinclude(../config/cet.m4)
dnl The lines below arrange for aclocal not to bring an installed dnl The lines below arrange for aclocal not to bring an installed
dnl libtool.m4 into aclocal.m4, while still arranging for automake to dnl libtool.m4 into aclocal.m4, while still arranging for automake to
dnl add a definition of LIBTOOL to Makefile.in. dnl add a definition of LIBTOOL to Makefile.in.
......
...@@ -764,6 +764,7 @@ with_gnu_ld ...@@ -764,6 +764,7 @@ with_gnu_ld
enable_libtool_lock enable_libtool_lock
enable_maintainer_mode enable_maintainer_mode
enable_symvers enable_symvers
enable_cet
with_gcc_major_version_only with_gcc_major_version_only
' '
ac_precious_vars='build_alias ac_precious_vars='build_alias
...@@ -1410,6 +1411,8 @@ Optional Features: ...@@ -1410,6 +1411,8 @@ Optional Features:
(and sometimes confusing) to the casual installer (and sometimes confusing) to the casual installer
--enable-symvers=STYLE enables symbol versioning of the shared library --enable-symvers=STYLE enables symbol versioning of the shared library
[default=yes] [default=yes]
--enable-cet enable Intel CET in target libraries
[default=default]
Optional Packages: Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
...@@ -11115,7 +11118,7 @@ else ...@@ -11115,7 +11118,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF cat > conftest.$ac_ext <<_LT_EOF
#line 11118 "configure" #line 11121 "configure"
#include "confdefs.h" #include "confdefs.h"
#if HAVE_DLFCN_H #if HAVE_DLFCN_H
...@@ -11221,7 +11224,7 @@ else ...@@ -11221,7 +11224,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF cat > conftest.$ac_ext <<_LT_EOF
#line 11224 "configure" #line 11227 "configure"
#include "confdefs.h" #include "confdefs.h"
#if HAVE_DLFCN_H #if HAVE_DLFCN_H
...@@ -15225,6 +15228,75 @@ if test "x$GCC" = "xyes"; then ...@@ -15225,6 +15228,75 @@ if test "x$GCC" = "xyes"; then
XCFLAGS="$XCFLAGS -Wall -Werror" XCFLAGS="$XCFLAGS -Wall -Werror"
fi 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|default) ;;
*) as_fn_error "Unknown argument to enable/disable cet" "$LINENO" 5 ;;
esac
else
enable_cet=default
fi
case "$host" in
i[34567]86-*-linux* | x86_64-*-linux*)
case "$enable_cet" in
default)
# 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 :
enable_cet=yes
else
enable_cet=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
;;
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 -mcet"
fi
XCFLAGS="$XCFLAGS $CET_FLAGS"
XCFLAGS="$XCFLAGS $XPCFLAGS" XCFLAGS="$XCFLAGS $XPCFLAGS"
......
...@@ -238,6 +238,10 @@ if test "x$GCC" = "xyes"; then ...@@ -238,6 +238,10 @@ if test "x$GCC" = "xyes"; then
XCFLAGS="$XCFLAGS -Wall -Werror" XCFLAGS="$XCFLAGS -Wall -Werror"
fi fi
# Add CET specific flags if CET is enabled
GCC_CET_FLAGS(CET_FLAGS)
XCFLAGS="$XCFLAGS $CET_FLAGS"
XCFLAGS="$XCFLAGS $XPCFLAGS" XCFLAGS="$XCFLAGS $XPCFLAGS"
AC_SUBST(config_path) AC_SUBST(config_path)
......
...@@ -64,7 +64,8 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \ ...@@ -64,7 +64,8 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
$(top_srcdir)/../ltoptions.m4 $(top_srcdir)/../ltsugar.m4 \ $(top_srcdir)/../ltoptions.m4 $(top_srcdir)/../ltsugar.m4 \
$(top_srcdir)/../ltversion.m4 $(top_srcdir)/../lt~obsolete.m4 \ $(top_srcdir)/../ltversion.m4 $(top_srcdir)/../lt~obsolete.m4 \
$(top_srcdir)/acinclude.m4 $(top_srcdir)/../libtool.m4 \ $(top_srcdir)/acinclude.m4 $(top_srcdir)/../libtool.m4 \
$(top_srcdir)/configure.ac $(top_srcdir)/../config/enable.m4 \
$(top_srcdir)/../config/cet.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4) $(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment