* [Buildroot] [git commit branch/2021.05.x] package/exiv2: fix build without SSP
@ 2021-08-04 11:04 Peter Korsgaard
0 siblings, 0 replies; only message in thread
From: Peter Korsgaard @ 2021-08-04 11:04 UTC (permalink / raw)
To: buildroot
commit: https://git.buildroot.net/buildroot/commit/?id=8c08328ff0f9f42e15943ed1ab5fe66a847460fc
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/2021.05.x
Build without SSP fails since bump to version 0.27.4 in commit
bcace429426ee91aac56f3dcc33b69e22141d384
This is due to the fact that
https://github.com/Exiv2/exiv2/commit/bbe0b70840cf28b7dd8c0b7e9bb1b741aeda2efd
removed the wrong GCC_ prefix from HAS_FSTACK_PROTECTOR_STRONG variable
Fixes:
- http://autobuild.buildroot.org/results/ae4635899124c602c70d2b342a76f95c34aa4a3d
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit b18d9d6191c3ca1f74115e6395ff8e9ee1b75b89)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
---
...001-add-BUILD_WITH_STACK_PROTECTOR-option.patch | 52 ++++++++++++++++++++++
package/exiv2/exiv2.mk | 4 +-
2 files changed, 55 insertions(+), 1 deletion(-)
diff --git a/package/exiv2/0001-add-BUILD_WITH_STACK_PROTECTOR-option.patch b/package/exiv2/0001-add-BUILD_WITH_STACK_PROTECTOR-option.patch
new file mode 100644
index 0000000000..c82061661b
--- /dev/null
+++ b/package/exiv2/0001-add-BUILD_WITH_STACK_PROTECTOR-option.patch
@@ -0,0 +1,52 @@
+From 8651c9f823ace70b6609b10aeef0c0740636b570 Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Thu, 1 Jul 2021 19:31:25 +0200
+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
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+[Upstream status: https://github.com/Exiv2/exiv2/pull/1756]
+---
+ CMakeLists.txt | 1 +
+ cmake/compilerFlags.cmake | 2 +-
+ 2 files changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9fe8b5f9..aabb3dca 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -52,6 +52,7 @@ mark_as_advanced(
+ 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 )
+ include(cmake/gcovr.cmake REQUIRED)
+diff --git a/cmake/compilerFlags.cmake b/cmake/compilerFlags.cmake
+index c8a85c59..20f6ac53 100644
+--- a/cmake/compilerFlags.cmake
++++ b/cmake/compilerFlags.cmake
+@@ -44,7 +44,7 @@ if ( MINGW OR UNIX OR MSYS ) # MINGW, Linux, APPLE, CYGWIN
+ if(HAS_FCF_PROTECTION)
+ add_compile_options(-fcf-protection)
+ endif()
+- if(HAS_FSTACK_PROTECTOR_STRONG)
++ if(BUILD_WITH_STACK_PROTECTOR AND HAS_FSTACK_PROTECTOR_STRONG)
+ add_compile_options(-fstack-protector-strong)
+ endif()
+ endif()
+--
+2.30.2
+
diff --git a/package/exiv2/exiv2.mk b/package/exiv2/exiv2.mk
index 52bf03fc63..33222e6381 100644
--- a/package/exiv2/exiv2.mk
+++ b/package/exiv2/exiv2.mk
@@ -12,7 +12,9 @@ EXIV2_LICENSE = GPL-2.0+
EXIV2_LICENSE_FILES = COPYING
EXIV2_CPE_ID_VENDOR = exiv2
-EXIV2_CONF_OPTS += -DEXIV2_BUILD_SAMPLES=OFF
+EXIV2_CONF_OPTS += \
+ -DBUILD_WITH_STACK_PROTECTOR=OFF \
+ -DEXIV2_BUILD_SAMPLES=OFF
ifeq ($(BR2_PACKAGE_EXIV2_LENSDATA),y)
EXIV2_CONF_OPTS += -DEXIV2_ENABLE_LENSDATA=ON
_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2021-08-04 11:11 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-04 11:04 [Buildroot] [git commit branch/2021.05.x] package/exiv2: fix build without SSP Peter Korsgaard
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.