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