| From 175ed10e0a59a5395546ef88702f23d100b909f9 Mon Sep 17 00:00:00 2001 |
| From: Changqing Li <changqing.li@windriver.com> |
| Date: Mon, 22 Oct 2018 15:19:51 +0800 |
| Subject: [PATCH] python3: use cc_basename to replace CC for checking compiler |
| |
| When working path contains "clang"/"gcc"/"icc", it might be part of $CC |
| because of the "--sysroot" parameter. That could cause judgement error |
| about clang/gcc/icc compilers. e.g. |
| When "icc" is containded in working path, below errors are reported when |
| compiling python3: |
| x86_64-wrs-linux-gcc: error: strict: No such file or directory |
| x86_64-wrs-linux-gcc: error: unrecognized command line option '-fp-model' |
| |
| Here use cc_basename to replace CC for checking compiler to avoid such |
| kind of issue. |
| |
| Upstream-Status: Submitted [https://github.com/python/cpython/pull/96399] |
| |
| Signed-off-by: Li Zhou <li.zhou@windriver.com> |
| |
| patch originally from Li Zhou, I just rework it to new version |
| |
| Signed-off-by: Changqing Li <changqing.li@windriver.com> |
| |
| --- |
| configure.ac | 19 ++++++++++--------- |
| 1 file changed, 10 insertions(+), 9 deletions(-) |
| |
| diff --git a/configure.ac b/configure.ac |
| index 77fb609..358b6ea 100644 |
| --- a/configure.ac |
| +++ b/configure.ac |
| @@ -134,6 +134,7 @@ AC_CONFIG_HEADERS([pyconfig.h]) |
| AC_CANONICAL_HOST |
| AC_SUBST(build) |
| AC_SUBST(host) |
| +LT_INIT |
| |
| AS_VAR_IF([cross_compiling], [maybe], |
| [AC_MSG_ERROR([Cross compiling required --host=HOST-TUPLE and --build=ARCH])] |
| @@ -877,7 +878,7 @@ AC_MSG_RESULT($with_cxx_main) |
| preset_cxx="$CXX" |
| if test -z "$CXX" |
| then |
| - case "$CC" in |
| + case "$cc_basename" in |
| gcc) AC_PATH_TOOL(CXX, [g++], [g++], [notfound]) ;; |
| cc) AC_PATH_TOOL(CXX, [c++], [c++], [notfound]) ;; |
| clang|*/clang) AC_PATH_TOOL(CXX, [clang++], [clang++], [notfound]) ;; |
| @@ -1290,7 +1291,7 @@ rmdir CaseSensitiveTestDir |
| |
| case $ac_sys_system in |
| hp*|HP*) |
| - case $CC in |
| + case $cc_basename in |
| cc|*/cc) CC="$CC -Ae";; |
| esac;; |
| esac |
| @@ -1798,7 +1799,7 @@ esac |
| ], |
| [AC_MSG_RESULT(no)]) |
| if test "$Py_LTO" = 'true' ; then |
| - case $CC in |
| + case $cc_basename in |
| *clang*) |
| dnl flag to disable lto during linking |
| LDFLAGS_NOLTO="-fno-lto" |
| @@ -1917,7 +1918,7 @@ then |
| fi |
| fi |
| LLVM_PROF_ERR=no |
| -case $CC in |
| +case $cc_basename in |
| *clang*) |
| # Any changes made here should be reflected in the GCC+Darwin case below |
| PGO_PROF_GEN_FLAG="-fprofile-instr-generate" |
| @@ -1978,7 +1979,7 @@ esac |
| # compiler and platform. BASECFLAGS tweaks need to be made even if the |
| # user set OPT. |
| |
| -case $CC in |
| +case $cc_basename in |
| *clang*) |
| cc_is_clang=1 |
| ;; |
| @@ -2197,7 +2198,7 @@ yes) |
| |
| # ICC doesn't recognize the option, but only emits a warning |
| ## XXX does it emit an unused result warning and can it be disabled? |
| - AS_CASE([$CC], |
| + AS_CASE([$cc_basename], |
| [*icc*], [ac_cv_disable_unused_result_warning=no] |
| [PY_CHECK_CC_WARNING([disable], [unused-result])]) |
| AS_VAR_IF([ac_cv_disable_unused_result_warning], [yes], |
| @@ -2439,7 +2440,7 @@ yes) |
| ;; |
| esac |
| |
| -case "$CC" in |
| +case "$cc_basename" in |
| *icc*) |
| # ICC needs -fp-model strict or floats behave badly |
| CFLAGS_NODIST="$CFLAGS_NODIST -fp-model strict" |
| @@ -3281,7 +3282,7 @@ then |
| then |
| LINKFORSHARED="-Wl,--export-dynamic" |
| fi;; |
| - SunOS/5*) case $CC in |
| + SunOS/5*) case $cc_basename in |
| *gcc*) |
| if $CC -Xlinker --help 2>&1 | grep export-dynamic >/dev/null |
| then |
| @@ -6370,7 +6371,7 @@ if test "$ac_cv_gcc_asm_for_x87" = yes; then |
| # Some versions of gcc miscompile inline asm: |
| # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46491 |
| # http://gcc.gnu.org/ml/gcc/2010-11/msg00366.html |
| - case $CC in |
| + case $cc_basename in |
| *gcc*) |
| AC_MSG_CHECKING(for gcc ipa-pure-const bug) |
| saved_cflags="$CFLAGS" |