diff --git a/.gitignore b/.gitignore index 3151e2c..eb4c03f 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,5 @@ shapelib-1.3.0b2.tar.gz /shapelib-1.5.0.tar.gz /shapelib-1.6.0.tar.gz /shapelib-1.6.1.tar.gz +/shapelib-1.6.2.tar.gz +/shapelib-1.6.3.tar.gz diff --git a/shapelib.spec b/shapelib.spec index 5236e15..2f183d3 100644 --- a/shapelib.spec +++ b/shapelib.spec @@ -7,8 +7,8 @@ %endif Name: shapelib -Version: 1.6.1 -Release: 1%{?dist} +Version: 1.6.3 +Release: 2%{?dist} Summary: C library for handling ESRI Shapefiles # The core library is dual-licensed LGPLv2 or MIT. # Some contributed files have different licenses: @@ -24,21 +24,22 @@ Source0: http://download.osgeo.org/shapelib/%{name}-%{version}%{?pre:%pre} # tar -czf shapelib-man.tar.gz man/ # rm -r man Source1: %{name}-man.tar.gz +# Add library version suffix for mingw dlls +Patch1: shapelib_libver.patch -BuildRequires: automake autoconf libtool +BuildRequires: cmake BuildRequires: gcc-c++ -BuildRequires: make BuildRequires: proj-devel >= 4.4.1 # For man pages BuildRequires: rubygem-ronn %if %{with mingw} -BuildRequires: mingw32-filesystem >= 95 +BuildRequires: mingw32-filesystem BuildRequires: mingw32-gcc-c++ BuildRequires: mingw32-binutils BuildRequires: mingw32-proj -BuildRequires: mingw64-filesystem >= 95 +BuildRequires: mingw64-filesystem BuildRequires: mingw64-gcc-c++ BuildRequires: mingw64-binutils BuildRequires: mingw64-proj @@ -72,20 +73,13 @@ This package contains various utility programs distributed with shapelib. %package -n mingw32-%{name} Summary: MinGW Windows %{name} library BuildArch: noarch +Obsoletes: mingw32-%{name}-static < 1.6.2-1 +Provides: mingw32-%{name}-static = %{version}-%{release} %description -n mingw32-%{name} %{summary}. -%package -n mingw32-%{name}-static -Summary: Static version of the MinGW Windows %{name} library -Requires: mingw32-%{name} = %{version}-%{release} -BuildArch: noarch - -%description -n mingw32-%{name}-static -%{summary}. - - %package -n mingw32-%{name}-tools Summary: Tools for the MinGW Windows %{name} library Requires: mingw32-%{name} = %{version}-%{release} @@ -98,20 +92,13 @@ BuildArch: noarch %package -n mingw64-%{name} Summary: MinGW Windows %{name} library BuildArch: noarch +Obsoletes: mingw64-%{name}-static < 1.6.2-1 +Provides: mingw64-%{name}-static = %{version}-%{release} %description -n mingw64-%{name} %{summary}. -%package -n mingw64-%{name}-static -Summary: Static version of the MinGW Windows %{name} library -Requires: mingw64-%{name} = %{version}-%{release} -BuildArch: noarch - -%description -n mingw64-%{name}-static -%{summary}. - - %package -n mingw64-%{name}-tools Summary: Tools for the MinGW Windows %{name} library Requires: mingw64-%{name} = %{version}-%{release} @@ -130,33 +117,25 @@ BuildArch: noarch %build -# Kill rpath -autoreconf -ifv - # Native build -mkdir build_native -pushd build_native -%define _configure ../configure -%configure --disable-static -%make_build -popd +%cmake -DBUILD_TESTING=OFF -DUSE_RPATH=OFF -DCMAKE_INSTALL_LIBDIR=%{_libdir} -DCMAKE_INSTALL_CMAKEDIR=%{_libdir}/cmake/%{name} +%cmake_build %if %{with mingw} # MinGW build -%mingw_configure +MINGW32_CMAKE_ARGS="-DCMAKE_INSTALL_CMAKEDIR=%{mingw32_libdir}/cmake/%{name}" \ +MINGW64_CMAKE_ARGS="-DCMAKE_INSTALL_CMAKEDIR=%{mingw64_libdir}/cmake/%{name}" \ +%mingw_cmake -DBUILD_TESTING=OFF %mingw_make_build %endif %install -%make_install -C build_native +%cmake_install %if %{with mingw} %mingw_make_install %endif -# Remove static libraries -find %{buildroot} -name '*.la' -exec rm -f {} ';' - # Build man pages ronn -r --date="$(LC_ALL=C date -u "+%Y-%m-%d")" --manual=%{name} man/*.md mkdir -p %{buildroot}%{_mandir}/man1/ @@ -169,12 +148,14 @@ install -pm 0644 man/*.1 %{buildroot}%{_mandir}/man1/ %files %doc README README.tree ChangeLog web/*.html %license LICENSE* +%{_libdir}/libshp.so.%{version} %{_libdir}/libshp.so.4* %files devel %{_includedir}/shapefil.h %{_libdir}/libshp.so %{_libdir}/pkgconfig/%{name}.pc +%{_libdir}/cmake/%{name}/ %files tools %doc contrib/doc/ @@ -188,9 +169,7 @@ install -pm 0644 man/*.1 %{buildroot}%{_mandir}/man1/ %{mingw32_includedir}/shapefil.h %{mingw32_libdir}/libshp.dll.a %{mingw32_libdir}/pkgconfig/shapelib.pc - -%files -n mingw32-%{name}-static -%{mingw32_libdir}/libshp.a +%{mingw32_libdir}/cmake/%{name}/ %files -n mingw32-%{name}-tools %{mingw32_bindir}/*.exe @@ -201,9 +180,7 @@ install -pm 0644 man/*.1 %{buildroot}%{_mandir}/man1/ %{mingw64_includedir}/shapefil.h %{mingw64_libdir}/libshp.dll.a %{mingw64_libdir}/pkgconfig/shapelib.pc - -%files -n mingw64-%{name}-static -%{mingw64_libdir}/libshp.a +%{mingw64_libdir}/cmake/%{name}/ %files -n mingw64-%{name}-tools %{mingw64_bindir}/*.exe @@ -211,6 +188,24 @@ install -pm 0644 man/*.1 %{buildroot}%{_mandir}/man1/ %changelog +* Fri Jul 17 2026 Fedora Release Engineering - 1.6.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild + +* Thu Mar 19 2026 Sandro Mani - 1.6.3-1 +- Update to 1.6.3 + +* Sat Jan 17 2026 Fedora Release Engineering - 1.6.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Tue Sep 23 2025 Sandro Mani - 1.6.2-1 +- Update to 1.6.2 + +* Fri Jul 25 2025 Fedora Release Engineering - 1.6.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Sun Jan 19 2025 Fedora Release Engineering - 1.6.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Wed Aug 14 2024 Sandro Mani - 1.6.1-1 - Update to 1.6.1 diff --git a/shapelib_libver.patch b/shapelib_libver.patch new file mode 100644 index 0000000..f8ba064 --- /dev/null +++ b/shapelib_libver.patch @@ -0,0 +1,13 @@ +diff -rupN --no-dereference shapelib-1.6.3/CMakeLists.txt shapelib-1.6.3-new/CMakeLists.txt +--- shapelib-1.6.3/CMakeLists.txt 2026-03-18 17:27:15.000000000 +0100 ++++ shapelib-1.6.3-new/CMakeLists.txt 2026-03-19 14:28:33.599270296 +0100 +@@ -176,6 +176,9 @@ set_target_properties(${PACKAGE} PROPERT + SOVERSION ${shp_SOVERSION} + VERSION ${shp_VERSION} + ) ++if(MINGW) ++ set_target_properties(${PACKAGE} PROPERTIES SUFFIX "-${shp_SOVERSION}${CMAKE_SHARED_LIBRARY_SUFFIX}") ++endif(MINGW) + + if(USE_RPATH) + set_target_properties(${PACKAGE} PROPERTIES diff --git a/sources b/sources index 197fcc9..412e1b9 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (shapelib-1.6.1.tar.gz) = 66823f67e7c46017b16683a28d5c5783a799756d220c8ed1aa6dd7f971b41ca73dfd8c5674f214a0a35339f885b095e12b2ac52263968a6247b6895d43136e3f +SHA512 (shapelib-1.6.3.tar.gz) = 9cb5625f6b94ca2f48c222b5adaee0d9955b70f621c51bc54a47e922e9b6ac547bc3efaf67df56ecb3829d9313d57c85afa46cf00a7e03f779c694407e371943 SHA512 (shapelib-man.tar.gz) = 0625355e51005b032c2ea441d888868fa13bcdee862d9c5bae5aa26cb98e40e7eeb414f52dc63d433692dbe3873d037740e8bf650a30e6e4d56b216d48bda6da