mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-01-10 03:47:29 -03:00
Merge bitcoin/bitcoin#28461: build: Windows SSP roundup
f95af98128
guix: default ssp for Windows GCC (fanquake)95d55b96c2
guix: remove ssp workaround from Windows GCC (fanquake)8f43302a0a
build: remove explicit libssp linking from Windows build (fanquake) Pull request description: I was expecting this to fail to compile somewhere, maybe in the CI, but that doesn't seem to be the case? Seems workable given the SSP related changes in the newer mingw-w64 headers (which are in Guix): > Implement some of the stack protector functions/variables so -lssp is now optional when _FORTIFY_SOURCE or -fstack-protector-strong is used. However I think this would still be broken in some older environments, so we might have to wait for a compiler bump, or similar. The optional -lssp also seems to work when using older headers, which doesn't make sense. Would fix #28104. ACKs for top commit: hebasto: ACKf95af98128
, I've verified binaries from `bitcoin-f95af98128f1-win64.zip` on Windows 11 Pro 23H2. TheCharlatan: ACKf95af98128
Tree-SHA512: 71169ec513cfe692dfa7741d2bf37b45da05627c0af1cbd50cf8c3c04cc21c4bf88f3284532bddc1e3e648391ec78dbaca5170987a13c21ac204a7bcaf27f349
This commit is contained in:
commit
5d13b9586e
2 changed files with 2 additions and 12 deletions
|
@ -986,12 +986,6 @@ if test "$use_hardening" != "no"; then
|
|||
AX_CHECK_LINK_FLAG([-Wl,-z,now], [HARDENED_LDFLAGS="$HARDENED_LDFLAGS -Wl,-z,now"], [], [$LDFLAG_WERROR])
|
||||
AX_CHECK_LINK_FLAG([-Wl,-z,separate-code], [HARDENED_LDFLAGS="$HARDENED_LDFLAGS -Wl,-z,separate-code"], [], [$LDFLAG_WERROR])
|
||||
AX_CHECK_LINK_FLAG([-fPIE -pie], [PIE_FLAGS="-fPIE"; HARDENED_LDFLAGS="$HARDENED_LDFLAGS -pie"], [], [$CXXFLAG_WERROR])
|
||||
|
||||
case $host in
|
||||
*mingw*)
|
||||
AC_CHECK_LIB([ssp], [main], [], [AC_MSG_ERROR([libssp missing])])
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
dnl These flags are specific to ld64, and may cause issues with other linkers.
|
||||
|
|
|
@ -411,12 +411,8 @@ inspecting signatures in Mach-O binaries.")
|
|||
`(append ,flags
|
||||
;; https://gcc.gnu.org/install/configure.html
|
||||
(list "--enable-threads=posix",
|
||||
building-on)))
|
||||
((#:make-flags flags)
|
||||
;; Uses the SSP functions from glibc instead of from libssp.so.
|
||||
;; Our 'symbol-check' script will complain if we link against libssp.so,
|
||||
;; and thus will ensure that this works properly.
|
||||
`(cons "gcc_cv_libc_provides_ssp=yes" ,flags))))))
|
||||
"--enable-default-ssp=yes",
|
||||
building-on)))))))
|
||||
|
||||
(define-public linux-base-gcc
|
||||
(package
|
||||
|
|
Loading…
Reference in a new issue