bpo-31354: Let configure --with-lto work on all builds
Allow configure --with-lto to apply to all builds, not just profile-opt builds.
Whether this is actually useful or not must be determined by the person
building CPython using their own toolchain.
My own quick test on x86_64 Debian 9 (gcc 6.3, binutils 2.28) seemed
to suggest that it wasn't, but I expect better toolchains can or will exist
at some point. The point is to allow it at all.
diff --git a/configure b/configure
index 12afe5e..00dd1f0 100755
--- a/configure
+++ b/configure
@@ -679,7 +679,6 @@
LLVM_PROF_MERGER
PGO_PROF_USE_FLAG
PGO_PROF_GEN_FLAG
-LTOFLAGS
DEF_MAKE_RULE
DEF_MAKE_ALL_RULE
ABIFLAGS
@@ -1511,8 +1510,8 @@
--with-suffix=.exe set executable suffix
--with-pydebug build with Py_DEBUG defined
--with-assertions build with C assertions enabled
- --with-lto Enable Link Time Optimization in PGO builds.
- Disabled by default.
+ --with-lto Enable Link Time Optimization in any build. Disabled
+ by default.
--with-hash-algorithm=[fnv|siphash24]
select hash algorithm
--with-address-sanitizer
@@ -6511,7 +6510,6 @@
fi
# Enable LTO flags
-
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for --with-lto" >&5
$as_echo_n "checking for --with-lto... " >&6; }
@@ -6557,6 +6555,8 @@
esac
;;
esac
+ CFLAGS="$CFLAGS $LTOFLAGS"
+ LDFLAGS="$LDFLAGS $LTOFLAGS"
fi
# Enable PGO flags.