2021-07-31 16:38:54 +02:00
|
|
|
From 4bb57da5fb0bb0d7e747b9e325e9ec0876ffc1f9 Mon Sep 17 00:00:00 2001
|
2021-07-01 19:47:19 +02:00
|
|
|
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
2021-07-31 16:38:54 +02:00
|
|
|
Date: Sat, 31 Jul 2021 16:36:50 +0200
|
2021-07-01 19:47:19 +02:00
|
|
|
Subject: [PATCH] add BUILD_WITH_STACK_PROTECTOR option
|
|
|
|
|
|
|
|
Add BUILD_WITH_STACK_PROTECTOR to avoid the following build failure with
|
|
|
|
toolchains that don't support stack-protector:
|
|
|
|
|
|
|
|
/home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mipsel-buildroot-linux-uclibc/9.3.0/../../../../mipsel-buildroot-linux-uclibc/bin/ld: utils.cpp:(.text._ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPcEEvT_S7_St20forward_iterator_tag[_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_M_constructIPcEEvT_S7_St20forward_iterator_tag]+0xd0): undefined reference to `__stack_chk_fail'
|
|
|
|
|
|
|
|
Indeed, support for -fstack-protector-strong can't be detected through
|
|
|
|
check_cxx_compiler_flag as some toolchains need to link with -lssp to
|
|
|
|
enable SSP support
|
|
|
|
|
|
|
|
Fixes:
|
|
|
|
- http://autobuild.buildroot.org/results/ae4635899124c602c70d2b342a76f95c34aa4a3d
|
|
|
|
|
2021-07-31 16:38:54 +02:00
|
|
|
Upstream: https://github.com/Exiv2/exiv2/commit/f31c0eba098889899d29b7b0da830aee2b62a7b8
|
2021-07-01 19:47:19 +02:00
|
|
|
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
|
|
|
---
|
|
|
|
CMakeLists.txt | 1 +
|
2021-07-31 16:38:54 +02:00
|
|
|
cmake/compilerFlags.cmake | 4 ++--
|
|
|
|
2 files changed, 3 insertions(+), 2 deletions(-)
|
2021-07-01 19:47:19 +02:00
|
|
|
|
|
|
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
2021-07-31 16:38:54 +02:00
|
|
|
index 6f0da06a..0746ee14 100644
|
2021-07-01 19:47:19 +02:00
|
|
|
--- a/CMakeLists.txt
|
|
|
|
+++ b/CMakeLists.txt
|
2021-07-31 16:38:54 +02:00
|
|
|
@@ -47,6 +47,7 @@ mark_as_advanced(
|
2021-07-01 19:47:19 +02:00
|
|
|
EXIV2_TEAM_USE_SANITIZERS
|
|
|
|
)
|
|
|
|
|
|
|
|
+option( BUILD_WITH_STACK_PROTECTOR "Build with stack protector" ON )
|
|
|
|
option( BUILD_WITH_CCACHE "Use ccache to speed up compilations" OFF )
|
|
|
|
option( BUILD_WITH_COVERAGE "Add compiler flags to generate coverage stats" OFF )
|
2021-07-31 16:38:54 +02:00
|
|
|
|
2021-07-01 19:47:19 +02:00
|
|
|
diff --git a/cmake/compilerFlags.cmake b/cmake/compilerFlags.cmake
|
2021-07-31 16:38:54 +02:00
|
|
|
index 35faf501..0a646e50 100644
|
2021-07-01 19:47:19 +02:00
|
|
|
--- a/cmake/compilerFlags.cmake
|
|
|
|
+++ b/cmake/compilerFlags.cmake
|
2021-07-31 16:38:54 +02:00
|
|
|
@@ -33,8 +33,8 @@ if ( MINGW OR UNIX OR MSYS ) # MINGW, Linux, APPLE, CYGWIN
|
|
|
|
endif()
|
|
|
|
if(HAS_FCF_PROTECTION)
|
|
|
|
add_compile_options(-fcf-protection)
|
|
|
|
- endif()
|
|
|
|
- if(HAS_FSTACK_PROTECTOR_STRONG)
|
|
|
|
+ endif()
|
|
|
|
+ if(BUILD_WITH_STACK_PROTECTOR AND HAS_FSTACK_PROTECTOR_STRONG)
|
|
|
|
add_compile_options(-fstack-protector-strong)
|
|
|
|
endif()
|
|
|
|
endif()
|
2021-07-01 19:47:19 +02:00
|
|
|
--
|
2021-07-31 16:38:54 +02:00
|
|
|
2.31.1
|
2021-07-01 19:47:19 +02:00
|
|
|
|