Skip to content

Commit

Permalink
Update exiv2 to version 0.28.0 / rev 76 via SR 1096176
Browse files Browse the repository at this point in the history
https://build.opensuse.org/request/show/1096176
by user dirkmueller + dimstar_suse
- add a x86-64-v3 build, remove 32bit build (not used)

- drop old C++ standard hack (patched line dropped in 0.28)
- use g++-11 for Leap 15 builds (fix for failed std::filesystem
  check)

- update to 0.28.0:
  - long list of improvements and security fixes, see
   Exiv2/exiv2#2406 (comment)
- drop always-use-signed-char-for-conversion.patch (code no longer exists)
- drop CVE-2022-3953.patch (merged upstream)
- drop xml-static subpackage, cannot be built from shared builds anymore
  and appears to be unused
  • Loading branch information
dirkmueller authored and bmwiedemann committed Jul 1, 2023
1 parent d86a6fa commit 5273fd2
Show file tree
Hide file tree
Showing 10 changed files with 90 additions and 103 deletions.
Binary file modified packages/e/exiv2/.files
Binary file not shown.
20 changes: 20 additions & 0 deletions packages/e/exiv2/.rev
Original file line number Diff line number Diff line change
Expand Up @@ -785,4 +785,24 @@
<comment></comment>
<requestid>1062964</requestid>
</revision>
<revision rev="76" vrev="1">
<srcmd5>6df09e0b4c4d3227ae0e50d2ba13f7f7</srcmd5>
<version>0.28.0</version>
<time>1688246269</time>
<user>dimstar_suse</user>
<comment>- add a x86-64-v3 build, remove 32bit build (not used)

- drop old C++ standard hack (patched line dropped in 0.28)
- use g++-11 for Leap 15 builds (fix for failed std::filesystem
check)

- update to 0.28.0:
- long list of improvements and security fixes, see
https://github.com/Exiv2/exiv2/issues/2406#issuecomment-1529139799
- drop always-use-signed-char-for-conversion.patch (code no longer exists)
- drop CVE-2022-3953.patch (merged upstream)
- drop xml-static subpackage, cannot be built from shared builds anymore
and appears to be unused</comment>
<requestid>1096176</requestid>
</revision>
</revisionlist>
29 changes: 0 additions & 29 deletions packages/e/exiv2/CVE-2022-3953.patch

This file was deleted.

23 changes: 0 additions & 23 deletions packages/e/exiv2/always-use-signed-char-for-conversion.patch

This file was deleted.

3 changes: 2 additions & 1 deletion packages/e/exiv2/baselibs.conf
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
libexiv2-27
libexiv2-28
targettype 32bit block!
1 change: 0 additions & 1 deletion packages/e/exiv2/exiv2-0.27.6.tar.gz

This file was deleted.

1 change: 1 addition & 0 deletions packages/e/exiv2/exiv2-0.28.0.tar.gz
51 changes: 27 additions & 24 deletions packages/e/exiv2/exiv2-build-date.patch
Original file line number Diff line number Diff line change
@@ -1,31 +1,34 @@
diff -ur exiv2-0.27.1/samples/geotag.cpp exiv2-0.27.1_fix/samples/geotag.cpp
--- exiv2-0.27.1/samples/geotag.cpp 2019-04-26 11:31:16.000000000 +0200
+++ exiv2-0.27.1_fix/samples/geotag.cpp 2019-06-06 08:55:15.756143641 +0200
@@ -698,7 +698,7 @@
Index: exiv2-0.28.0/samples/geotag.cpp
===================================================================
--- exiv2-0.28.0.orig/samples/geotag.cpp
+++ exiv2-0.28.0/samples/geotag.cpp
@@ -632,7 +632,7 @@ int getFileType(const char* path, Option
}

