[PATCH v2] Deactivate _FORTIFY_SOURCE in jitterentropy-base.c
Hauke Mehrtens
hauke at hauke-m.de
Tue Oct 31 04:48:00 PDT 2023
This fixes compilation with glibc.
_FORTIFY_SOURCE only works with compiler optimizations activated.
We have to deactivate it when we set -O0.
This fixes the following error message with glibc:
error: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Werror=cpp]
musl libc does not show an error message in this case, but has the same
internal problems.
Signed-off-by: Hauke Mehrtens <hauke at hauke-m.de>
---
CMakeLists.txt | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
Changelog:
v2: Use SET_PROPERTY and COMPILE_OPTIONS
diff --git a/CMakeLists.txt b/CMakeLists.txt
index a1ee0c1..f415f87 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -22,8 +22,11 @@ ADD_EXECUTABLE(urngd
)
TARGET_LINK_LIBRARIES(urngd ${ubox})
-# jitter RNG must not be compiled with optimizations
-SET_SOURCE_FILES_PROPERTIES(${JTEN_DIR}/jitterentropy-base.c PROPERTIES COMPILE_FLAGS -O0)
+# jitter RNG must not be compiled with optimizations, _FORTIFY_SOURCE needs optimizations
+SET_PROPERTY(
+ SOURCE ${JTEN_DIR}/jitterentropy-base.c
+ APPEND PROPERTY COMPILE_OPTIONS -U_FORTIFY_SOURCE -O0
+)
INSTALL(TARGETS urngd RUNTIME DESTINATION ${CMAKE_INSTALL_SBINDIR})
--
2.39.2
More information about the openwrt-devel
mailing list