Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package exiv2 for openSUSE:Factory checked in at 2021-05-25 21:08:13 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/exiv2 (Old) and /work/SRC/openSUSE:Factory/.exiv2.new.2988 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "exiv2" Tue May 25 21:08:13 2021 rev:59 rq:894923 version:0.27.3 Changes: -------- --- /work/SRC/openSUSE:Factory/exiv2/exiv2.changes 2020-08-28 23:44:48.735508170 +0200 +++ /work/SRC/openSUSE:Factory/.exiv2.new.2988/exiv2.changes 2021-05-25 21:08:15.142997334 +0200 @@ -1,0 +2,12 @@ +Wed May 12 16:35:44 UTC 2021 - Dominique Leuenberger <dims...@opensuse.org> + +- Add 1271.patch: Fix build using GCC 11 (boo#1185218). +- Drop the sed hack to remove -fcf-protection: this is properly + solved with the above patch. + +------------------------------------------------------------------- +Wed May 12 15:28:24 UTC 2021 - Ludwig Nussel <lnus...@suse.de> + +- -fcf-protection doesn't work on i586 with gcc11 either (boo#1185218) + +------------------------------------------------------------------- New: ---- 1271.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ exiv2.spec ++++++ --- /var/tmp/diff_new_pack.T5qxIY/_old 2021-05-25 21:08:15.894994034 +0200 +++ /var/tmp/diff_new_pack.T5qxIY/_new 2021-05-25 21:08:15.898994017 +0200 @@ -1,7 +1,7 @@ # # spec file for package exiv2 # -# Copyright (c) 2020 SUSE LLC +# Copyright (c) 2021 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -20,12 +20,13 @@ Version: 0.27.3 Release: 0 Summary: Tool to access image Exif metadata -License: GPL-2.0-or-later AND BSD-3-Clause +License: BSD-3-Clause AND GPL-2.0-or-later Group: Productivity/Graphics/Other URL: http://www.exiv2.org/ Source0: https://github.com/Exiv2/%{name}/archive/v%{version}/%{name}-%{version}.tar.gz Source1: baselibs.conf Patch0: exiv2-build-date.patch +Patch1: https://patch-diff.githubusercontent.com/raw/Exiv2/exiv2/pull/1271.patch BuildRequires: cmake BuildRequires: doxygen BuildRequires: fdupes @@ -103,10 +104,6 @@ # Upstream will switch to C++11 with 0.28.0, but googletest requires C++11 # See https://github.com/Exiv2/exiv2/issues/1163 sed -i -e 's/CXX_STANDARD 98/CXX_STANDARD 11/' cmake/mainSetup.cmake -%ifnarch %{ix86} x86_64 -# Drop -fcf-protection flag on architectures which do not support it -sed -i -e 's/-fcf-protection//' cmake/compilerFlags.cmake -%endif %build %global _lto_cflags %{_lto_cflags} -ffat-lto-objects ++++++ 1271.patch ++++++ >From bbe0b70840cf28b7dd8c0b7e9bb1b741aeda2efd Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni <thomas.petazz...@bootlin.com> Date: Mon, 10 Aug 2020 19:28:49 +0200 Subject: [PATCH] Properly detect availability of flags in cmake/compilerFlags.cmake (#1252) Instead of relying on fragile and complex logic to decide if a compiler flag is available or not, use the check_c_compiler_flag() macro provided by the CMake standard library. This for example avoids using -fcf-protection on architectures that don't support this option. Signed-off-by: Thomas Petazzoni <thomas.petazz...@bootlin.com> (cherry picked from commit dd2d181755a6e642c0a8e3225ef5407fff49eb3a) When resolving the conflict from applying the patch, I also took the liberty of re-indenting the snippet correcly and fixing mismatching HAS_FCF_PROTECTION and HAS_FSTACK_PROTECTOR_STRONG variables (the conditionals used GCC_ prefix but the variables were definded without it). Signed-off-by: Jan Tojnar <jtoj...@gmail.com> --- cmake/compilerFlags.cmake | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/cmake/compilerFlags.cmake b/cmake/compilerFlags.cmake index 0418aa618c..28472e4aec 100644 --- a/cmake/compilerFlags.cmake +++ b/cmake/compilerFlags.cmake @@ -1,4 +1,5 @@ # These flags applies to exiv2lib, the applications, and to the xmp code +include(CheckCCompilerFlag) if ( MINGW OR UNIX OR MSYS ) # MINGW, Linux, APPLE, CYGWIN if (${CMAKE_CXX_COMPILER_ID} STREQUAL GNU) @@ -22,16 +23,18 @@ if ( MINGW OR UNIX OR MSYS ) # MINGW, Linux, APPLE, CYGWIN if (COMPILER_IS_GCC OR COMPILER_IS_CLANG) - - # This fails under Fedora, MinGW GCC 8.3.0 and CYGWIN/MSYS 9.3.0 - if (NOT (MINGW OR CMAKE_HOST_SOLARIS OR CYGWIN OR MSYS) ) - if (COMPILER_IS_GCC AND CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 8.0) - add_compile_options(-fstack-clash-protection -fcf-protection) + # This fails under Fedora - MinGW - Gcc 8.3 + if (NOT MINGW) + check_c_compiler_flag(-fstack-clash-protection HAS_FSTACK_CLASH_PROTECTION) + check_c_compiler_flag(-fcf-protection HAS_FCF_PROTECTION) + check_c_compiler_flag(-fstack-protector-strong HAS_FSTACK_PROTECTOR_STRONG) + if(HAS_FSTACK_CLASH_PROTECTION) + add_compile_options(-fstack-clash-protection) endif() - - if( (COMPILER_IS_GCC AND CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 5.0) # Not in GCC 4.8 - OR (COMPILER_IS_CLANG AND CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 3.7) # Not in Clang 3.4.2 - ) + if(HAS_FCF_PROTECTION) + add_compile_options(-fcf-protection) + endif() + if(HAS_FSTACK_PROTECTOR_STRONG) add_compile_options(-fstack-protector-strong) endif() endif()