int version(const char* program)
{
- printf("%s: %s %s\n",program,__DATE__,__TIME__);
+ printf("%s\n",program);
return 0;
int version(const char* program) {
- printf("%s: %s %s\n", program, __DATE__, __TIME__);
+ printf("%s\n", program);
return 0;
}

diff -ur exiv2-0.27.1/src/version.cpp exiv2-0.27.1_fix/src/version.cpp
--- exiv2-0.27.1/src/version.cpp 2019-04-26 11:31:16.000000000 +0200
+++ exiv2-0.27.1_fix/src/version.cpp 2019-06-06 08:55:15.780142862 +0200
@@ -472,8 +472,6 @@
output(os,keys,"debug" , debug );
output(os,keys,"cplusplus" , __cplusplus);
output(os,keys,"version" , __VERSION__);
- output(os,keys,"date" , __DATE__ );
- output(os,keys,"time" , __TIME__ );
output(os,keys,"processpath" , Exiv2::getProcessPath());
Index: exiv2-0.28.0/src/version.cpp
===================================================================
--- exiv2-0.28.0.orig/src/version.cpp
+++ exiv2-0.28.0/src/version.cpp
@@ -422,8 +422,6 @@ void Exiv2::dumpLibraryInfo(std::ostream
output(os, keys, "debug", debug);
output(os, keys, "cplusplus", __cplusplus);
output(os, keys, "version", __VERSION__);
- output(os, keys, "date", __DATE__);
- output(os, keys, "time", __TIME__);
output(os, keys, "processpath", Exiv2::getProcessPath());
#ifdef EXV_ENABLE_NLS
output(os,keys,"localedir" , EXV_LOCALEDIR);
diff -ur exiv2-0.27.1/cmake/Doxyfile.in exiv2-0.27.1_fix/cmake/Doxyfile.in
--- exiv2-0.27.1/cmake/Doxyfile.in 2019-04-26 11:31:16.000000000 +0200
+++ exiv2-0.27.1_fix/cmake/Doxyfile.in 2019-06-06 08:55:15.780142862 +0200
@@ -1202,7 +1202,7 @@
output(os, keys, "localedir", EXV_LOCALEDIR);
Index: exiv2-0.28.0/cmake/Doxyfile.in
===================================================================
--- exiv2-0.28.0.orig/cmake/Doxyfile.in
+++ exiv2-0.28.0/cmake/Doxyfile.in
@@ -1202,7 +1202,7 @@ HTML_COLORSTYLE_GAMMA = 80
# The default value is: NO.
# This tag requires that the tag GENERATE_HTML is set to YES.

Expand Down
23 changes: 23 additions & 0 deletions packages/e/exiv2/exiv2.changes
Original file line number Diff line number Diff line change
@@ -1,3 +1,26 @@
-------------------------------------------------------------------
Fri Jun 30 16:44:33 UTC 2023 - Dirk Müller <dmueller@suse.com>

- add a x86-64-v3 build, remove 32bit build (not used)

-------------------------------------------------------------------
Wed Jun 21 07:48:56 UTC 2023 - Michal Kubecek <mkubecek@suse.cz>

- drop old C++ standard hack (patched line dropped in 0.28)
- use g++-11 for Leap 15 builds (fix for failed std::filesystem
check)

-------------------------------------------------------------------
Mon Jun 19 20:06:02 UTC 2023 - Dirk Müller <dmueller@suse.com>

- update to 0.28.0:
- long list of improvements and security fixes, see
https://github.com/Exiv2/exiv2/issues/2406#issuecomment-1529139799
- drop always-use-signed-char-for-conversion.patch (code no longer exists)
- drop CVE-2022-3953.patch (merged upstream)
- drop xml-static subpackage, cannot be built from shared builds anymore
and appears to be unused

-------------------------------------------------------------------
Tue Jan 24 17:42:24 UTC 2023 - Dirk Müller <dmueller@suse.com>

Expand Down
42 changes: 17 additions & 25 deletions packages/e/exiv2/exiv2.spec
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

%bcond_with docs
Name: exiv2
Version: 0.27.6
Version: 0.28.0
Release: 0
Summary: Tool to access image Exif metadata
License: BSD-3-Clause AND GPL-2.0-or-later
Expand All @@ -27,17 +27,20 @@ URL: https://exiv2.org/
Source0: https://github.com/Exiv2/%{name}/archive/v%{version}/%{name}-%{version}.tar.gz
Source1: baselibs.conf
Patch0: exiv2-build-date.patch
Patch1: CVE-2022-3953.patch
Patch2: always-use-signed-char-for-conversion.patch
BuildRequires: cmake
BuildRequires: fdupes
%if 0%{?suse_version} < 1600
BuildRequires: gcc11-c++
%else
BuildRequires: gcc-c++
%endif
BuildRequires: gettext-devel
BuildRequires: libcurl-devel
BuildRequires: libexpat-devel
BuildRequires: libxslt
BuildRequires: python3-base
#BuildRequires: pkgconfig(libbrotlidec)
BuildRequires: pkgconfig(inih)
BuildRequires: pkgconfig(libbrotlidec)
BuildRequires: pkgconfig(zlib)
Recommends: %{name}-lang = %{version}
%if %{with docs}
Expand All @@ -55,32 +58,25 @@ BuildRequires: gmock
BuildRequires: gtest
BuildRequires: libxml2-tools
BuildRequires: which
%{?suse_build_hwcaps_libs}

%description
Exiv2 is a command line utility to access image metadata from tags like
Exif.

%package -n libexiv2-27
%package -n libexiv2-28
Summary: Library to access image metadata
Group: System/Libraries

%description -n libexiv2-27
%description -n libexiv2-28
libexiv2 is a C++ library with a C compatibility interface to access
image metadata, esp from Exif tags.

%package -n libexiv2-xmp-static
Summary: Library required too link libexiv2
Group: System/Libraries

%description -n libexiv2-xmp-static
libexiv2-xmp is a static library required to link with libexiv2.

%package -n libexiv2-devel
Summary: Development Headers for Exiv2
Group: Development/Libraries/C and C++
Requires: libexiv2-27 = %{version}
Requires: libexiv2-28 = %{version}
# needed by exiv2Config.cmake
Requires: libexiv2-xmp-static
Requires: libexpat-devel
Requires: libstdc++-devel
Requires: pkgconfig(zlib)
Expand All @@ -102,11 +98,11 @@ documentation in HTML format.

%prep
%autosetup -p1
# 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

%build
%if 0%{?suse_version} < 1600
export CXX='g++-11'
%endif
%global _lto_cflags %{_lto_cflags} -ffat-lto-objects
export CXXFLAGS="%{optflags} $(getconf LFS_CFLAGS)"
export CFLAGS="%{optflags} $(getconf LFS_CFLAGS)"
Expand Down Expand Up @@ -181,8 +177,8 @@ done
%find_lang exiv2
%fdupes -s %{buildroot}%{_docdir}/libexiv2

%post -n libexiv2-27 -p /sbin/ldconfig
%postun -n libexiv2-27 -p /sbin/ldconfig
%post -n libexiv2-28 -p /sbin/ldconfig
%postun -n libexiv2-28 -p /sbin/ldconfig

%files lang -f exiv2.lang

Expand All @@ -192,16 +188,12 @@ done
%{_bindir}/exiv2
%{_mandir}/man1/*

%files -n libexiv2-27
%files -n libexiv2-28
%{_libdir}/libexiv2.so.*

%files -n libexiv2-xmp-static
%{_libdir}/libexiv2-xmp.a

%files -n libexiv2-devel
%{_includedir}/exiv2
%{_libdir}/libexiv2.so
# needed by exiv2Config.cmake
%{_libdir}/pkgconfig/exiv2.pc
%dir %{_libdir}/cmake
%dir %{_libdir}/cmake/exiv2
Expand Down

0 comments on commit 5273fd2

Please sign in to comment.