2 # - be reasonable about devel dependencies - you do not need all of them to
3 # use gdal (probably a gdal module or driver shall not imply devel
5 # - MongoCXX (mongo/client/dbclient.h, -lmongoclient -lboost_system -lboost_thread -lboost_regex)
8 # - libjpeg12 (needs patching to use system one, --with-jpeg12 is not sufficient as of 1.9.2)
9 # - libkml (1.3.0 needed, not released yet)
10 # - wait for newer pcidsk, switch to external again
12 # - additional, proprietary(?) formats support:
13 # - FMEObjects (http://www.safe.com/support/support-resources/fme-downloads/)
14 # - ESRI FileGDBAPI (http://resources.arcgis.com/content/geodatabases/10.0/file-gdb-api)
15 # - ECW (http://www.erdas.com/products/ecw/ERDASECWJPEG2000SDK/Details.aspx)
16 # - Kakadu/JPEG2000 (http://www.kakadusoftware.com/)
17 # - MrSID (http://www.lizardtech.com/developer/)
19 # - MSG/EUMETSAT (http://www.eumetsat.int/Home/Main/DataAccess/SupportSoftwareTools/index.htm)
20 # - Ingres (--with-ingres=/path)
21 # - Informix DB (--with-idb)
22 # - DWGdirect (members only? http://www.opendwg.org/)
23 # - ESRI SDE (http://www.esri.com/software/arcgis/arcsde/index.html)
24 # - Teigha DWG/DGN (https://www.opendesign.com/products/drawings?)
27 %bcond_without armadillo # Armadillo support for faster TPS transform
28 %bcond_without crnlib # DDS support via crunch/crnlib
29 %bcond_without epsilon # EPSILON wavelet compression support
30 %bcond_without fyba # SOSI geodata support using FYBA
31 %bcond_with grass # GRASS support (note: dependency loop; use gdal-grass.spec instead)
32 %bcond_without gta # GTA format support
33 %bcond_without kea # KEA format support
34 %bcond_without mysql # MySQL DB support
35 %bcond_with oci # ORACLE OCI DB and Georaster support
36 %bcond_without odbc # ODBC DB support
37 %bcond_without opencl # OpenCL (GPU) support
38 %bcond_without openjpeg # OpenJPEG 2 (JPEG2000) support
39 %bcond_with podofo # PDF support via podofo instead of poppler
40 %bcond_without poppler # PDF support via poppler
41 %bcond_with rasdaman # Rasdaman support
42 %bcond_with spatialite # SpatiaLite support
43 %bcond_without xerces # Xerces support
44 %bcond_without java # Java and MDB support
47 %undefine with_poppler
49 Summary: Geospatial Data Abstraction Library
50 Summary(pl.UTF-8): Biblioteka abstrakcji danych dotyczących powierzchni Ziemi
56 Source0: https://github.com/OSGeo/gdal/releases/download/v%{version}/%{name}-%{version}.tar.gz
57 # Source0-md5: 2b397c041e6b0b10ec7c49fd76e9fa99
58 Patch0: %{name}-perl.patch
59 Patch1: %{name}-pc.patch
60 Patch2: %{name}-dds.patch
61 Patch3: %{name}-rasdaman.patch
62 Patch4: %{name}-pluginsdir.patch
64 Patch6: poppler-0.82.patch
65 URL: http://www.gdal.org/
66 # 1.x or 2.x supported
67 BuildRequires: CharLS-devel
68 %{?with_opencl:BuildRequires: OpenCL-devel >= 1.0}
69 %{?with_armadillo:BuildRequires: armadillo-devel}
70 BuildRequires: autoconf >= 2.52
71 BuildRequires: automake
72 BuildRequires: cfitsio-devel
73 %{?with_crnlib:BuildRequires: crnlib-devel}
74 BuildRequires: cryptopp-devel
75 BuildRequires: curl-devel
76 BuildRequires: doxygen >= 1.4.2
77 %{?with_epsilon:BuildRequires: epsilon-compressor-devel}
78 BuildRequires: expat-devel >= 1.95.0
79 %{?with_fyba:BuildRequires: fyba-devel}
80 BuildRequires: freexl-devel >= 1.0
81 BuildRequires: gcc >= 6:4.1
82 BuildRequires: geos-devel >= 3.1.0
83 BuildRequires: giflib-devel >= 4.0
84 %{?with_grass:BuildRequires: grass-devel >= 6.4}
85 BuildRequires: hdf-devel >= 4.2.5
86 BuildRequires: hdf5-devel
87 BuildRequires: jasper-devel
88 %{?with_java:BuildRequires: jdk}
89 %{?with_java:BuildRequires: jpackage-utils}
90 BuildRequires: json-c-devel >= 0.11
91 %{?with_kea:BuildRequires: kealib-devel}
92 BuildRequires: libcsf-devel >= 2.0-0.041111.6
93 BuildRequires: libdap-devel >= 3.10
94 BuildRequires: libgeotiff-devel >= 1.2.1
95 %{?with_gta:BuildRequires: libgta-devel}
96 BuildRequires: libjpeg-devel >= 6b
97 #BuildRequires: libkml-devel >= 1.3.0
98 BuildRequires: libpng-devel >= 2:1.2.8
99 %{?with_spatialite:BuildRequires: libspatialite-devel}
100 BuildRequires: libstdc++-devel
101 BuildRequires: libtiff-devel >= 4.0
102 BuildRequires: libtirpc-devel
103 BuildRequires: libtool
104 BuildRequires: libuuid-devel
105 BuildRequires: libwebp-devel
106 BuildRequires: libxml2-devel >= 2
107 #%{?with_mysql:BuildRequires: mysql-devel >= 4}
108 %{?with_mysql:BuildRequires: /usr/bin/mysql_config}
109 BuildRequires: netcdf-devel >= 4.1
110 BuildRequires: ogdi-devel >= 3.1
111 %{?with_openjpeg:BuildRequires: openjpeg2-devel >= 2.1.0}
112 # 8.1.7 for DB support, 10.0.1 for georaster
113 %{?with_oci:BuildRequires: oracle-instantclient-devel >= 10.0.1}
114 #BuildRequires: pcidsk-devel > 0.3
115 BuildRequires: pcre-devel
116 BuildRequires: perl-devel
117 BuildRequires: pkgconfig >= 1:0.21
118 %{?with_podofo:BuildRequires: podofo-devel}
119 %{?with_poppler:BuildRequires: poppler-devel >= 0.24}
120 # ensure it's compiled with PQescapeStringConn support
121 BuildRequires: postgresql-backend-devel >= 8.1.4
122 BuildRequires: postgresql-devel >= 8.1.4
123 BuildRequires: proj-devel >= 4
124 BuildRequires: python-devel >= 1:2.5
125 BuildRequires: python-numpy-devel >= 1:1.0.0
126 BuildRequires: python-setuptools
127 BuildRequires: qhull-devel >= 2012
128 %{?with_rasdaman:BuildRequires: rasdaman-devel}
129 BuildRequires: rpm-pythonprov
130 BuildRequires: rpmbuild(macros) >= 1.344
131 BuildRequires: sed >= 4.0
132 BuildRequires: sqlite3-devel >= 3.0.0
133 BuildRequires: swig-perl
134 BuildRequires: swig-python >= 1.3
135 BuildRequires: texlive-dvips
136 BuildRequires: texlive-latex
137 %{?with_odbc:BuildRequires: unixODBC-devel >= 2.2.15}
138 %{?with_xerces:BuildRequires: xerces-c-devel >= 3.1.0}
139 BuildRequires: xz-devel
140 BuildRequires: zlib-devel >= 1.1.4
141 # for ZSTD compression in TIFF
142 BuildRequires: zstd-devel
143 Requires: freexl >= 1.0
144 Requires: geos >= 3.1.0
145 Requires: hdf >= 4.2.5
146 Requires: libgeotiff >= 1.2.1
147 Requires: libpng >= 2:1.2.8
148 Requires: libtiff >= 4.0
149 %{?with_openjpeg:Requires: openjpeg2 >= 2.1.0}
150 Requires: qhull >= 2012
151 %{?with_xerces:Requires: xerces-c >= 3.1.0}
152 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
155 GDAL is a translator library for raster geospatial data formats that
156 is released under an Open Source license. As a library, it presents a
157 single abstract data model to the calling application for all
158 supported formats. The related OGR library (which lives within the
159 GDAL source tree) provides a similar capability for simple features
162 %description -l pl.UTF-8
163 GDAL to biblioteka konwertująca między formatami rastrowych danych
164 dotyczących powierzchni Ziemi, udostępniona na licencji Open Source.
165 Jako biblioteka udostępnia aplikacjom jeden abstrakcyjny model danych
166 do wszystkich obsługiwanych formatów. Powiązana z nią biblioteka OGR
167 (której źródła są dołączone do drzewa źródeł GDAL) daje podobne
168 możliwości dla danych wektorowych.
171 Summary: GDAL library header files
172 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki GDAL
173 Group: Development/Libraries
174 Requires: %{name} = %{version}-%{release}
175 Requires: CharLS-devel
176 %{?with_opencl:Requires: OpenCL-devel >= 1.0}
177 %{?with_armadillo:Requires: armadillo-devel}
178 Requires: cfitsio-devel
179 %{?with_crnlib:Requires: crnlib-devel}
180 Requires: cryptopp-devel
182 %{?with_epsilon:Requires: epsilon-compressor-devel}
183 %{?with_fyba:Requires: fyba-devel}
184 Requires: expat-devel >= 1.95.0
185 Requires: freexl-devel >= 1.0
186 Requires: geos-devel >= 3.1.0
187 Requires: giflib-devel >= 4.0
188 Requires: hdf-devel >= 4.2.5
190 Requires: jasper-devel
191 Requires: json-c-devel >= 0.11
192 %{?with_kea:Requires: kealib-devel}
193 Requires: libcsf-devel
194 Requires: libdap-devel >= 3.10
195 Requires: libgeotiff-devel >= 1.2.1
196 %{?with_gta:Requires: libgta-devel}
197 Requires: libjpeg-devel >= 6b
198 Requires: libpng-devel >= 2:1.2.8
199 %{?with_spatialite:Requires: libspatialite-devel}
200 Requires: libstdc++-devel
201 Requires: libtiff-devel >= 4.0
202 Requires: libuuid-devel
203 Requires: libwebp-devel
204 Requires: libxml2-devel >= 2
205 %{?with_mysql:Requires: /usr/bin/mysql_config}
206 Requires: netcdf-devel >= 4
207 Requires: ogdi-devel >= 3.1
208 %{?with_openjpeg:Requires: openjpeg2-devel >= 2.1.0}
209 #Requires: pcidsk-devel > 0.3
211 %{?with_podofo:Requires: podofo-devel}
212 %{?with_poppler:Requires: poppler-devel >= 0.24}
213 Requires: postgresql-devel
214 Requires: proj-devel >= 4
215 Requires: qhull-devel >= 2012
216 %{?with_rasdaman:Requires: rasdaman-devel}
217 Requires: sqlite3-devel >= 3.0.0
218 %{?with_odbc:Requires: unixODBC-devel}
219 %{?with_xerces:Requires: xerces-c-devel >= 3.1.0}
221 Requires: zlib-devel >= 1.1.4
225 GDAL library header files.
227 %description devel -l pl.UTF-8
228 Pliki nagłówkowe biblioteki GDAL.
231 Summary: GDAL static libraries
232 Summary(pl.UTF-8): Statyczne biblioteki GDAL
233 Group: Development/Libraries
234 Requires: %{name}-devel = %{version}-%{release}
237 GDAL static libraries.
239 %description static -l pl.UTF-8
240 Statyczne biblioteki GDAL.
242 %package -n perl-gdal
243 Summary: Perl bindings for GDAL
244 Summary(pl.UTF-8): Wiązania Perla do pakietu GDAL
245 Group: Development/Languages/Perl
246 Requires: %{name} = %{version}-%{release}
248 %description -n perl-gdal
249 Perl bindings for GDAL - Geo::GDAL, Geo::OGR and Geo::OSR modules.
251 %description -n perl-gdal -l pl.UTF-8
252 Wiązania Perla do pakietu GDAL - moduły Geo::GDAL, Geo::OGR, Geo::OSR.
254 %package -n python-gdal
255 Summary: GDAL Python module
256 Summary(pl.UTF-8): Moduł Pythona GDAL
257 Group: Libraries/Python
258 Requires: %{name} = %{version}-%{release}
259 Requires: python-libs
261 %description -n python-gdal
264 %description -n python-gdal -l pl.UTF-8
277 # need to regenerate (old ones don't support perl 5.10)
278 %{__rm} swig/perl/{gdal_wrap.cpp,gdalconst_wrap.c,ogr_wrap.cpp,osr_wrap.cpp}
281 sed -i -e 's#^mandir=.*##g' configure.ac
285 %{__sed} -i -e 's,DODS_INC="-I.*,DODS_INC="$(pkg-config --cflags libdap)",' configure.ac
303 --includedir=%{_includedir}/gdal \
304 --datadir=%{_datadir}/gdal \
305 --with-dods-root=/usr \
306 %{?with_armadillo:--with-armadillo} \
307 %{?with_crnlib:--with-dds} \
308 %{?with_epsilon:--with-epsilon} \
309 %{?with_grass:--with-grass} \
310 %{!?with_gta:--without-gta} \
311 --with-hide-internal-symbols \
312 %{?with_java:--with-java=%{java_home}} \
314 %{!?with_kea:--without-kea} \
315 %{?with_java:--with-mdb --with-jvm-lib-add-rpath --with-jvm-lib=%{java_home}/jre/lib/$jvm_arch/server} \
316 %{?with_mysql:--with-mysql} \
317 %{?with_oci:--with-oci --with-oci-include=/usr/include/oracle/client --with-oci-lib=%{_libdir}} \
318 %{?with_opencl:--with-opencl} \
320 %{?with_podofo:--with-podofo} \
321 %{?with_poppler:--with-poppler} \
323 %{?with_rasdaman:--with-rasdaman=%{_libdir}/rasdaman} \
324 %{?with_fyba:--with-sosi} \
325 %{?with_spatialite:--with-spatialite} \
328 %{?with_xerces:--with-xerces} \
329 --with-xerces-inc=/usr/include \
330 --with-xerces-lib="-lxerces-c" \
332 # --with-pcidsk=/usr (needs > 0.3)
333 # csharp builds, but has no configure option nor install target
335 # regenerate where needed
336 %{__make} -j1 -C swig/perl generate
339 %{?with_grass:GRASS_INCLUDE="-I/usr/include/grass64"} \
340 %{?with_fyba:SOSI_INC="-I/usr/include/fyba"}
347 rm -rf $RPM_BUILD_ROOT
349 %{__make} -j1 install install-man \
350 DESTDIR=$RPM_BUILD_ROOT
352 # TODO: remove libgdal.la when gdal.pc gets maintained Requires.private/Libs.private list
357 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
358 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
361 %{__rm} $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod
362 %{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Geo/GDAL/.packlist
363 %{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Geo/GDAL/Const/.packlist
364 %{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Geo/OGR/.packlist
365 %{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Geo/OSR/.packlist
368 rm -rf $RPM_BUILD_ROOT
370 %post -p /sbin/ldconfig
371 %postun -p /sbin/ldconfig
374 %defattr(644,root,root,755)
375 %doc NEWS PROVENANCE.TXT
376 %attr(755,root,root) %{_bindir}/epsg_tr.py
377 %attr(755,root,root) %{_bindir}/esri2wkt.py
378 %attr(755,root,root) %{_bindir}/gcps2vec.py
379 %attr(755,root,root) %{_bindir}/gcps2wld.py
380 %attr(755,root,root) %{_bindir}/gdal2tiles.py
381 %attr(755,root,root) %{_bindir}/gdal2xyz.py
382 %attr(755,root,root) %{_bindir}/gdaladdo
383 %attr(755,root,root) %{_bindir}/gdal_auth.py
384 %attr(755,root,root) %{_bindir}/gdalbuildvrt
385 %attr(755,root,root) %{_bindir}/gdal_calc.py
386 %attr(755,root,root) %{_bindir}/gdalchksum.py
387 %attr(755,root,root) %{_bindir}/gdalcompare.py
388 %attr(755,root,root) %{_bindir}/gdal_contour
389 %attr(755,root,root) %{_bindir}/gdaldem
390 %attr(755,root,root) %{_bindir}/gdal_edit.py
391 %attr(755,root,root) %{_bindir}/gdalenhance
392 %attr(755,root,root) %{_bindir}/gdal_fillnodata.py
393 %attr(755,root,root) %{_bindir}/gdal_grid
394 %attr(755,root,root) %{_bindir}/gdalident.py
395 %attr(755,root,root) %{_bindir}/gdalimport.py
396 %attr(755,root,root) %{_bindir}/gdalinfo
397 %attr(755,root,root) %{_bindir}/gdallocationinfo
398 %attr(755,root,root) %{_bindir}/gdalmanage
399 %attr(755,root,root) %{_bindir}/gdal_merge.py
400 %attr(755,root,root) %{_bindir}/gdalmove.py
401 %attr(755,root,root) %{_bindir}/gdal_pansharpen.py
402 %attr(755,root,root) %{_bindir}/gdal_polygonize.py
403 %attr(755,root,root) %{_bindir}/gdal_proximity.py
404 %attr(755,root,root) %{_bindir}/gdal_rasterize
405 %attr(755,root,root) %{_bindir}/gdal_retile.py
406 %attr(755,root,root) %{_bindir}/gdalserver
407 %attr(755,root,root) %{_bindir}/gdal_sieve.py
408 %attr(755,root,root) %{_bindir}/gdalsrsinfo
409 %attr(755,root,root) %{_bindir}/gdaltindex
410 %attr(755,root,root) %{_bindir}/gdaltransform
411 %attr(755,root,root) %{_bindir}/gdal_translate
412 %attr(755,root,root) %{_bindir}/gdalwarp
413 %attr(755,root,root) %{_bindir}/gnmanalyse
414 %attr(755,root,root) %{_bindir}/gnmmanage
415 %attr(755,root,root) %{_bindir}/mkgraticule.py
416 %attr(755,root,root) %{_bindir}/nearblack
417 %attr(755,root,root) %{_bindir}/ogr2ogr
418 %attr(755,root,root) %{_bindir}/ogrinfo
419 %attr(755,root,root) %{_bindir}/ogrlineref
420 %attr(755,root,root) %{_bindir}/ogrmerge.py
421 %attr(755,root,root) %{_bindir}/ogrtindex
422 %attr(755,root,root) %{_bindir}/pct2rgb.py
423 %attr(755,root,root) %{_bindir}/rgb2pct.py
424 %attr(755,root,root) %{_bindir}/testepsg
425 %attr(755,root,root) %{_libdir}/libgdal.so.*.*.*
426 %attr(755,root,root) %ghost %{_libdir}/libgdal.so.26
427 %dir %{_libdir}/gdalplugins
429 %{_mandir}/man1/gdal2tiles.1*
430 %{_mandir}/man1/gdal_calc.1*
431 %{_mandir}/man1/gdal_contour.1*
432 %{_mandir}/man1/gdal_edit.1*
433 %{_mandir}/man1/gdal_fillnodata.1*
434 %{_mandir}/man1/gdal_grid.1*
435 %{_mandir}/man1/gdal_merge.1*
436 %{_mandir}/man1/gdal_polygonize.1*
437 %{_mandir}/man1/gdal_proximity.1*
438 %{_mandir}/man1/gdal_rasterize.1*
439 %{_mandir}/man1/gdal_retile.1*
440 %{_mandir}/man1/gdal_sieve.1*
441 %{_mandir}/man1/gdal_translate.1*
442 %{_mandir}/man1/gdal_utilities.1*
443 %{_mandir}/man1/gdaladdo.1*
444 %{_mandir}/man1/gdalbuildvrt.1*
445 %{_mandir}/man1/gdalcompare.1*
446 %{_mandir}/man1/gdaldem.1*
447 %{_mandir}/man1/gdalinfo.1*
448 %{_mandir}/man1/gdallocationinfo.1*
449 %{_mandir}/man1/gdalmanage.1*
450 %{_mandir}/man1/gdalmove.1*
451 %{_mandir}/man1/gdalsrsinfo.1*
452 %{_mandir}/man1/gdaltindex.1*
453 %{_mandir}/man1/gdaltransform.1*
454 %{_mandir}/man1/gdalwarp.1*
455 %{_mandir}/man1/nearblack.1*
456 %{_mandir}/man1/ogr2ogr.1*
457 %{_mandir}/man1/ogr_utilities.1*
458 %{_mandir}/man1/ogrinfo.1*
459 %{_mandir}/man1/ogrlineref.1*
460 %{_mandir}/man1/ogrtindex.1*
461 %{_mandir}/man1/pct2rgb.1*
462 %{_mandir}/man1/rgb2pct.1*
463 %{_mandir}/man1/gdal_pansharpen.1*
464 %{_mandir}/man1/gnm_utilities.1*
465 %{_mandir}/man1/gnmanalyse.1*
466 %{_mandir}/man1/gnmmanage.1*
467 %{_mandir}/man1/ogrmerge.1*
470 %defattr(644,root,root,755)
472 %attr(755,root,root) %{_bindir}/gdal-config
473 %attr(755,root,root) %{_libdir}/libgdal.so
474 %{_libdir}/libgdal.la
475 %{_pkgconfigdir}/gdal.pc
477 %{_mandir}/man1/gdal-config.1*
480 %defattr(644,root,root,755)
484 %defattr(644,root,root,755)
485 %dir %{perl_vendorarch}/Geo
486 %{perl_vendorarch}/Geo/GDAL.pm
487 %dir %{perl_vendorarch}/Geo/GDAL
488 %{perl_vendorarch}/Geo/GDAL/Const.pm
489 %{perl_vendorarch}/Geo/OGR.pm
490 %{perl_vendorarch}/Geo/OSR.pm
491 %dir %{perl_vendorarch}/auto/Geo
492 %dir %{perl_vendorarch}/auto/Geo/GDAL
493 %attr(755,root,root) %{perl_vendorarch}/auto/Geo/GDAL/GDAL.so
494 %dir %{perl_vendorarch}/auto/Geo/GDAL/Const
495 %attr(755,root,root) %{perl_vendorarch}/auto/Geo/GDAL/Const/Const.so
496 %dir %{perl_vendorarch}/auto/Geo/GNM
497 %attr(755,root,root) %{perl_vendorarch}/auto/Geo/GNM/GNM.so
498 %dir %{perl_vendorarch}/auto/Geo/OGR
499 %attr(755,root,root) %{perl_vendorarch}/auto/Geo/OGR/OGR.so
500 %dir %{perl_vendorarch}/auto/Geo/OSR
501 %attr(755,root,root) %{perl_vendorarch}/auto/Geo/OSR/OSR.so
502 %{_mandir}/man3/Geo::GDAL.3pm*
503 %{perl_vendorarch}/Geo/GNM.pm
505 %files -n python-gdal
506 %defattr(644,root,root,755)
507 %{py_sitedir}/gdal.py[co]
508 %{py_sitedir}/gdalconst.py[co]
509 %{py_sitedir}/gdalnumeric.py[co]
510 %{py_sitedir}/ogr.py[co]
511 %{py_sitedir}/osr.py[co]
512 %{py_sitedir}/GDAL-*.egg-info
513 %dir %{py_sitedir}/osgeo
514 %attr(755,root,root) %{py_sitedir}/osgeo/_gdal.so
515 %attr(755,root,root) %{py_sitedir}/osgeo/_gdal_array.so
516 %attr(755,root,root) %{py_sitedir}/osgeo/_gdalconst.so
517 %attr(755,root,root) %{py_sitedir}/osgeo/_gnm.so
518 %attr(755,root,root) %{py_sitedir}/osgeo/_ogr.so
519 %attr(755,root,root) %{py_sitedir}/osgeo/_osr.so
520 %{py_sitedir}/osgeo/*.py[co]