From f2d2cb12f2d3bd68a13c4098311e725f776768ad Mon Sep 17 00:00:00 2001 From: "Miss Islington (bot)" <31488909+miss-islington@users.noreply.github.com> Date: Sun, 9 Dec 2018 00:35:13 -0800 Subject: [PATCH] bpo-35351: Pass link time optimization flags to CFLAGS_NODIST (GH-10797) When using link time optimizations, the -flto flag is passed to BASECFLAGS, which makes it propagate to distutils. Those flags should be reserved for the interpreter and the stdlib extension modules only, thus moving those flags to CFLAGS_NODIST. (cherry picked from commit f92c7aa1ae81efa475b5aecf66e4711ef0f52c4c) Co-authored-by: stratakis --- Misc/NEWS.d/next/Build/2018-12-04-15-33-28.bpo-35351.ZhhBfT.rst | 2 ++ configure | 2 +- configure.ac | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) create mode 100644 Misc/NEWS.d/next/Build/2018-12-04-15-33-28.bpo-35351.ZhhBfT.rst diff --git a/Misc/NEWS.d/next/Build/2018-12-04-15-33-28.bpo-35351.ZhhBfT.rst b/Misc/NEWS.d/next/Build/2018-12-04-15-33-28.bpo-35351.ZhhBfT.rst new file mode 100644 index 000000000000..ee6c870b060f --- /dev/null +++ b/Misc/NEWS.d/next/Build/2018-12-04-15-33-28.bpo-35351.ZhhBfT.rst @@ -0,0 +1,2 @@ +When building Python with clang and LTO, LTO flags are no longer passed into +CFLAGS to build third-party C extensions through distutils. diff --git a/configure b/configure index 5a494d987346..8cd730d219e3 100755 --- a/configure +++ b/configure @@ -6726,7 +6726,7 @@ $as_echo "$as_me: llvm-ar found via xcrun: ${LLVM_AR}" >&6;} LTOFLAGS="$LTOFLAGS -g" fi - BASECFLAGS="$BASECFLAGS $LTOFLAGS" + CFLAGS_NODIST="$CFLAGS_NODIST $LTOFLAGS" LDFLAGS="$LDFLAGS $LTOFLAGS" fi diff --git a/configure.ac b/configure.ac index 40ecb7d93d8c..bb14a87e5463 100644 --- a/configure.ac +++ b/configure.ac @@ -1400,7 +1400,7 @@ if test "$Py_LTO" = 'true' ; then LTOFLAGS="$LTOFLAGS -g" fi - BASECFLAGS="$BASECFLAGS $LTOFLAGS" + CFLAGS_NODIST="$CFLAGS_NODIST $LTOFLAGS" LDFLAGS="$LDFLAGS $LTOFLAGS" fi -- 2.47.3