Author: pierre
Date: Fri May  8 22:18:12 2020
New Revision: 4106

Log:
GCC-10.1 patch for cross-chap5 branch

Added:
   trunk/gcc/gcc-10.1.0-cet_fix-1.patch

Added: trunk/gcc/gcc-10.1.0-cet_fix-1.patch
==============================================================================
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ trunk/gcc/gcc-10.1.0-cet_fix-1.patch        Fri May  8 22:18:12 2020        
(r4106)
@@ -0,0 +1,130 @@
+Submitted By:    Pierre Labastie <pierre dot labastie at neuf dot fr>
+Date:            2020-05-09
+Package Version: 10.1.0
+Upstream Status: Submitted (PR bootstrap/94998)
+Origin:          https://gcc.gnu.org/pipermail/gcc-patches/2020-May/545392.html
+Description:     Fix build when build!=host (used only in cross-chap5)
+
+Don't perform CET run-time check for host when cross compiling.  Instead,
+enable CET in cross compiler if possible so that it will run on both CET
+and non-CET hosts.
+
+diff --git a/config/cet.m4 b/config/cet.m4
+index ea616b728a9..d9608699cd5 100644
+--- a/config/cet.m4
++++ b/config/cet.m4
+@@ -111,7 +111,8 @@ if test x$may_have_cet = xyes; then
+ fi
+ 
+ if test x$may_have_cet = xyes; then
+-  AC_TRY_RUN([
++  if test x$cross_compiling = xno; then
++    AC_TRY_RUN([
+ static void
+ foo (void)
+ {
+@@ -137,12 +138,17 @@ main ()
+   bar ();
+   return 0;
+ }
+-  ],
+-  [have_cet=no],
+-  [have_cet=yes])
+-  if test x$enable_cet = xno -a x$have_cet = xyes; then
+-    AC_MSG_ERROR([Intel CET must be enabled on Intel CET enabled host])
++    ],
++    [have_cet=no],
++    [have_cet=yes])
++    if test x$enable_cet = xno -a x$have_cet = xyes; then
++      AC_MSG_ERROR([Intel CET must be enabled on Intel CET enabled host])
++    fi
+   fi
++else
++  # Enable CET in cross compiler if possible so that it will run on both
++  # CET and non-CET hosts.
++  have_cet=yes
+ fi
+ if test x$enable_cet = xyes; then
+   $1="-fcf-protection"
+diff --git a/libiberty/configure b/libiberty/configure
+index bb76cf1b823..3f82c5bb865 100755
+--- a/libiberty/configure
++++ b/libiberty/configure
+@@ -5375,7 +5375,8 @@ rm -f core conftest.err conftest.$ac_objext \
+ fi
+ 
+ if test x$may_have_cet = xyes; then
+-  if test "$cross_compiling" = yes; then :
++  if test x$cross_compiling = xno; then
++    if test "$cross_compiling" = yes; then :
+   { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+ $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+ as_fn_error $? "cannot run test program while cross compiling
+@@ -5420,9 +5421,14 @@ rm -f core *.core core.conftest.* gmon.out bb.out 
conftest$ac_exeext \
+   conftest.$ac_objext conftest.beam conftest.$ac_ext
+ fi
+ 
+-  if test x$enable_cet = xno -a x$have_cet = xyes; then
+-    as_fn_error $? "Intel CET must be enabled on Intel CET enabled host" 
"$LINENO" 5
++    if test x$enable_cet = xno -a x$have_cet = xyes; then
++      as_fn_error $? "Intel CET must be enabled on Intel CET enabled host" 
"$LINENO" 5
++    fi
+   fi
++else
++  # Enable CET in cross compiler if possible so that it will run on both
++  # CET and non-CET hosts.
++  have_cet=yes
+ fi
+ if test x$enable_cet = xyes; then
+   CET_HOST_FLAGS="-fcf-protection"
+diff --git a/lto-plugin/configure b/lto-plugin/configure
+index 1baf6cc70b8..36c6ecc5875 100755
+--- a/lto-plugin/configure
++++ b/lto-plugin/configure
+@@ -5768,7 +5768,8 @@ rm -f core conftest.err conftest.$ac_objext \
+ fi
+ 
+ if test x$may_have_cet = xyes; then
+-  if test "$cross_compiling" = yes; then :
++  if test x$cross_compiling = xno; then
++    if test "$cross_compiling" = yes; then :
+   { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+ $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+ as_fn_error $? "cannot run test program while cross compiling
+@@ -5813,9 +5814,14 @@ rm -f core *.core core.conftest.* gmon.out bb.out 
conftest$ac_exeext \
+   conftest.$ac_objext conftest.beam conftest.$ac_ext
+ fi
+ 
+-  if test x$enable_cet = xno -a x$have_cet = xyes; then
+-    as_fn_error $? "Intel CET must be enabled on Intel CET enabled host" 
"$LINENO" 5
++    if test x$enable_cet = xno -a x$have_cet = xyes; then
++      as_fn_error $? "Intel CET must be enabled on Intel CET enabled host" 
"$LINENO" 5
++    fi
+   fi
++else
++  # Enable CET in cross compiler if possible so that it will run on both
++  # CET and non-CET hosts.
++  have_cet=yes
+ fi
+ if test x$enable_cet = xyes; then
+   CET_HOST_FLAGS="-fcf-protection"
+@@ -11941,7 +11947,7 @@ else
+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+   lt_status=$lt_dlunknown
+   cat > conftest.$ac_ext <<_LT_EOF
+-#line 11944 "configure"
++#line 11950 "configure"
+ #include "confdefs.h"
+ 
+ #if HAVE_DLFCN_H
+@@ -12047,7 +12053,7 @@ else
+   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+   lt_status=$lt_dlunknown
+   cat > conftest.$ac_ext <<_LT_EOF
+-#line 12050 "configure"
++#line 12056 "configure"
+ #include "confdefs.h"
+ 
+ #if HAVE_DLFCN_H
+-- 
+2.26.2
-- 
http://lists.linuxfromscratch.org/listinfo/patches
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to