mirror of https://github.com/python/cpython
bpo-30104: configure now detects when cc is clang (#1233)
Detect when the "cc" compiler (and the $CC variable) is the Clang compiler. The test is needed to add the -fno-strict-aliasing option on FreeBSD where cc is clang.
This commit is contained in:
parent
28205b203a
commit
35f3d240ee
|
@ -6812,19 +6812,32 @@ then
|
|||
WRAP="-fwrapv"
|
||||
fi
|
||||
|
||||
# Clang also needs -fwrapv
|
||||
case $CC in
|
||||
*clang*)
|
||||
WRAP="-fwrapv"
|
||||
# bpo-30104: Python/dtoa.c requires to be build with
|
||||
# -fno-strict-aliasing to fix compiler issue on the
|
||||
# double/ULong[2] union using clang 4.0 and optimization level
|
||||
# -O2 or higher
|
||||
# https://bugs.llvm.org//show_bug.cgi?id=31928
|
||||
ALIASING="-fno-strict-aliasing"
|
||||
cc_is_clang=1
|
||||
;;
|
||||
*)
|
||||
if $CC --version 2>&1 | grep -q clang
|
||||
then
|
||||
cc_is_clang=1
|
||||
else
|
||||
cc_is_clang=
|
||||
fi
|
||||
esac
|
||||
|
||||
if test -n "${cc_is_clang}"
|
||||
then
|
||||
# Clang also needs -fwrapv
|
||||
WRAP="-fwrapv"
|
||||
|
||||
# bpo-30104: Python/dtoa.c requires to be build with
|
||||
# -fno-strict-aliasing to fix compiler issue on the
|
||||
# double/ULong[2] union using clang 4.0 and optimization level
|
||||
# -O2 or higher
|
||||
# https://bugs.llvm.org//show_bug.cgi?id=31928
|
||||
ALIASING="-fno-strict-aliasing"
|
||||
fi
|
||||
|
||||
case $ac_cv_prog_cc_g in
|
||||
yes)
|
||||
if test "$Py_DEBUG" = 'true' ; then
|
||||
|
|
29
configure.ac
29
configure.ac
|
@ -1452,19 +1452,32 @@ then
|
|||
WRAP="-fwrapv"
|
||||
fi
|
||||
|
||||
# Clang also needs -fwrapv
|
||||
case $CC in
|
||||
*clang*)
|
||||
WRAP="-fwrapv"
|
||||
# bpo-30104: Python/dtoa.c requires to be build with
|
||||
# -fno-strict-aliasing to fix compiler issue on the
|
||||
# double/ULong[2] union using clang 4.0 and optimization level
|
||||
# -O2 or higher
|
||||
# https://bugs.llvm.org//show_bug.cgi?id=31928
|
||||
ALIASING="-fno-strict-aliasing"
|
||||
cc_is_clang=1
|
||||
;;
|
||||
*)
|
||||
if $CC --version 2>&1 | grep -q clang
|
||||
then
|
||||
cc_is_clang=1
|
||||
else
|
||||
cc_is_clang=
|
||||
fi
|
||||
esac
|
||||
|
||||
if test -n "${cc_is_clang}"
|
||||
then
|
||||
# Clang also needs -fwrapv
|
||||
WRAP="-fwrapv"
|
||||
|
||||
# bpo-30104: Python/dtoa.c requires to be build with
|
||||
# -fno-strict-aliasing to fix compiler issue on the
|
||||
# double/ULong[2] union using clang 4.0 and optimization level
|
||||
# -O2 or higher
|
||||
# https://bugs.llvm.org//show_bug.cgi?id=31928
|
||||
ALIASING="-fno-strict-aliasing"
|
||||
fi
|
||||
|
||||
case $ac_cv_prog_cc_g in
|
||||
yes)
|
||||
if test "$Py_DEBUG" = 'true' ; then
|
||||
|
|
Loading…
Reference in New Issue