@@ -480,12 +480,10 @@ try_append_cxx_flags("-fmacro-prefix-map=A=B" TARGET core_interface SKIP_LINK
480
480
# -fstack-reuse=none for all gcc builds. (Only gcc understands this flag).
481
481
try_append_cxx_flags ("-fstack-reuse=none" TARGET core_interface )
482
482
483
- add_library (hardening_interface INTERFACE )
484
- target_link_libraries (core_interface INTERFACE hardening_interface )
485
483
if (MSVC )
486
- try_append_linker_flag ("/DYNAMICBASE" TARGET hardening_interface )
487
- try_append_linker_flag ("/HIGHENTROPYVA" TARGET hardening_interface )
488
- try_append_linker_flag ("/NXCOMPAT" TARGET hardening_interface )
484
+ try_append_linker_flag ("/DYNAMICBASE" TARGET core_interface )
485
+ try_append_linker_flag ("/HIGHENTROPYVA" TARGET core_interface )
486
+ try_append_linker_flag ("/NXCOMPAT" TARGET core_interface )
489
487
else ()
490
488
491
489
# _FORTIFY_SOURCE requires that there is some level of optimization,
@@ -499,38 +497,38 @@ else()
499
497
}"
500
498
)
501
499
if (cxx_supports_fortify_source )
502
- target_compile_options (hardening_interface INTERFACE
500
+ target_compile_options (core_interface INTERFACE
503
501
-U_FORTIFY_SOURCE
504
502
-D_FORTIFY_SOURCE=3
505
503
)
506
504
endif ()
507
505
unset (cxx_supports_fortify_source )
508
506
509
- try_append_cxx_flags ("-Wstack-protector" TARGET hardening_interface SKIP_LINK )
510
- try_append_cxx_flags ("-fstack-protector-all" TARGET hardening_interface )
511
- try_append_cxx_flags ("-fcf-protection=full" TARGET hardening_interface )
507
+ try_append_cxx_flags ("-Wstack-protector" TARGET core_interface SKIP_LINK )
508
+ try_append_cxx_flags ("-fstack-protector-all" TARGET core_interface )
509
+ try_append_cxx_flags ("-fcf-protection=full" TARGET core_interface )
512
510
513
511
if (MINGW )
514
512
# stack-clash-protection is a no-op for Windows.
515
513
# See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90458 for more details.
516
514
else ()
517
- try_append_cxx_flags ("-fstack-clash-protection" TARGET hardening_interface )
515
+ try_append_cxx_flags ("-fstack-clash-protection" TARGET core_interface )
518
516
endif ()
519
517
520
518
if (CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "arm64" )
521
519
if (CMAKE_SYSTEM_NAME STREQUAL "Darwin" )
522
- try_append_cxx_flags ("-mbranch-protection=bti" TARGET hardening_interface SKIP_LINK )
520
+ try_append_cxx_flags ("-mbranch-protection=bti" TARGET core_interface SKIP_LINK )
523
521
else ()
524
- try_append_cxx_flags ("-mbranch-protection=standard" TARGET hardening_interface SKIP_LINK )
522
+ try_append_cxx_flags ("-mbranch-protection=standard" TARGET core_interface SKIP_LINK )
525
523
endif ()
526
524
endif ()
527
525
528
- try_append_linker_flag ("-Wl,--enable-reloc-section" TARGET hardening_interface )
529
- try_append_linker_flag ("-Wl,--dynamicbase" TARGET hardening_interface )
530
- try_append_linker_flag ("-Wl,--nxcompat" TARGET hardening_interface )
531
- try_append_linker_flag ("-Wl,--high-entropy-va" TARGET hardening_interface )
532
- try_append_linker_flag ("-Wl,-z,relro" TARGET hardening_interface )
533
- try_append_linker_flag ("-Wl,-z,now" TARGET hardening_interface )
526
+ try_append_linker_flag ("-Wl,--enable-reloc-section" TARGET core_interface )
527
+ try_append_linker_flag ("-Wl,--dynamicbase" TARGET core_interface )
528
+ try_append_linker_flag ("-Wl,--nxcompat" TARGET core_interface )
529
+ try_append_linker_flag ("-Wl,--high-entropy-va" TARGET core_interface )
530
+ try_append_linker_flag ("-Wl,-z,relro" TARGET core_interface )
531
+ try_append_linker_flag ("-Wl,-z,now" TARGET core_interface )
534
532
# TODO: This can be dropped once Bitcoin Core no longer supports
535
533
# NetBSD 10.0 or if upstream fix is backported.
536
534
# NetBSD's dynamic linker ld.elf_so < 11.0 supports exactly 2
@@ -540,12 +538,12 @@ else()
540
538
# - https://github.com/bitcoin/bitcoin/pull/28724#issuecomment-2589347934
541
539
# - https://mail-index.netbsd.org/tech-userlevel/2023/01/05/msg013666.html
542
540
if (CMAKE_SYSTEM_NAME STREQUAL "NetBSD" AND CMAKE_SYSTEM_VERSION VERSION_LESS 11.0 )
543
- try_append_linker_flag ("-Wl,-z,noseparate-code" TARGET hardening_interface )
541
+ try_append_linker_flag ("-Wl,-z,noseparate-code" TARGET core_interface )
544
542
else ()
545
- try_append_linker_flag ("-Wl,-z,separate-code" TARGET hardening_interface )
543
+ try_append_linker_flag ("-Wl,-z,separate-code" TARGET core_interface )
546
544
endif ()
547
545
if (CMAKE_SYSTEM_NAME STREQUAL "Darwin" )
548
- try_append_linker_flag ("-Wl,-fixup_chains" TARGET hardening_interface )
546
+ try_append_linker_flag ("-Wl,-fixup_chains" TARGET core_interface )
549
547
endif ()
550
548
endif ()
551
549
0 commit comments