diff --git a/.gitignore b/.gitignore index eb4c03f..3151e2c 100644 --- a/.gitignore +++ b/.gitignore @@ -7,5 +7,3 @@ 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 2f183d3..5236e15 100644 --- a/shapelib.spec +++ b/shapelib.spec @@ -7,8 +7,8 @@ %endif Name: shapelib -Version: 1.6.3 -Release: 2%{?dist} +Version: 1.6.1 +Release: 1%{?dist} Summary: C library for handling ESRI Shapefiles # The core library is dual-licensed LGPLv2 or MIT. # Some contributed files have different licenses: @@ -24,22 +24,21 @@ 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: cmake +BuildRequires: automake autoconf libtool BuildRequires: gcc-c++ +BuildRequires: make BuildRequires: proj-devel >= 4.4.1 # For man pages BuildRequires: rubygem-ronn %if %{with mingw} -BuildRequires: mingw32-filesystem +BuildRequires: mingw32-filesystem >= 95 BuildRequires: mingw32-gcc-c++ BuildRequires: mingw32-binutils BuildRequires: mingw32-proj -BuildRequires: mingw64-filesystem +BuildRequires: mingw64-filesystem >= 95 BuildRequires: mingw64-gcc-c++ BuildRequires: mingw64-binutils BuildRequires: mingw64-proj @@ -73,13 +72,20 @@ 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} @@ -92,13 +98,20 @@ 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} @@ -117,25 +130,33 @@ BuildArch: noarch %build +# Kill rpath +autoreconf -ifv + # Native build -%cmake -DBUILD_TESTING=OFF -DUSE_RPATH=OFF -DCMAKE_INSTALL_LIBDIR=%{_libdir} -DCMAKE_INSTALL_CMAKEDIR=%{_libdir}/cmake/%{name} -%cmake_build +mkdir build_native +pushd build_native +%define _configure ../configure +%configure --disable-static +%make_build +popd %if %{with mingw} # MinGW build -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_configure %mingw_make_build %endif %install -%cmake_install +%make_install -C build_native %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/ @@ -148,14 +169,12 @@ 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/ @@ -169,7 +188,9 @@ install -pm 0644 man/*.1 %{buildroot}%{_mandir}/man1/ %{mingw32_includedir}/shapefil.h %{mingw32_libdir}/libshp.dll.a %{mingw32_libdir}/pkgconfig/shapelib.pc -%{mingw32_libdir}/cmake/%{name}/ + +%files -n mingw32-%{name}-static +%{mingw32_libdir}/libshp.a %files -n mingw32-%{name}-tools %{mingw32_bindir}/*.exe @@ -180,7 +201,9 @@ install -pm 0644 man/*.1 %{buildroot}%{_mandir}/man1/ %{mingw64_includedir}/shapefil.h %{mingw64_libdir}/libshp.dll.a %{mingw64_libdir}/pkgconfig/shapelib.pc -%{mingw64_libdir}/cmake/%{name}/ + +%files -n mingw64-%{name}-static +%{mingw64_libdir}/libshp.a %files -n mingw64-%{name}-tools %{mingw64_bindir}/*.exe @@ -188,24 +211,6 @@ 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 deleted file mode 100644 index f8ba064..0000000 --- a/shapelib_libver.patch +++ /dev/null @@ -1,13 +0,0 @@ -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 412e1b9..197fcc9 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (shapelib-1.6.3.tar.gz) = 9cb5625f6b94ca2f48c222b5adaee0d9955b70f621c51bc54a47e922e9b6ac547bc3efaf67df56ecb3829d9313d57c85afa46cf00a7e03f779c694407e371943 +SHA512 (shapelib-1.6.1.tar.gz) = 66823f67e7c46017b16683a28d5c5783a799756d220c8ed1aa6dd7f971b41ca73dfd8c5674f214a0a35339f885b095e12b2ac52263968a6247b6895d43136e3f SHA512 (shapelib-man.tar.gz) = 0625355e51005b032c2ea441d888868fa13bcdee862d9c5bae5aa26cb98e40e7eeb414f52dc63d433692dbe3873d037740e8bf650a30e6e4d56b216d48bda6da