Skip to content

Commit 77e553a

Browse files
committed
build: refactor: hardening flags -> core_interface
1 parent 00ba3ba commit 77e553a

File tree

1 file changed

+19
-21
lines changed

1 file changed

+19
-21
lines changed

CMakeLists.txt

Lines changed: 19 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -480,12 +480,10 @@ try_append_cxx_flags("-fmacro-prefix-map=A=B" TARGET core_interface SKIP_LINK
480480
# -fstack-reuse=none for all gcc builds. (Only gcc understands this flag).
481481
try_append_cxx_flags("-fstack-reuse=none" TARGET core_interface)
482482

483-
add_library(hardening_interface INTERFACE)
484-
target_link_libraries(core_interface INTERFACE hardening_interface)
485483
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)
489487
else()
490488

491489
# _FORTIFY_SOURCE requires that there is some level of optimization,
@@ -499,38 +497,38 @@ else()
499497
}"
500498
)
501499
if(cxx_supports_fortify_source)
502-
target_compile_options(hardening_interface INTERFACE
500+
target_compile_options(core_interface INTERFACE
503501
-U_FORTIFY_SOURCE
504502
-D_FORTIFY_SOURCE=3
505503
)
506504
endif()
507505
unset(cxx_supports_fortify_source)
508506

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)
512510

513511
if(MINGW)
514512
# stack-clash-protection is a no-op for Windows.
515513
# See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90458 for more details.
516514
else()
517-
try_append_cxx_flags("-fstack-clash-protection" TARGET hardening_interface)
515+
try_append_cxx_flags("-fstack-clash-protection" TARGET core_interface)
518516
endif()
519517

520518
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "arm64")
521519
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)
523521
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)
525523
endif()
526524
endif()
527525

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)
534532
# TODO: This can be dropped once Bitcoin Core no longer supports
535533
# NetBSD 10.0 or if upstream fix is backported.
536534
# NetBSD's dynamic linker ld.elf_so < 11.0 supports exactly 2
@@ -540,12 +538,12 @@ else()
540538
# - https://github.com/bitcoin/bitcoin/pull/28724#issuecomment-2589347934
541539
# - https://mail-index.netbsd.org/tech-userlevel/2023/01/05/msg013666.html
542540
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)
544542
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)
546544
endif()
547545
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)
549547
endif()
550548
endif()
551549

0 commit comments

Comments
 (0)