diff options
author | fanquake <fanquake@gmail.com> | 2023-10-19 09:51:27 +0100 |
---|---|---|
committer | fanquake <fanquake@gmail.com> | 2023-10-19 10:07:04 +0100 |
commit | 5eb82d5706ea1b3b9eee2daaf6e47d1405549d4f (patch) | |
tree | 9ed540d8761f346ea9bfb69b1bc12d953cc97daa | |
parent | f4049eaf08b6c5354e7e8a11c8d78aaeab4c595f (diff) | |
parent | 8cfa22a8464c07da3bb47e7db323ed1069b97457 (diff) |
Merge bitcoin/bitcoin#28672: build: move `-fstack-reuse=none` to CORE_CXXFLAGS
8cfa22a8464c07da3bb47e7db323ed1069b97457 build: move -fstack-reuse=none to CORE_CXXFLAGS (fanquake)
Pull request description:
This is not a hardening specific flag, it should be used at all times, regardless of if hardening is enabled or not. Note that this was still the case here, but having this exist in the hardening flags is confusing, and may lead someone to move it inside one of the `use_hardening` blocks, where it would become unused, with `--disable-hardening`.
Noticed while reviewing https://github.com/hebasto/bitcoin/pull/32#discussion_r1363564161.
ACKs for top commit:
theuni:
ACK 8cfa22a8464c07da3bb47e7db323ed1069b97457. Agree it's confusing as-is and this better matches the intent.
hebasto:
ACK 8cfa22a8464c07da3bb47e7db323ed1069b97457
luke-jr:
utACK 8cfa22a8464c07da3bb47e7db323ed1069b97457
TheCharlatan:
ACK 8cfa22a8464c07da3bb47e7db323ed1069b97457
Tree-SHA512: 74c3219301398361d06b1ef2257fc9ec18055b1661f8733ee909adefee61e458d70991c32adf0e0450905a7ffbddc99799f5fdac894f4896cfade19f961818df
-rw-r--r-- | configure.ac | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/configure.ac b/configure.ac index 20358205ca..0e8292f19a 100644 --- a/configure.ac +++ b/configure.ac @@ -471,6 +471,12 @@ fi dnl Don't allow extended (non-ASCII) symbols in identifiers. This is easier for code review. AX_CHECK_COMPILE_FLAG([-fno-extended-identifiers], [CORE_CXXFLAGS="$CORE_CXXFLAGS -fno-extended-identifiers"], [], [$CXXFLAG_WERROR]) +dnl Currently all versions of gcc are subject to a class of bugs, see the +dnl gccbug_90348 test case (only reproduces on GCC 11 and earlier) and +dnl https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111843. To work around that, set +dnl -fstack-reuse=none for all gcc builds. (Only gcc understands this flag) +AX_CHECK_COMPILE_FLAG([-fstack-reuse=none], [CORE_CXXFLAGS="$CORE_CXXFLAGS -fstack-reuse=none"]) + enable_arm_crc=no enable_arm_shani=no enable_sse42=no @@ -941,11 +947,6 @@ if test "$TARGET_OS" != "windows"; then AX_CHECK_COMPILE_FLAG([-fPIC], [PIC_FLAGS="-fPIC"]) fi -dnl Currently all versions of gcc are subject to a class of bugs, see the -dnl gccbug_90348 test case (only reproduces on GCC 11 and earlier) and the related bugs of -dnl https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90348. To work around that, set -dnl -fstack-reuse=none for all gcc builds. (Only gcc understands this flag) -AX_CHECK_COMPILE_FLAG([-fstack-reuse=none], [HARDENED_CXXFLAGS="$HARDENED_CXXFLAGS -fstack-reuse=none"]) if test "$use_hardening" != "no"; then use_hardening=yes AX_CHECK_COMPILE_FLAG([-Wstack-protector], [HARDENED_CXXFLAGS="$HARDENED_CXXFLAGS -Wstack-protector"]) |