From fa9d25a5b2d5def27ec68136ccfa604cefb4134f Mon Sep 17 00:00:00 2001 From: Carles Fernandez Date: Fri, 16 Dec 2022 11:38:43 +0100 Subject: [PATCH] Fix lintian warning hardening-no-fortify-functions --- CMakeLists.txt | 5 +++++ .../volk_gnsssdr_module/volk_gnsssdr/CMakeLists.txt | 7 +++++++ .../volk_gnsssdr/apps/CMakeLists.txt | 12 ++++++++++++ .../volk_gnsssdr/lib/CMakeLists.txt | 4 ++-- 4 files changed, 26 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0e3ec93fe..e9b741abd 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1158,6 +1158,11 @@ if(NOT VOLKGNSSSDR_FOUND) ${USE_THIS_PYTHON} ) + if(ENABLE_PACKAGING) + set(VOLK_GNSSSDR_CMAKE_ARGS ${VOLK_GNSSSDR_CMAKE_ARGS} + -DENABLE_PACKAGING=ON + ) + endif() if(DEFINED ENV{OECORE_TARGET_SYSROOT}) set(VOLK_GNSSSDR_CMAKE_ARGS ${VOLK_GNSSSDR_CMAKE_ARGS} -DCROSSCOMPILE_MULTILIB=TRUE diff --git a/src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/CMakeLists.txt b/src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/CMakeLists.txt index 3ca3f822f..1e9ba6135 100644 --- a/src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/CMakeLists.txt +++ b/src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/CMakeLists.txt @@ -556,6 +556,13 @@ else() message(STATUS "System profiling is disabled.") endif() message(STATUS " Modify using: -DENABLE_PROFILING=ON/OFF") + +######################################################################## +# Option to pass _FORTIFY_SOURCES=2 to the compiler regardless of +# the building type +######################################################################## +option(ENABLE_PACKAGING "Always pass _FORTIFY_SOURCES=2 to the compiler" OFF) + ######################################################################## ######################################################################## diff --git a/src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/apps/CMakeLists.txt b/src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/apps/CMakeLists.txt index 3ed4dafd6..2af052479 100644 --- a/src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/apps/CMakeLists.txt +++ b/src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/apps/CMakeLists.txt @@ -71,6 +71,12 @@ else() target_link_libraries(volk_gnsssdr_profile PRIVATE volk_gnsssdr ${orc_lib}) endif() +if(UNIX) + target_compile_definitions(volk_gnsssdr_profile + PUBLIC $<$:_FORTIFY_SOURCE=2>$<$:_FORTIFY_SOURCE=2>$<$:_FORTIFY_SOURCE=2> + ) +endif() + if(ENABLE_STRIP) if((CMAKE_CXX_COMPILER_ID STREQUAL "GNU") AND NOT WIN32) set_target_properties(volk_gnsssdr_profile @@ -94,6 +100,12 @@ else() target_link_libraries(volk_gnsssdr-config-info volk_gnsssdr ${orc_lib}) endif() +if(UNIX) + target_compile_definitions(volk_gnsssdr-config-info + PUBLIC $<$:_FORTIFY_SOURCE=2>$<$:_FORTIFY_SOURCE=2>$<$:_FORTIFY_SOURCE=2> + ) +endif() + if(ENABLE_STRIP) if((CMAKE_CXX_COMPILER_ID STREQUAL "GNU") AND NOT WIN32) set_target_properties(volk_gnsssdr-config-info diff --git a/src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/lib/CMakeLists.txt b/src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/lib/CMakeLists.txt index 142708787..196a6fcaa 100644 --- a/src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/lib/CMakeLists.txt +++ b/src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/lib/CMakeLists.txt @@ -592,7 +592,7 @@ if(NOT (ENABLE_STATIC_LIBS AND (CMAKE_GENERATOR STREQUAL Xcode))) ) if(UNIX) target_compile_definitions(volk_gnsssdr - PUBLIC $<$:_FORTIFY_SOURCE=2>$<$:_FORTIFY_SOURCE=2> + PUBLIC $<$:_FORTIFY_SOURCE=2>$<$:_FORTIFY_SOURCE=2>$<$:_FORTIFY_SOURCE=2> ) endif() if(USE_CPU_FEATURES) @@ -667,7 +667,7 @@ if(ENABLE_STATIC_LIBS) ) if(UNIX) target_compile_definitions(volk_gnsssdr_static - PUBLIC $<$:_FORTIFY_SOURCE=2>$<$:_FORTIFY_SOURCE=2> + PUBLIC $<$:_FORTIFY_SOURCE=2>$<$:_FORTIFY_SOURCE=2>$<$:_FORTIFY_SOURCE=2> ) endif() set_target_properties(volk_gnsssdr_static PROPERTIES OUTPUT_NAME volk_gnsssdr)