1From 4ba40ee527f844a804be571e52d9dc5447ae4cdd Mon Sep 17 00:00:00 2001 2From: Changqing Li <changqing.li@windriver.com> 3Date: Mon, 22 Oct 2018 15:19:51 +0800 4Subject: [PATCH] python3: use cc_basename to replace CC for checking compiler 5 6When working path contains "clang"/"gcc"/"icc", it might be part of $CC 7because of the "--sysroot" parameter. That could cause judgement error 8about clang/gcc/icc compilers. e.g. 9When "icc" is containded in working path, below errors are reported when 10compiling python3: 11x86_64-wrs-linux-gcc: error: strict: No such file or directory 12x86_64-wrs-linux-gcc: error: unrecognized command line option '-fp-model' 13 14Here use cc_basename to replace CC for checking compiler to avoid such 15kind of issue. 16 17Upstream-Status: Submitted [https://github.com/python/cpython/pull/96399] 18 19Signed-off-by: Li Zhou <li.zhou@windriver.com> 20 21patch originally from Li Zhou, I just rework it to new version 22 23Signed-off-by: Changqing Li <changqing.li@windriver.com> 24 25--- 26 configure.ac | 19 ++++++++++--------- 27 1 file changed, 10 insertions(+), 9 deletions(-) 28 29diff --git a/configure.ac b/configure.ac 30index 90008bc..bf56195 100644 31--- a/configure.ac 32+++ b/configure.ac 33@@ -134,6 +134,7 @@ AC_CONFIG_HEADERS([pyconfig.h]) 34 AC_CANONICAL_HOST 35 AC_SUBST(build) 36 AC_SUBST(host) 37+LT_INIT 38 39 AS_VAR_IF([cross_compiling], [maybe], 40 [AC_MSG_ERROR([Cross compiling required --host=HOST-TUPLE and --build=ARCH])] 41@@ -887,7 +888,7 @@ AC_MSG_RESULT($with_cxx_main) 42 preset_cxx="$CXX" 43 if test -z "$CXX" 44 then 45- case "$CC" in 46+ case "$cc_basename" in 47 gcc) AC_PATH_TOOL(CXX, [g++], [g++], [notfound]) ;; 48 cc) AC_PATH_TOOL(CXX, [c++], [c++], [notfound]) ;; 49 clang|*/clang) AC_PATH_TOOL(CXX, [clang++], [clang++], [notfound]) ;; 50@@ -1300,7 +1301,7 @@ rmdir CaseSensitiveTestDir 51 52 case $ac_sys_system in 53 hp*|HP*) 54- case $CC in 55+ case $cc_basename in 56 cc|*/cc) CC="$CC -Ae";; 57 esac;; 58 esac 59@@ -1834,7 +1835,7 @@ esac 60 ], 61 [AC_MSG_RESULT(no)]) 62 if test "$Py_LTO" = 'true' ; then 63- case $CC in 64+ case $cc_basename in 65 *clang*) 66 LDFLAGS_NOLTO="-fno-lto" 67 dnl Clang linker requires -flto in order to link objects with LTO information. 68@@ -1955,7 +1956,7 @@ then 69 fi 70 fi 71 LLVM_PROF_ERR=no 72-case $CC in 73+case $cc_basename in 74 *clang*) 75 # Any changes made here should be reflected in the GCC+Darwin case below 76 PGO_PROF_GEN_FLAG="-fprofile-instr-generate" 77@@ -2016,7 +2017,7 @@ esac 78 # compiler and platform. BASECFLAGS tweaks need to be made even if the 79 # user set OPT. 80 81-case $CC in 82+case $cc_basename in 83 *clang*) 84 cc_is_clang=1 85 ;; 86@@ -2235,7 +2236,7 @@ yes) 87 88 # ICC doesn't recognize the option, but only emits a warning 89 ## XXX does it emit an unused result warning and can it be disabled? 90- AS_CASE([$CC], 91+ AS_CASE([$cc_basename], 92 [*icc*], [ac_cv_disable_unused_result_warning=no] 93 [PY_CHECK_CC_WARNING([disable], [unused-result])]) 94 AS_VAR_IF([ac_cv_disable_unused_result_warning], [yes], 95@@ -2477,7 +2478,7 @@ yes) 96 ;; 97 esac 98 99-case "$CC" in 100+case "$cc_basename" in 101 *icc*) 102 # ICC needs -fp-model strict or floats behave badly 103 CFLAGS_NODIST="$CFLAGS_NODIST -fp-model strict" 104@@ -3319,7 +3320,7 @@ then 105 then 106 LINKFORSHARED="-Wl,--export-dynamic" 107 fi;; 108- SunOS/5*) case $CC in 109+ SunOS/5*) case $cc_basename in 110 *gcc*) 111 if $CC -Xlinker --help 2>&1 | grep export-dynamic >/dev/null 112 then 113@@ -6410,7 +6411,7 @@ if test "$ac_cv_gcc_asm_for_x87" = yes; then 114 # Some versions of gcc miscompile inline asm: 115 # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46491 116 # http://gcc.gnu.org/ml/gcc/2010-11/msg00366.html 117- case $CC in 118+ case $cc_basename in 119 *gcc*) 120 AC_MSG_CHECKING(for gcc ipa-pure-const bug) 121 saved_cflags="$CFLAGS" 122