This repository has been archived on 2019-08-07. You can view files and clone it, but cannot push or open issues or pull requests.
copr-dani-qgis/saga/saga.spec

330 lines
11 KiB
RPMSpec

Name: saga
Version: 2.3.1
Release: 5%{?dist}
Summary: Geographic information system with an API for processing geodata
Group: Applications/Engineering
# libsaga_api is licensed under the terms of LGPLv2. So is one single
# module and some of the code to create documentation.
# The rest of the code is GPLv2, GPLv2+ or compatible (ISC, MIT/X11)
License: GPLv2 and LGPLv2
URL: http://www.saga-gis.org
#Source0: https://sourceforge.net/projects/saga-gis/files/SAGA%20-%202.3/SAGA%20%{version}/saga_%{version}_gpl2.tar.gz
Source0: %{name}_%{version}_gpl2.tar.gz
Patch0: %{name}-projections-gcc6.patch
Patch1: %{name}-spelling-errors.patch
BuildRequires: gcc-c++
BuildRequires: libappstream-glib
BuildRequires: desktop-file-utils
BuildRequires: libtool automake autoconf
BuildRequires: e00compr-static
BuildRequires: gdal-devel
BuildRequires: jasper-devel
BuildRequires: libharu-devel
BuildRequires: libsvm-devel
BuildRequires: libtiff-devel
BuildRequires: polyclipping-devel
BuildRequires: proj-devel
BuildRequires: postgresql-devel
BuildRequires: python2-devel
BuildRequires: qhull-devel
BuildRequires: swig
BuildRequires: unixODBC-devel
#BuildRequires: vigra-devel
BuildRequires: wxGTK3-devel
%description
SAGA is a geographic information system (GIS) with a special API
for geographic data processing. This API makes it easy to implement
new algorithms. The SAGA API supports grid data, vector data, and tables.
%package -n python2-saga
%{?python_provide:%python_provide python2-saga}
# Remove before F30
Provides: %{name}-python = %{version}-%{release}
Provides: %{name}-python%{?_isa} = %{version}-%{release}
Obsoletes: %{name}-python < %{version}-%{release}
Summary: SAGA Python interface
Group: Applications/Engineering
Requires: %{name}%{?_isa} = %{version}-%{release}
%description -n python2-saga
Python interface for SAGA
%package devel
Summary: SAGA development package
Group: Applications/Engineering
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
This package includes the headers and development libraries for SAGA.
# We don't want to provide private Python extension libs
# This approach only works with rpm 4.9
# See https://fedoraproject.org/wiki/Packaging:AutoProvidesAndRequiresFiltering#Usage and https://fedorahosted.org/fpc/ticket/76
#TODO: Check if provides are proper
%global __provides_exclude_from ^%{python2_sitearch}/.*\.so$
%global __provides_requires_from ^%{python2_sitearch}/.*\.so$
%prep
%setup -q -n %{name}-%{version}
%patch0 -p1
%patch1 -p1
# Convert to UNIX line-breaks
sed -i 's/\r//' AUTHORS
gzip -c ChangeLog > ChangeLog.gz
%if 0%{?fedora} > 24
# Installation directory has changed
sed -i -e 's,qhull/qhull_a.h,libqhull/qhull_a.h,' \
src/modules/grid/grid_gridding/nn/delaunay.c
%endif
%build
export PYTHON=python
export PYTHON_VERSION=2.7
# wxGTK3 3.0.1-3 moved wx-config to libexecdir
PATH=$PATH:%{_libexecdir}/wxGTK3/
autoreconf -fi
#TODO: openmp?
# Build without non-free components
%configure \
--disable-static \
--enable-python \
--disable-libfire \
--disable-triangle
# Get rid of undesirable hardcoded rpaths; workaround libtool reordering
# -Wl,--as-needed after all the libraries.
sed -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \
-e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' \
-e 's|^LTCC="gcc"|LTCC="gcc -Wl,--as-needed"|' \
-e 's|^CC="g++"|CC="g++ -Wl,--as-needed"|' \
-i libtool
make %{?_smp_mflags}
%install
make install DESTDIR=%{buildroot}
# Drop libtool archives
rm -rf %{buildroot}/%{_libdir}/saga/lib*.la \
%{buildroot}/%{_libdir}/saga/libsaga_*.la
rm -rf %{buildroot}/%{python2_sitearch}/*.la \
%{buildroot}/%{_libdir}/*.la
desktop-file-validate %{buildroot}/%{_datadir}/applications/%{name}.desktop
appstream-util validate-relax --nonet %{buildroot}/%{_datadir}/appdata/%{name}.appdata.xml
%files
%doc AUTHORS COPYING README
%{_bindir}/%{name}_cmd
%{_bindir}/%{name}_gui
%{_libdir}/%{name}/
%{_datadir}/%{name}/
# No soname versioning is yet in place and the interfaces are not stable
%{_libdir}/lib%{name}_api-%{version}.so
%{_libdir}/lib%{name}_gdi-%{version}.so
%{_datadir}/pixmaps/%{name}.png
%{_datadir}/icons/hicolor/*/apps/%{name}.png
%{_datadir}/applications/%{name}.desktop
%{_datadir}/appdata/%{name}.appdata.xml
%{_mandir}/man1/%{name}_*1*
%files -n python2-saga
%{python2_sitearch}/*.py*
%{python2_sitearch}/*.so
%files devel
%{_includedir}/%{name}/
%{_libdir}/lib%{name}_api.so
%{_libdir}/lib%{name}_gdi.so
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%changelog
* Wed Nov 7 2018 Daniele Viganò <daniele@vigano.me> - 2.3.1-5
- Make package compatible with F29
* Fri May 25 2018 Daniele Viganò <daniele@vigano.me> - 2.3.1-4
- Make package compatible with F28
* Thu Jan 18 2018 Daniele Viganò <daniele@vigano.me> - 2.3.1-3
- Add from Debian to address segfaults with shapefiles and newer GCC
- Add a patch from Debian to fix spelling
* Tue Aug 29 2017 Daniele Viganò <daniele@vigano.me> - 2.3.1-2
- Sync with upstream master
- Python 2 binary package renamed to python2-saga
See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3
* Thu Jun 29 2017 Daniele Viganò <daniele@vigano.me> - 2.3.1-1
- Update to SAGA 2.3.1 (with some non-free components disabled)
* Tue Feb 21 2017 Volker Froehlich <volker27@gmx.at> - 2.2.7-3
- Temporarily remove vigra support, due to build failure
* Tue Jan 31 2017 Volker Froehlich <volker27@gmx.at> - 2.2.7-2
- Rebuild for libproj
* Fri Oct 14 2016 Volker Froehlich <volker27@gmx.at> - 2.2.7-1
- New upstream release
- Add new icons to file list
- Add svm patch from Ubuntugis
- Remove references to g2clib
* Thu Oct 13 2016 Volker Froehlich <volker27@gmx.at> - 2.2.4-4
- Rebuild for polyclipping 6.4
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.4-3
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
* Fri Apr 29 2016 Ralf Corsépius <corsepiu@fedoraproject.org> - 2.2.4-2
- Rebuild for qhull-2015.2-1.
- Reflect qhull_a.h's location having changed.
* Sat Mar 12 2016 Volker Froehlich <volker27@gmx.at> - 2.2.4-1
- New upstream release
- Use the new build options to get rid of triangle, libfire and grib2c
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Fri Oct 16 2015 Volker Froehlich <volker27@gmx.at> - 2.2.2-1
- New upstream release
* Fri Sep 25 2015 Volker Froehlich <volker27@gmx.at> - 2.2.1-1
- New upstream release
* Sun Jul 26 2015 Volker Froehlich <volker27@gmx.at> - 2.2.0-2
- Rebuild for GDAL 2.0
* Sat Jul 4 2015 Volker Froehlich <volker27@gmx.at> - 2.2.0-1
- New upstream version
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.1.4-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 2.1.4-4
- Rebuilt for GCC 5 C++11 ABI change
* Thu Mar 26 2015 Orion Poplawski <orion@cora.nwra.com> - 2.1.4-3
- Fix up removing bundled source
* Sat Mar 14 2015 Volker Froehlich <volker27@gmx.at> - 2.1.4-2
- Rebuild for Proj 4.1.9
* Fri Nov 14 2014 Volker Fröhlich <volker27@gmx.at> - 2.1.4-1
- New upstream release
- Update dxflib patch
* Fri Oct 31 2014 Volker Fröhlich <volker27@gmx.at> - 2.1.3-1
- New upstream release
- Remove ChangeLog, as it is not updated, ship README instead
- Add and validate appdata file
- Remove format patch (solved upstream)
* Wed Oct 22 2014 Volker Froehlich <volker27@gmx.at> - 2.1.2-5
- Rebuild for polyclipping 6.2.0
* Tue Oct 14 2014 Volker Fröhlich <volker27@gmx.at> - 2.1.2-4
- Adapt package to new file layout in wxGTK3 3.0.1-3 (F22)
* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.1.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.1.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Thu May 15 2014 Volker Fröhlich <volker27@gmx.at> - 2.1.2-1
- New upstream release
* Thu Feb 13 2014 Volker Fröhlich <volker27@gmx.at> - 2.1.1-1
- New upstream release
- Compress changelog file
- Adjust to using wxGTK3, thus drop propgrid dependency as it is included
- Drop outdated build options
- Adapt to polyclipping 6.1 API
- Add BR for postgresql-devel
- Drop custom desktop file and use png icon
- Remove odbc headers from devel package, as discussed with Volker Wichmann
- Add complementary requires-filtering
* Sat Jan 18 2014 Volker Fröhlich <volker27@gmx.at> - 2.0.8-14
- Use safe printing format, solve BZ #1037315 and upstream bug #163
- Add patch for vigra 1.10.0 (upstream bug #173)
* Tue Aug 27 2013 Orion Poplawski <orion@cora.nwra.com> - 2.0.8-13
- Rebuild for gdal 1.10.0
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.0.8-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Mon Jun 24 2013 Volker Fröhlich <volker27@gmx.at> - 2.0.8-11
- Rebuild for polyclipping 5.1.6
* Mon Mar 4 2013 Volker Fröhlich <volker27@gmx.at> - 2.0.8-10
- Rebuild for polyclipping 5.1.2
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.0.8-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Tue Jan 8 2013 Volker Fröhlich <volker27@gmx.at> - 2.0.8-8
- Rebuild for polyclipping
* Wed Dec 26 2012 Volker Fröhlich <volker27@gmx.at> - 2.0.8-7
- Rebuild for polyclipping
* Fri Nov 23 2012 Volker Fröhlich <volker27@gmx.at> - 2.0.8-6
- Rebuild for polyclipping
* Fri Oct 19 2012 Volker Fröhlich <volker27@gmx.at> - 2.0.8-5
- Correct isa macros
- No later versions of GPL and LGPL are allowed
- Break down licenses
- Solve the rpath issue differently
- Rename patches and change numbering
* Tue Oct 9 2012 Volker Fröhlich <volker27@gmx.at> - 2.0.8-4
- Remove draft patch breaking the build
* Sun Oct 7 2012 Volker Fröhlich <volker27@gmx.at> - 2.0.8-3
- Replace provides-filtering with a suitable method
- Replace dos2unix invocation with sed
* Thu Apr 12 2012 Volker Fröhlich <volker27@gmx.at> - 2.0.8-2
- Build with system-wide wxpropgrid and polyclipping
- Correct Exec entry in the desktop file
- Update patch for e00compr
* Thu Nov 24 2011 Volker Fröhlich <volker27@gmx.at> - 2.0.8-1
- Updated for new version
- Drop obsolete patches gcc46 and python-parallel
- Correct tarball script
- Update and correct linking in g2clib patch
* Sun Oct 30 2011 Volker Fröhlich <volker27@gmx.at> - 2.0.7-3
- Delete dxflib from tarball
- Split patches for dxflib and e00compr
- Use bundled wxpropgrid for the time being
- Use system-wide e00compr
* Fri Oct 07 2011 Volker Fröhlich <volker27@gmx.at> - 2.0.7-2
- Correct g2clib patch to actually use g2clib
- Only link to libraries actually used
- Fix configure.in to really search for lodbc
- Require g2clib-static instead of -devel
* Fri Sep 09 2011 Volker Fröhlich <volker27@gmx.at> - 2.0.7-1
- Initital package