[gcc/devel/ranger] Harden and adjust 'gcc/configure' parsing of '--enable-offload-targets'

Aldy Hernandez aldyh@gcc.gnu.org
Wed Jun 17 20:52:10 GMT 2020


https://gcc.gnu.org/g:d20219b5ab26cd003ae78ac9f82be337fe4df261

commit d20219b5ab26cd003ae78ac9f82be337fe4df261
Author: Thomas Schwinge <thomas@codesourcery.com>
Date:   Thu Apr 23 21:59:07 2020 +0200

    Harden and adjust 'gcc/configure' parsing of '--enable-offload-targets'
    
    Fix-up for commit d228ee80f8578be474595a517a228111fac26c5e "re PR
    bootstrap/92314 (missing omp-device-properties', needed by
    's-omp-device-properties-h')".
    
            gcc/
            * configure.ac <$enable_offload_targets>: Do parsing as done
            elsewhere.
            * configure: Regenerate.

Diff:
---
 gcc/ChangeLog    |  4 ++++
 gcc/configure    | 13 ++++++++-----
 gcc/configure.ac |  9 ++++++---
 3 files changed, 18 insertions(+), 8 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 85d1c2b6f75..3df46e498f5 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,9 @@
 2020-04-29  Thomas Schwinge  <thomas@codesourcery.com>
 
+	* configure.ac <$enable_offload_targets>: Do parsing as done
+	elsewhere.
+	* configure: Regenerate.
+
 	* configure.ac <$enable_offload_targets>: 'amdgcn' is 'gcn'.
 	* configure: Regenerate.
 
diff --git a/gcc/configure b/gcc/configure
index 83101072aea..c7bf5d1fdc6 100755
--- a/gcc/configure
+++ b/gcc/configure
@@ -7920,18 +7920,21 @@ for tgt in `echo $enable_offload_targets | sed 's/,/ /g'`; do
   else
     enable_offloading=1
     case "$tgt" in
-      *-intelmicemul-*)
+      *-intelmic-* | *-intelmicemul-*)
 	omp_device_property=omp-device-properties-i386
 	omp_device_property_tmake_file="${omp_device_property_tmake_file} \$(srcdir)/config/i386/t-omp-device"
 	;;
-      amdgcn*-*)
+      amdgcn*)
 	omp_device_property=omp-device-properties-gcn
 	omp_device_property_tmake_file="${omp_device_property_tmake_file} \$(srcdir)/config/gcn/t-omp-device"
 	;;
-      nvptx*-*)
+      nvptx*)
 	omp_device_property=omp-device-properties-nvptx
 	omp_device_property_tmake_file="${omp_device_property_tmake_file} \$(srcdir)/config/nvptx/t-omp-device"
 	;;
+      *)
+	as_fn_error $? "unknown offload target specified" "$LINENO" 5
+	;;
     esac
     omp_device_properties="${omp_device_properties} ${tgt}=${omp_device_property}"
     omp_device_property_deps="${omp_device_property_deps} ${omp_device_property}"
@@ -18985,7 +18988,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 18988 "configure"
+#line 18991 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -19091,7 +19094,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 19094 "configure"
+#line 19097 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
diff --git a/gcc/configure.ac b/gcc/configure.ac
index b604047ae45..72f79f7ed32 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
@@ -1045,18 +1045,21 @@ for tgt in `echo $enable_offload_targets | sed 's/,/ /g'`; do
   else
     enable_offloading=1
     case "$tgt" in
-      *-intelmicemul-*)
+      *-intelmic-* | *-intelmicemul-*)
 	omp_device_property=omp-device-properties-i386
 	omp_device_property_tmake_file="${omp_device_property_tmake_file} \$(srcdir)/config/i386/t-omp-device"
 	;;
-      amdgcn*-*)
+      amdgcn*)
 	omp_device_property=omp-device-properties-gcn
 	omp_device_property_tmake_file="${omp_device_property_tmake_file} \$(srcdir)/config/gcn/t-omp-device"
 	;;
-      nvptx*-*)
+      nvptx*)
 	omp_device_property=omp-device-properties-nvptx
 	omp_device_property_tmake_file="${omp_device_property_tmake_file} \$(srcdir)/config/nvptx/t-omp-device"
 	;;
+      *)
+	AC_MSG_ERROR([unknown offload target specified])
+	;;
     esac
     omp_device_properties="${omp_device_properties} ${tgt}=${omp_device_property}"
     omp_device_property_deps="${omp_device_property_deps} ${omp_device_property}"


More information about the Gcc-cvs mailing list