1 |
%define grass grass83 |
2 |
|
3 |
%global _smp_build_ncpus 12 |
4 |
|
5 |
%global __requires_exclude .*libgrass_.* |
6 |
|
7 |
# filter out devel requires from private modules/plugins/whatever |
8 |
%global __devel_exclude_path %{_libdir}/qgis/.*\\.so |
9 |
|
10 |
# exclude private modules/plugins/whatever from .so provides |
11 |
%global __provides_exclude_from %{_libdir}/qgis/.*\\.so |
12 |
|
13 |
%define fver 3_34_4 |
14 |
|
15 |
Name: qgis |
16 |
Version: 3.34.4 |
17 |
Release: %mkrel 2 |
18 |
Summary: Geographic Information System for Linux/Unix |
19 |
License: GPLv2+ |
20 |
Group: Sciences/Geosciences |
21 |
URL: https://qgis.org/en/site/ |
22 |
Source0: https://github.com/qgis/QGIS/archive/refs/tags/final-%{fver}.tar.gz |
23 |
Source1: %{name}-mime.xml |
24 |
Patch0: qgis-3.22.6-set-sip-binary-path.patch |
25 |
|
26 |
ExcludeArch: %{arm} |
27 |
|
28 |
BuildRequires: cmake |
29 |
BuildRequires: ninja |
30 |
BuildRequires: grass >= 8.2.0 |
31 |
BuildRequires: imagemagick |
32 |
BuildRequires: flex |
33 |
BuildRequires: bison |
34 |
BuildRequires: plocate |
35 |
BuildRequires: postgis |
36 |
BuildRequires: dos2unix |
37 |
BuildRequires: txt2tags |
38 |
BuildRequires: qscintilla-qt5-devel |
39 |
BuildRequires: spatialindex-devel |
40 |
BuildRequires: postgresql-devel |
41 |
BuildRequires: geos-devel |
42 |
BuildRequires: pkgconfig(cfitsio) |
43 |
BuildRequires: libfcgi-devel |
44 |
BuildRequires: cmake(Qt5Keychain) |
45 |
BuildRequires: pkgconfig(draco) |
46 |
BuildRequires: pkgconfig(gdal) >= 2.1 |
47 |
BuildRequires: pkgconfig(pdal) |
48 |
BuildRequires: pkgconfig(libzip) |
49 |
BuildRequires: pkgconfig(exiv2) |
50 |
BuildRequires: pkgconfig(expat) |
51 |
BuildRequires: pkgconfig(gsl) |
52 |
BuildRequires: pkgconfig(netcdf) |
53 |
BuildRequires: pkgconfig(OpenCL) |
54 |
BuildRequires: pkgconfig(proj) |
55 |
BuildRequires: pkgconfig(protobuf) |
56 |
BuildRequires: pkgconfig(Qt5Qwt6) |
57 |
BuildRequires: pkgconfig(Qt53DCore) |
58 |
BuildRequires: pkgconfig(Qt5Concurrent) |
59 |
BuildRequires: pkgconfig(Qt5Core) |
60 |
BuildRequires: pkgconfig(Qt5Gui) |
61 |
BuildRequires: pkgconfig(Qt5Help) |
62 |
BuildRequires: pkgconfig(Qt5Multimedia) |
63 |
BuildRequires: pkgconfig(Qt5MultimediaWidgets) |
64 |
BuildRequires: pkgconfig(Qt5Network) |
65 |
BuildRequires: pkgconfig(Qt5QuickWidgets) |
66 |
BuildRequires: pkgconfig(Qt5SerialPort) |
67 |
BuildRequires: pkgconfig(Qt5Svg) |
68 |
BuildRequires: pkgconfig(Qt5Test) |
69 |
BuildRequires: pkgconfig(Qt5UiTools) |
70 |
BuildRequires: pkgconfig(Qt5WebEngineWidgets) |
71 |
BuildRequires: pkgconfig(Qt5Widgets) |
72 |
BuildRequires: pkgconfig(Qt5Xml) |
73 |
BuildRequires: pkgconfig(Qt5XmlPatterns) |
74 |
BuildRequires: pkgconfig(spatialite) |
75 |
BuildRequires: pkgconfig(qca2-qt5) |
76 |
BuildRequires: pkgconfig(python3) |
77 |
BuildRequires: python3-biopython-sql |
78 |
BuildRequires: python3-qt5-qscintilla |
79 |
BuildRequires: python3-qt5-devel |
80 |
BuildRequires: python3dist(gdal) |
81 |
BuildRequires: python3dist(six) |
82 |
BuildRequires: python3dist(sip) >= 6.7.2 |
83 |
BuildRequires: python3dist(pyqt-builder) |
84 |
BuildRequires: qca-qt5 |
85 |
|
86 |
Requires: python3-biopython-sql |
87 |
Requires: postgis |
88 |
Requires: gdal |
89 |
Requires: gpsbabel |
90 |
Requires: python3-qgis |
91 |
Requires: python3dist(gdal) |
92 |
Requires: qca-qt5 |
93 |
|
94 |
%description |
95 |
Geographic Information System (GIS) manages, analyzes, and displays |
96 |
databases of geographic information. Quantum GIS (QGIS) supports shape file |
97 |
viewing and editing, spatial data storage with PostgreSQL/PostGIS, projection |
98 |
on-the-fly, map composition, and a number of other features via a plugin |
99 |
interface. QGIS also supports display of various geo-referenced raster and |
100 |
Digital Elevation Model (DEM) formats including GeoTIFF, Arc/Info ASCII Grid, |
101 |
and USGS ASCII DEM. |
102 |
|
103 |
%files |
104 |
%doc BUGS ChangeLog README.md |
105 |
%{_bindir}/%{name} |
106 |
%{_bindir}/%{name}_process |
107 |
%{_libdir}/lib%{name}_*.so.* |
108 |
%{_libdir}/%{name}/ |
109 |
%{_qt5_plugindir}/designer/libqgis_customwidgets.so.* |
110 |
%{_datadir}/%{name}/ |
111 |
%{_datadir}/applications/*.desktop |
112 |
%{_datadir}/metainfo/*.xml |
113 |
%{_iconsdir}/hicolor/*/apps/* |
114 |
%{_iconsdir}/hicolor/*/mimetypes/* |
115 |
%{_datadir}/mime/packages/%{name}.xml |
116 |
%{_mandir}/man1/*.1* |
117 |
%exclude %{_libdir}/%{name}/libplugin_grass8.so |
118 |
%exclude %{_libdir}/%{name}/libprovider_grass8.so |
119 |
%exclude %{_libdir}/%{name}/libprovider_grassraster8.so |
120 |
%exclude %{_libdir}/%{name}/grass |
121 |
%exclude %{_datadir}/%{name}/python |
122 |
%exclude %{_datadir}/%{name}/grass |
123 |
%exclude %{_datadir}/%{name}/FindQGIS.cmake |
124 |
|
125 |
#--------------------------------------------------------- |
126 |
|
127 |
%package devel |
128 |
Summary: Development libraries and headers for QGIS |
129 |
Group: Sciences/Geosciences |
130 |
Requires: %{name} = %version |
131 |
Requires: %{name}-grass = %version |
132 |
Requires: python3-%{name} = %version |
133 |
|
134 |
%description devel |
135 |
Development headers for QGIS. |
136 |
|
137 |
%files devel |
138 |
%{_includedir}/%{name}/ |
139 |
%{_libdir}/lib%{name}_*.so |
140 |
%{_libdir}/libqgisgrass*.so |
141 |
%{_libdir}/libqgispython.so |
142 |
%{_datadir}/%{name}/FindQGIS.cmake |
143 |
%{_qt5_plugindir}/designer/libqgis_customwidgets.so |
144 |
|
145 |
#--------------------------------------------------------- |
146 |
|
147 |
%package grass |
148 |
Summary: QGIS plugins for accessing GRASS data |
149 |
Group: Sciences/Geosciences |
150 |
Requires: grass >= 8 |
151 |
|
152 |
%description grass |
153 |
This package provides plugins for QGIS that provide access to GRASS data from |
154 |
within QGIS. |
155 |
|
156 |
%files grass |
157 |
%{_libdir}/libqgisgrass*.so.* |
158 |
%{_libdir}/%{name}/libplugin_grass8.so |
159 |
%{_libdir}/%{name}/libprovider_grass8.so |
160 |
%{_libdir}/%{name}/libprovider_grassraster8.so |
161 |
%{_libdir}/%{name}/grass/ |
162 |
%{_datadir}/%{name}/grass/ |
163 |
|
164 |
#--------------------------------------------------------- |
165 |
|
166 |
%package -n python3-qgis |
167 |
Summary: Python 3 integration and plugins for qgis |
168 |
Group: Sciences/Geosciences |
169 |
Requires: %{name} = %{version}-%{release} |
170 |
Requires: python3dist(sip) >= 6.6.2 |
171 |
Requires: python3-qt5 |
172 |
Requires: python3dist(httplib2) |
173 |
Requires: python3dist(jinja2) |
174 |
Requires: python3dist(matplotlib) |
175 |
Requires: python3-qt5-qscintilla |
176 |
Requires: python3dist(future) |
177 |
Requires: python3dist(gdal) |
178 |
Requires: python3dist(six) |
179 |
Requires: python3dist(python-dateutil) |
180 |
Requires: python3dist(markupsafe) |
181 |
Requires: python3dist(numpy) |
182 |
Requires: python3dist(owslib) |
183 |
Requires: python3dist(pygments) |
184 |
Requires: python3dist(pytz) |
185 |
Requires: python3dist(pyyaml) |
186 |
Requires: python3dist(psycopg2) |
187 |
Requires: python3dist(termcolor) |
188 |
|
189 |
Provides: python-qgis = %{version}-%{release} |
190 |
|
191 |
%description -n python3-qgis |
192 |
Python 3 integration and plugins for qgis. |
193 |
|
194 |
%files -n python3-qgis |
195 |
%{_libdir}/libqgispython.so.* |
196 |
%{_datadir}/%{name}/python/ |
197 |
%{python3_sitearch}/%{name}/ |
198 |
%{python3_sitearch}/PyQt5/uic/widget-plugins/ |
199 |
%dir %{python3_sitearch}/PyQt5/uic |
200 |
|
201 |
#--------------------------------------------------------- |
202 |
|
203 |
%prep |
204 |
%autosetup -p1 -n QGIS-final-%{fver} |
205 |
|
206 |
%build |
207 |
%cmake_qt5 \ |
208 |
-DQGIS_LIB_SUBDIR=%{_lib} \ |
209 |
-DQGIS_MANUAL_SUBDIR=/share/man \ |
210 |
-DQGIS_PLUGIN_SUBDIR=%{_lib}/qgis \ |
211 |
-DQGIS_CGIBIN_SUBDIR=%{_lib}/qgis \ |
212 |
-DSIP_BINARY_PATH=%{_bindir}/sip-build \ |
213 |
-DQSCI_SIP_DIR=%{python3_sitearch}/PyQt5 \ |
214 |
-DQWT_INCLUDE_DIR=%{_qt5_includedir}/qwt \ |
215 |
-DGRASS_PREFIX8=%{_libdir}/%{grass} \ |
216 |
-DCMAKE_SKIP_RPATH=OFF \ |
217 |
-DWITH_QTWEBKIT=OFF \ |
218 |
-DWITH_BINDINGS=ON \ |
219 |
-DBINDINGS_GLOBAL_INSTALL=ON \ |
220 |
-DWITH_3D=ON \ |
221 |
-DWITH_CUSTOM_WIDGETS=ON \ |
222 |
-DUSE_OPENCL=ON \ |
223 |
-DENABLE_TESTS=OFF |
224 |
%cmake_build |
225 |
|
226 |
%install |
227 |
%cmake_install |
228 |
|
229 |
desktop-file-install \ |
230 |
--remove-mime-type="application/x-raster-ecw" \ |
231 |
--remove-mime-type="application/x-raster-mrsid" \ |
232 |
--dir=%{buildroot}%{_datadir}/applications \ |
233 |
%{buildroot}%{_datadir}/applications/org.qgis.qgis.desktop |
234 |
|
235 |
# Install MIME type definitions |
236 |
install -d %{buildroot}%{_datadir}/mime/packages |
237 |
install -pm0644 %{SOURCE1} \ |
238 |
%{buildroot}%{_datadir}/mime/packages/%{name}.xml |
239 |
|
240 |
# Remove install instructions |
241 |
rm -f %{buildroot}%{_datadir}/%{name}/doc/INSTALL* |