diff --git a/.gitignore b/.gitignore index d653d5f..f9c0b13 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /zipper-20170831giteee877ac7419eb08ecafd110d9187bc10bea483a.tar.gz /zipper-1.0.1.tar.gz +/zipper-1.0.3.tar.gz diff --git a/sources b/sources index 8b82167..4900d86 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (zipper-1.0.1.tar.gz) = 1ec4883bd5052bae31c4ce055a07fed0c142cbc41e5ce2807a924883e2694750d31dbea0f0a5560cf723afa1c95ce162277072fa66e041699d7f00759b7f69b3 +SHA512 (zipper-1.0.3.tar.gz) = 27a04317a5707bd144965218aec190d110b8961e26da1895cb98c81ad3d2956f56fd13a6c5e020260b0e74ccd18b581b14fc5af15e0d8033d105ed2479ff15fe diff --git a/zipper-gcc14.patch b/zipper-gcc14.patch new file mode 100644 index 0000000..0029c56 --- /dev/null +++ b/zipper-gcc14.patch @@ -0,0 +1,31 @@ +--- a/minizip/ioapi_buf.orig.c 2021-05-14 12:57:50.000000000 +0200 ++++ b/minizip/ioapi_buf.c 2024-03-17 21:21:15.921141751 +0100 +@@ -10,6 +10,12 @@ + See the accompanying LICENSE file for the full text of the license. + */ + ++#if defined __GNUC__ && __GNUC__ >= 14 ++#pragma GCC diagnostic warning "-Wimplicit-function-declaration" ++#pragma GCC diagnostic warning "-Wincompatible-pointer-types" ++#pragma GCC diagnostic warning "-Wint-conversion" ++#pragma GCC diagnostic warning "-Wreturn-mismatch" ++#endif + + #include + #include +--- a/minizip/unzip.orig.c 2021-05-14 12:57:50.000000000 +0200 ++++ b/minizip/unzip.c 2024-03-17 21:35:00.081438969 +0100 +@@ -21,6 +21,13 @@ + access functions to crctables and pkeys + */ + ++#if defined __GNUC__ && __GNUC__ >= 14 ++#pragma GCC diagnostic warning "-Wimplicit-function-declaration" ++#pragma GCC diagnostic warning "-Wincompatible-pointer-types" ++#pragma GCC diagnostic warning "-Wint-conversion" ++#pragma GCC diagnostic warning "-Wreturn-mismatch" ++#endif ++ + #include + #include + #include diff --git a/zipper.spec b/zipper.spec index 2364066..4db6a1e 100644 --- a/zipper.spec +++ b/zipper.spec @@ -1,26 +1,27 @@ -%undefine __cmake_in_source_build - Name: zipper Summary: C++ wrapper around minizip compression library -Version: 1.0.1 -Release: 4%{?dist} +Version: 1.0.3 +Release: 14%{?dist} URL: https://github.com/sebastiandev/zipper ## Source archive from github obtained by -## git clone --recursive https://github.com/sebastiandev/zipper.git -## git checkout e9f150516cb55d194b5e01d21a9527783e98311d (release 1.0.1) +## git clone -b v1.0.3 --depth 1 --single-branch --progress --recursive https://github.com/sebastiandev/zipper.git ## rm -rf zipper/.git* -## tar -czvf zipper-1.0.1.tar.gz zipper +## tar -czvf zipper-1.0.3.tar.gz zipper Source0: https://github.com/sebastiandev/zipper/archive/zipper/%{name}-%{version}.tar.gz -# zlib and GPL+ (no version) licenses come from minizip/ source code -License: MIT and zlib and GPL+ +#Patch0: zipper-unbundle_minizip.patch +Patch1: zipper-gcc14.patch -BuildRequires: make -BuildRequires: cmake -BuildRequires: gcc-c++ -BuildRequires: zlib-devel -Provides: bundled(minizip) = 1.2.8 +# zlib and GPL+ (no version) licenses come from minizip/ source code +License: MIT AND ZLIB AND GPL-1.0-or-later + +BuildRequires: make +BuildRequires: cmake +BuildRequires: gcc-c++ +BuildRequires: pkgconfig(zlib) +#BuildRequires: minizip-compat-devel +Provides: bundled(minizip) = 1.1 %description Zipper brings the power and simplicity of minizip to a more @@ -55,44 +56,89 @@ Requires: %{name}-devel%{?_isa} = %{version}-%{release} This package provides static library file of %{name}. %prep -%autosetup -n zipper - -# Fix library destination -sed -e 's|DESTINATION lib|DESTINATION %{_lib}|g' -i CMakeLists.txt - -# Fix permissions -find ./minizip/ -name '*.c' -exec chmod 0644 '{}' \; +%autosetup -n %{name} -p1 %build -export CXXFLAGS="%{optflags}" +# TODO: remove CMAKE_POLICY_VERSION_MINIMUM if the new upstream source is used +export CMAKE_POLICY_VERSION_MINIMUM=3.5 %cmake -Wno-cpp -Wno-dev \ -DCMAKE_INSTALL_PREFIX:PATH=%{_prefix} -DBUILD_SHARED_VERSION:BOOL=ON -DBUILD_STATIC_VERSION:BOOL=ON \ -DCMAKE_VERBOSE_MAKEFILE:BOOL=TRUE -DCMAKE_COLOR_MAKEFILE:BOOL=ON \ - -DCMAKE_SKIP_INSTALL_RPATH:BOOL=YES -DCMAKE_SKIP_RPATH:BOOL=YES + -DCMAKE_SKIP_INSTALL_RPATH:BOOL=YES -DCMAKE_SKIP_RPATH:BOOL=YES \ + -DINSTALL_PKGCONFIG_DIR:PATH=%{_libdir}/pkgconfig \ + -DZLIB_INCLUDE_DIR:PATH=%{_includedir} -DZLIB_LIBRARY_RELEASE:FILEPATH=%{_libdir}/libz.so \ +%if "%{?_lib}" == "lib64" + %{?_cmake_lib_suffix64} +%endif %cmake_build %install -export LIBDIR=%{_libdir} %cmake_install -%ldconfig_scriptlets +rm -f %{buildroot}%{_bindir}/Zipper-test %check -make test +%ctest %files %doc README.md VERSION.txt %license LICENSE.md -%{_libdir}/*.so.* +%{_libdir}/*.so.1 +%{_libdir}/*.so.1.0.2 %files devel %{_libdir}/*.so %{_includedir}/zipper/ +%{_libdir}/pkgconfig/*.pc +%{_libdir}/cmake/*.cmake %files static -%{_libdir}/*-static.a +%{_libdir}/libZipper.a +%{_libdir}/libZipper-static.a %changelog +* Fri Jul 17 2026 Fedora Release Engineering - 1.0.3-14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild + +* Sat Jan 17 2026 Fedora Release Engineering - 1.0.3-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Wed Jul 30 2025 Cristian Le - 1.0.3-12 +- Add temporary fix for CMake 4.0 (rhbz#2381650) + +* Fri Jul 25 2025 Antonio Trande - 1.0.3-11 +- Fix rhbz#2381650 rhbz#2381687 + +* Sun Jan 19 2025 Fedora Release Engineering - 1.0.3-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Sat Jul 20 2024 Fedora Release Engineering - 1.0.3-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Sun Mar 17 2024 Antonio Trande - 1.0.3-8 +- Patched for GCC-14 + +* Sat Jan 27 2024 Fedora Release Engineering - 1.0.3-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sat Jul 22 2023 Fedora Release Engineering - 1.0.3-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Sat Jan 21 2023 Fedora Release Engineering - 1.0.3-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Sat Jul 23 2022 Fedora Release Engineering - 1.0.3-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Sat Jan 22 2022 Fedora Release Engineering - 1.0.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Fri Jul 23 2021 Fedora Release Engineering - 1.0.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Fri May 14 2021 Antonio Trande - 1.0.3-1 +- Release 1.0.3 + * Thu Jan 28 2021 Fedora Release Engineering - 1.0.1-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild