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 # - rasdaman (--with-rasdaman; http://rasdaman.eecs.jacobs-university.de/trac/rasdaman/wiki/Download)
6 # - openjpeg (unreleased post-1.5 or 2? needs opj_decode_tile_data symbol, not available in 1.3-1.5)
7 # - libjpeg12 (needs patching to use system one, --with-jpeg12 is not sufficient as of 1.9.2)
8 # - libkml (1.3.0 needed, not released yet)
9 # - wait for newer pcidsk, switch to external again
11 # - additional, proprietary(?) formats support:
12 # - FMEObjects (http://www.safe.com/support/support-resources/fme-downloads/)
13 # - ESRI FileGDBAPI (http://resources.arcgis.com/content/geodatabases/10.0/file-gdb-api)
14 # - ECW (http://www.erdas.com/products/ecw/ERDASECWJPEG2000SDK/Details.aspx)
15 # - Kakadu/JPEG2000 (http://www.kakadusoftware.com/)
16 # - MrSID (http://www.lizardtech.com/developer/)
17 # - MSG/EUMETSAT (http://www.eumetsat.int/Home/Main/DataAccess/SupportSoftwareTools/index.htm)
18 # - Oracle/OCI >= 10.0.1 (for georaster); Oracle/OCI >= 8.1.7 (as DB)
19 # - Ingres (--with-ingres=/path)
21 # - DWGdirect (members only? http://www.opendwg.org/)
22 # - ESRI SDE (http://www.esri.com/software/arcgis/arcsde/index.html)
25 %bcond_without armadillo # Armadillo support for faster TPS transform
26 %bcond_without epsilon # EPSILON wavelet compression support
27 %bcond_without gta # GTA format support
28 %bcond_without mysql # MySQL DB support
29 %bcond_without odbc # ODBC DB support
30 %bcond_without opencl # OpenCL (GPU) support
31 %bcond_with podofo # PDF support via podofo instead of poppler
32 %bcond_without poppler # PDF support via poppler
33 %bcond_without spatialite # SpatiaLite support
34 %bcond_without xerces # Xerces support
35 %bcond_without java # Java and MDB support
36 %bcond_without php # PHP binding
37 %bcond_without ruby # ruby binding
40 %undefine with_poppler
42 Summary: Geospatial Data Abstraction Library
43 Summary(pl.UTF-8): Biblioteka abstrakcji danych dotyczących powierzchni Ziemi
49 Source0: ftp://ftp.remotesensing.org/gdal/%{name}-%{version}.tar.gz
50 # Source0-md5: 3f39db89f4710269b3a8bf94178e07aa
51 Patch0: %{name}-perl.patch
52 Patch1: %{name}-python_install.patch
53 Patch2: %{name}-php.patch
54 Patch3: %{name}-fpic.patch
55 URL: http://www.gdal.org/
56 %{?with_opencl:BuildRequires: OpenCL-devel >= 1.0}
57 %{?with_armadillo:BuildRequires: armadillo-devel}
58 BuildRequires: autoconf >= 2.52
59 BuildRequires: automake
60 BuildRequires: cfitsio-devel
61 BuildRequires: curl-devel
62 BuildRequires: doxygen >= 1.4.2
63 %{?with_epsilon:BuildRequires: epsilon-compressor-devel}
64 BuildRequires: expat-devel >= 1.95.0
65 BuildRequires: freexl-devel >= 1.0
66 BuildRequires: geos-devel >= 2.2.0
67 BuildRequires: giflib-devel >= 4.0
68 BuildRequires: hdf-devel >= 4.0
69 BuildRequires: hdf5-devel
70 BuildRequires: jasper-devel
71 %{?with_java:BuildRequires: jdk}
72 %{?with_java:BuildRequires: jpackage-utils}
73 BuildRequires: libcsf-devel
74 BuildRequires: libdap-devel >= 3.10
75 BuildRequires: libgeotiff-devel >= 1.2.1
76 %{?with_gta:BuildRequires: libgta-devel}
77 BuildRequires: libjpeg-devel >= 6b
78 #BuildRequires: libkml-devel >= 1.3.0
79 BuildRequires: libpng-devel >= 2:1.2.8
80 %{?with_spatialite:BuildRequires: libspatialite-devel}
81 BuildRequires: libstdc++-devel
82 BuildRequires: libtiff-devel >= 4.0
83 BuildRequires: libtool
84 BuildRequires: libuuid-devel
85 BuildRequires: libwebp-devel
86 BuildRequires: libxml2-devel
87 %{?with_mysql:BuildRequires: mysql-devel}
88 BuildRequires: netcdf-devel >= 4.1
89 BuildRequires: ogdi-devel >= 3.1
90 #BuildRequires: pcidsk-devel > 0.3
91 BuildRequires: perl-devel
92 %{?with_php:BuildRequires: php-devel}
93 %{?with_podofo:BuildRequires: podofo-devel}
94 %{?with_poppler:BuildRequires: poppler-devel}
95 # ensure it's compiled with PQescapeStringConn support
96 BuildRequires: postgresql-backend-devel >= 8.1.4
97 BuildRequires: postgresql-devel >= 8.1.4
98 BuildRequires: proj-devel >= 4
99 BuildRequires: python-devel >= 1:2.5
100 BuildRequires: python-numpy-devel >= 1:1.0.0
101 BuildRequires: python-setuptools
102 BuildRequires: rpm-pythonprov
103 BuildRequires: rpmbuild(macros) >= 1.344
104 %{?with_ruby:BuildRequires: ruby-devel}
105 BuildRequires: sed >= 4.0
106 BuildRequires: sqlite3-devel >= 3.0.0
107 BuildRequires: swig-perl
108 BuildRequires: swig-python >= 1.3
109 %{?with_ruby:BuildRequires: swig-ruby}
110 BuildRequires: texlive-dvips
111 BuildRequires: texlive-latex
112 %{?with_odbc:BuildRequires: unixODBC-devel >= 2.2.15}
113 %{?with_xerces:BuildRequires: xerces-c-devel >= 2.7.0}
114 BuildRequires: xz-devel
115 BuildRequires: zlib-devel >= 1.1.4
116 Requires: freexl >= 1.0
117 Requires: geos >= 2.2.0
118 Requires: libgeotiff >= 1.2.1
119 Requires: libpng >= 2:1.2.8
120 Requires: libtiff >= 4.0
121 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
124 GDAL is a translator library for raster geospatial data formats that
125 is released under an Open Source license. As a library, it presents a
126 single abstract data model to the calling application for all
127 supported formats. The related OGR library (which lives within the
128 GDAL source tree) provides a similar capability for simple features
131 %description -l pl.UTF-8
132 GDAL to biblioteka konwertująca między formatami rastrowych danych
133 dotyczących powierzchni Ziemi, udostępniona na licencji Open Source.
134 Jako biblioteka udostępnia aplikacjom jeden abstrakcyjny model danych
135 do wszystkich obsługiwanych formatów. Powiązana z nią biblioteka OGR
136 (której źródła są dołączone do drzewa źródeł GDAL) daje podobne
137 możliwości dla danych wektorowych.
140 Summary: GDAL library header files
141 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki GDAL
142 Group: Development/Libraries
143 Requires: %{name} = %{version}-%{release}
144 %{?with_opencl:Requires: OpenCL-devel >= 1.0}
145 %{?with_armadillo:Requires: armadillo-devel}
146 Requires: cfitsio-devel
148 %{?with_epsilon:Requires: epsilon-compressor-devel}
149 Requires: expat-devel >= 1.95.0
150 Requires: freexl-devel >= 1.0
151 Requires: geos-devel >= 2.2.0
152 Requires: giflib-devel >= 4.0
153 Requires: hdf-devel >= 4.0
155 Requires: jasper-devel
156 Requires: libcsf-devel
157 Requires: libdap-devel >= 3.10
158 Requires: libgeotiff-devel >= 1.2.1
159 %{?with_gta:Requires: libgta-devel}
160 Requires: libjpeg-devel >= 6b
161 Requires: libpng-devel >= 2:1.2.8
162 %{?with_spatialite:Requires: libspatialite-devel}
163 Requires: libstdc++-devel
164 Requires: libtiff-devel >= 4.0
165 Requires: libuuid-devel
166 Requires: libwebp-devel
167 Requires: libxml2-devel
168 %{?with_mysql:Requires: mysql-devel}
169 Requires: netcdf-devel >= 4
170 Requires: ogdi-devel >= 3.1
171 #Requires: pcidsk-devel > 0.3
172 %{?with_podofo:Requires: podofo-devel}
173 %{?with_poppler:Requires: poppler-devel}
174 Requires: postgresql-devel
175 Requires: proj-devel >= 4
176 Requires: sqlite3-devel >= 3.0.0
177 %{?with_odbc:Requires: unixODBC-devel}
178 %{?with_xerces:Requires: xerces-c-devel >= 2.7.0}
180 Requires: zlib-devel >= 1.1.4
183 GDAL library header files.
185 %description devel -l pl.UTF-8
186 Pliki nagłówkowe biblioteki GDAL.
189 Summary: GDAL static libraries
190 Summary(pl.UTF-8): Statyczne biblioteki GDAL
191 Group: Development/Libraries
192 Requires: %{name}-devel = %{version}-%{release}
195 GDAL static libraries.
197 %description static -l pl.UTF-8
198 Statyczne biblioteki GDAL.
200 %package -n perl-gdal
201 Summary: Perl bindings for GDAL
202 Summary(pl.UTF-8): Wiązania Perla do pakietu GDAL
203 Group: Development/Languages/Perl
204 Requires: %{name} = %{version}-%{release}
206 %description -n perl-gdal
207 Perl bindings for GDAL - Geo::GDAL, Geo::OGR and Geo::OSR modules.
209 %description -n perl-gdal -l pl.UTF-8
210 Wiązania Perla do pakietu GDAL - moduły Geo::GDAL, Geo::OGR, Geo::OSR.
213 Summary: PHP bindings for GDAL library
214 Summary(pl.UTF-8): Wiązania PHP do biblioteki GDAL
215 Group: Development/Languages/PHP
216 Requires: %{name} = %{version}-%{release}
217 %{?requires_php_extension}
219 %description -n php-gdal
220 PHP bindings for GDAL library
222 %description -n php-gdal -l pl.UTF-8
223 Wiązania PHP do biblioteki GDAL.
225 %package -n python-gdal
226 Summary: GDAL Python module
227 Summary(pl.UTF-8): Moduł Pythona GDAL
228 Group: Libraries/Python
229 Requires: %{name} = %{version}-%{release}
230 %pyrequires_eq python-libs
232 %description -n python-gdal
235 %description -n python-gdal -l pl.UTF-8
238 %package -n ruby-gdal
239 Summary: Ruby bindings for GDAL
240 Summary(pl.UTF-8): Wiązania języka Ruby do pakietu GDAL
241 Group: Development/Languages
242 Requires: %{name} = %{version}-%{release}
243 %{?ruby_mod_ver_requires_eq}
245 %description -n ruby-gdal
246 Ruby bindings for GDAL - gdal, gdalconst, ogr and osr modules.
248 %description -n ruby-gdal -l pl.UTF-8
249 Wiązania języka Ruby do pakietu GDAL - moduły gdal, gdalconst, ogr i
259 # need to regenerate (old ones don't support perl 5.10)
260 %{__rm} swig/perl/{gdal_wrap.cpp,gdalconst_wrap.c,ogr_wrap.cpp,osr_wrap.cpp}
264 %{__sed} -i -e 's,DODS_INC="-I.*,DODS_INC="$(pkg-config --cflags libdap)",' configure.in
270 # disable grass/libgrass here, it can be built from separate gdal-grass package
272 --datadir=%{_datadir}/gdal \
273 --with-dods-root=/usr \
274 %{?with_armadillo:--with-armadillo} \
275 %{?with_epsilon:--with-epsilon} \
276 %{!?with_gta:--without-gta} \
277 --with-hide-internal-symbols \
278 %{?with_java:--with-java=%{java_home}} \
280 %{?with_java:--with-mdb --with-jvm-lib-add-rpath} \
281 %{?with_mysql:--with-mysql} \
282 %{?with_opencl:--with-opencl} \
284 %{?with_php:--with-php} \
285 %{?with_podofo:--with-podofo} \
286 %{?with_poppler:--with-poppler} \
288 %{?with_ruby:--with-ruby} \
289 %{?with_spatialite:--with-spatialite} \
292 %{?with_xerces:--with-xerces} \
293 --with-xerces-inc=/usr/include/xercesc \
294 --with-xerces-lib="-lxerces-c" \
298 # --with-pcidsk=/usr (needs > 0.3)
299 # csharp builds, but has no configure option
301 # regenerate where needed
302 %{__make} -j1 -C swig/perl generate
303 %{?with_ruby:%{__make} -j1 -C swig/ruby generate}
312 rm -rf $RPM_BUILD_ROOT
314 %{__make} -j1 install install-man \
315 DESTDIR=$RPM_BUILD_ROOT
319 cp -a ogr/html _html/ogr
322 # missing in make install
323 install -D swig/php/php_gdal.so $RPM_BUILD_ROOT%{php_extensiondir}/gdal.so
324 install -D swig/php/php_gdalconst.so $RPM_BUILD_ROOT%{php_extensiondir}/gdalconst.so
325 install -D swig/php/php_ogr.so $RPM_BUILD_ROOT%{php_extensiondir}/ogr.so
326 install -D swig/php/php_osr.so $RPM_BUILD_ROOT%{php_extensiondir}/osr.so
327 install -d $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d
328 cat <<'EOF' >$RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/gdal.ini
329 ; Enable gdal extension module
331 extension=gdalconst.so
337 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
338 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
341 %{__rm} $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod
342 %{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Geo/GDAL/.packlist
343 %{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Geo/GDAL/Const/.packlist
344 %{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Geo/OGR/.packlist
345 %{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Geo/OSR/.packlist
348 %{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/Geo/{GDAL.dox,GDAL/Const.dox,OGR.dox,OSR.dox}
349 %{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/Geo/check_dox.pl
350 %{__rm} $RPM_BUILD_ROOT%{_bindir}/gdal_{fillnodata,sieve}.dox
353 rm -rf $RPM_BUILD_ROOT
355 %post -p /sbin/ldconfig
356 %postun -p /sbin/ldconfig
359 %defattr(644,root,root,755)
360 %doc NEWS PROVENANCE.TXT
361 %attr(755,root,root) %{_bindir}/epsg_tr.py
362 %attr(755,root,root) %{_bindir}/esri2wkt.py
363 %attr(755,root,root) %{_bindir}/gcps2vec.py
364 %attr(755,root,root) %{_bindir}/gcps2wld.py
365 %attr(755,root,root) %{_bindir}/gdal2tiles.py
366 %attr(755,root,root) %{_bindir}/gdal2xyz.py
367 %attr(755,root,root) %{_bindir}/gdal_contour
368 %attr(755,root,root) %{_bindir}/gdal_calc.py
369 %attr(755,root,root) %{_bindir}/gdal_fillnodata.py
370 %attr(755,root,root) %{_bindir}/gdal_grid
371 %attr(755,root,root) %{_bindir}/gdal_merge.py
372 %attr(755,root,root) %{_bindir}/gdal_polygonize.py
373 %attr(755,root,root) %{_bindir}/gdal_proximity.py
374 %attr(755,root,root) %{_bindir}/gdal_rasterize
375 %attr(755,root,root) %{_bindir}/gdal_retile.py
376 %attr(755,root,root) %{_bindir}/gdal_sieve.py
377 %attr(755,root,root) %{_bindir}/gdal_translate
378 %attr(755,root,root) %{_bindir}/gdaladdo
379 %attr(755,root,root) %{_bindir}/gdalbuildvrt
380 %attr(755,root,root) %{_bindir}/gdalchksum.py
381 %attr(755,root,root) %{_bindir}/gdaldem
382 %attr(755,root,root) %{_bindir}/gdalenhance
383 %attr(755,root,root) %{_bindir}/gdalident.py
384 %attr(755,root,root) %{_bindir}/gdalimport.py
385 %attr(755,root,root) %{_bindir}/gdalinfo
386 %attr(755,root,root) %{_bindir}/gdallocationinfo
387 %attr(755,root,root) %{_bindir}/gdalmanage
388 %attr(755,root,root) %{_bindir}/gdalsrsinfo
389 %attr(755,root,root) %{_bindir}/gdaltindex
390 %attr(755,root,root) %{_bindir}/gdaltransform
391 %attr(755,root,root) %{_bindir}/gdalwarp
392 %attr(755,root,root) %{_bindir}/mkgraticule.py
393 %attr(755,root,root) %{_bindir}/nearblack
394 %attr(755,root,root) %{_bindir}/ogr2ogr
395 %attr(755,root,root) %{_bindir}/ogrinfo
396 %attr(755,root,root) %{_bindir}/ogrtindex
397 %attr(755,root,root) %{_bindir}/pct2rgb.py
398 %attr(755,root,root) %{_bindir}/rgb2pct.py
399 %attr(755,root,root) %{_bindir}/testepsg
400 %attr(755,root,root) %{_libdir}/libgdal.so.*.*.*
401 %attr(755,root,root) %ghost %{_libdir}/libgdal.so.1
403 %{_mandir}/man1/gdal2tiles.1*
404 %{_mandir}/man1/gdal_contour.1*
405 %{_mandir}/man1/gdal_fillnodata.1*
406 %{_mandir}/man1/gdal_grid.1*
407 %{_mandir}/man1/gdal_merge.1*
408 %{_mandir}/man1/gdal_rasterize.1*
409 %{_mandir}/man1/gdal_retile.1*
410 %{_mandir}/man1/gdal_sieve.1*
411 %{_mandir}/man1/gdal_translate.1*
412 %{_mandir}/man1/gdal_utilities.1*
413 %{_mandir}/man1/gdaladdo.1*
414 %{_mandir}/man1/gdalbuildvrt.1*
415 %{_mandir}/man1/gdaldem.1*
416 %{_mandir}/man1/gdalinfo.1*
417 %{_mandir}/man1/gdallocationinfo.1*
418 %{_mandir}/man1/gdalsrsinfo.1*
419 %{_mandir}/man1/gdaltindex.1*
420 %{_mandir}/man1/gdaltransform.1*
421 %{_mandir}/man1/gdalwarp.1*
422 %{_mandir}/man1/nearblack.1*
423 %{_mandir}/man1/ogr2ogr.1*
424 %{_mandir}/man1/ogr_utilities.1*
425 %{_mandir}/man1/ogrinfo.1*
426 %{_mandir}/man1/ogrtindex.1*
427 %{_mandir}/man1/pct2rgb.1*
428 %{_mandir}/man1/rgb2pct.1*
431 %defattr(644,root,root,755)
433 %attr(755,root,root) %{_bindir}/gdal-config
434 %attr(755,root,root) %{_libdir}/libgdal.so
435 %{_libdir}/libgdal.la
436 %{_includedir}/cpl_*.h
437 %{_includedir}/cplkeywordparser.h
438 %{_includedir}/gdal*.h
439 %{_includedir}/gvgcpfit.h
440 %{_includedir}/memdataset.h
441 %{_includedir}/ogr_*.h
442 %{_includedir}/ogrsf_frmts.h
443 %{_includedir}/rawdataset.h
444 %{_includedir}/thinplatespline.h
445 %{_includedir}/vrtdataset.h
446 %{_mandir}/man1/gdal-config.1*
449 %defattr(644,root,root,755)
453 %defattr(644,root,root,755)
454 %dir %{perl_vendorarch}/Geo
455 %{perl_vendorarch}/Geo/GDAL.pm
456 %dir %{perl_vendorarch}/Geo/GDAL
457 %{perl_vendorarch}/Geo/GDAL/Const.pm
458 %{perl_vendorarch}/Geo/OGR.pm
459 %{perl_vendorarch}/Geo/OSR.pm
460 %dir %{perl_vendorarch}/auto/Geo
461 %dir %{perl_vendorarch}/auto/Geo/GDAL
462 %{perl_vendorarch}/auto/Geo/GDAL/GDAL.bs
463 %attr(755,root,root) %{perl_vendorarch}/auto/Geo/GDAL/GDAL.so
464 %dir %{perl_vendorarch}/auto/Geo/GDAL/Const
465 %{perl_vendorarch}/auto/Geo/GDAL/Const/Const.bs
466 %attr(755,root,root) %{perl_vendorarch}/auto/Geo/GDAL/Const/Const.so
467 %dir %{perl_vendorarch}/auto/Geo/OGR
468 %{perl_vendorarch}/auto/Geo/OGR/OGR.bs
469 %attr(755,root,root) %{perl_vendorarch}/auto/Geo/OGR/OGR.so
470 %dir %{perl_vendorarch}/auto/Geo/OSR
471 %{perl_vendorarch}/auto/Geo/OSR/OSR.bs
472 %attr(755,root,root) %{perl_vendorarch}/auto/Geo/OSR/OSR.so
476 %defattr(644,root,root,755)
477 %config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/gdal.ini
478 %attr(755,root,root) %{php_extensiondir}/gdal.so
479 %attr(755,root,root) %{php_extensiondir}/gdalconst.so
480 %attr(755,root,root) %{php_extensiondir}/ogr.so
481 %attr(755,root,root) %{php_extensiondir}/osr.so
484 %files -n python-gdal
485 %defattr(644,root,root,755)
486 %{py_sitedir}/gdal.py[co]
487 %{py_sitedir}/gdalconst.py[co]
488 %{py_sitedir}/gdalnumeric.py[co]
489 %{py_sitedir}/ogr.py[co]
490 %{py_sitedir}/osr.py[co]
491 %{py_sitedir}/GDAL-*.egg-info
492 %dir %{py_sitedir}/osgeo
493 %attr(755,root,root) %{py_sitedir}/osgeo/_gdal.so
494 %attr(755,root,root) %{py_sitedir}/osgeo/_gdal_array.so
495 %attr(755,root,root) %{py_sitedir}/osgeo/_gdalconst.so
496 %attr(755,root,root) %{py_sitedir}/osgeo/_ogr.so
497 %attr(755,root,root) %{py_sitedir}/osgeo/_osr.so
498 %{py_sitedir}/osgeo/*.py[co]
502 %defattr(644,root,root,755)
503 %dir %{ruby_sitearchdir}/gdal
504 %attr(755,root,root) %{ruby_sitearchdir}/gdal/gdal.so
505 %attr(755,root,root) %{ruby_sitearchdir}/gdal/gdalconst.so
506 %attr(755,root,root) %{ruby_sitearchdir}/gdal/ogr.so
507 %attr(755,root,root) %{ruby_sitearchdir}/gdal/osr.so