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()

Reply via email to