case "$enable_cet" in
auto)
# Check if target supports multi-byte NOPs
- # and if assembler supports CET insn.
+ # and if compiler and assembler support CET.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
;;
yes)
- # Check if assembler supports CET.
+ # Check if compiler and assembler support CET.
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"; then :
-
+ support_cet=yes
else
- as_fn_error $? "assembler with CET support is required for --enable-cet" "$LINENO" 5
+ support_cet=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ if test $support_cet = "no"; then
+ if test x$enable_bootstrap != xno \
+ && test -z "${with_build_subdir}" \
+ && (test ! -f ../stage_current \
+ || test `cat ../stage_current` != "stage1"); then
+ # Require CET support only for the final GCC build.
+ as_fn_error $? "compiler and assembler with CET support are required for --enable-cet" "$LINENO" 5
+ else
+ # Don't enable CET without CET support for non-bootstrap
+ # build, in stage1 nor for build support.
+ enable_cet=no
+ fi
+ fi
;;
esac
CFLAGS="$cet_save_CFLAGS"