# - be reasonable about devel dependencies - you do not need all of them to
# use gdal (probably a gdal module or driver shall not imply devel
# dependency)
-# - spatialite (--with-spatialite; libspatialite: http://www.gaia-gis.it/gaia-sins/)
-# - freexl (http://www.gaia-gis.it/FreeXL/)
# - rasdaman (--with-rasdaman; http://rasdaman.eecs.jacobs-university.de/trac/rasdaman/wiki/Download)
-# - armadillo (--with-armadillo; http://arma.sourceforge.net/)
-# - openjpeg (unreleased post-1.5 or 2? needs opj_decode_tile_data symbol, not available in 1.3-1.5)
-# - libjpeg12 (needs patching to use system one)
+# - libjpeg12 (needs patching to use system one, --with-jpeg12 is not sufficient as of 1.9.2)
# - libkml (1.3.0 needed, not released yet)
# - wait for newer pcidsk, switch to external again
-# - csharp, java, mysql
+# - csharp, java
# - additional, proprietary(?) formats support:
# - FMEObjects (http://www.safe.com/support/support-resources/fme-downloads/)
# - ESRI FileGDBAPI (http://resources.arcgis.com/content/geodatabases/10.0/file-gdb-api)
# - Informix DB
# - DWGdirect (members only? http://www.opendwg.org/)
# - ESRI SDE (http://www.esri.com/software/arcgis/arcsde/index.html)
-# - OpenCL (--with-opencl; no free Linux implementation yet?)
#
# Conditional build:
-%bcond_without epsilon # EPSILON wavelet compression support
-%bcond_without gta # GTA format support
-%bcond_without odbc # disable ODBC DB support
-%bcond_with podofo # PDF support via podofo instead of poppler
-%bcond_without poppler # PDF support via poppler
-%bcond_without xerces # disable xerces support
-%bcond_without java # disable Java and MDB support
-%bcond_without php # disable PHP binding
-%bcond_without ruby # disable ruby binding
-#
+%bcond_without armadillo # Armadillo support for faster TPS transform
+%bcond_without epsilon # EPSILON wavelet compression support
+%bcond_without gta # GTA format support
+%bcond_without mysql # MySQL DB support
+%bcond_without odbc # ODBC DB support
+%bcond_without opencl # OpenCL (GPU) support
+%bcond_without openjpeg # OpenJPEG 2 (JPEG2000) support
+%bcond_with podofo # PDF support via podofo instead of poppler
+%bcond_without poppler # PDF support via poppler
+%bcond_without spatialite # SpatiaLite support
+%bcond_without xerces # Xerces support
+%bcond_without java # Java and MDB support
+%bcond_without php # PHP binding
+%bcond_without ruby # Ruby binding
+
%if %{with podofo}
%undefine with_poppler
%endif
Summary: Geospatial Data Abstraction Library
Summary(pl.UTF-8): Biblioteka abstrakcji danych dotyczących powierzchni Ziemi
Name: gdal
-Version: 1.9.0
+Version: 1.10.1
Release: 5
License: BSD-like
Group: Libraries
-Source0: ftp://ftp.remotesensing.org/gdal/%{name}-%{version}.tar.gz
-# Source0-md5: 1853f3d8eb5232ae030abe007840cade
+Source0: http://download.osgeo.org/gdal/%{version}/%{name}-%{version}.tar.xz
+# Source0-md5: f354c614aea76e5630e4edbf06e5c292
Patch0: %{name}-perl.patch
Patch1: %{name}-python_install.patch
-Patch2: %{name}-doxy.patch
-Patch3: %{name}-sh.patch
-Patch4: %{name}-php.patch
-Patch5: %{name}-fpic.patch
+Patch2: %{name}-php.patch
+Patch3: %{name}-fpic.patch
+Patch4: %{name}-format-security.patch
+Patch5: gdal-bug-5284.patch
URL: http://www.gdal.org/
+%{?with_opencl:BuildRequires: OpenCL-devel >= 1.0}
+%{?with_armadillo:BuildRequires: armadillo-devel}
BuildRequires: autoconf >= 2.52
BuildRequires: automake
BuildRequires: cfitsio-devel
BuildRequires: doxygen >= 1.4.2
%{?with_epsilon:BuildRequires: epsilon-compressor-devel}
BuildRequires: expat-devel >= 1.95.0
+BuildRequires: freexl-devel >= 1.0
BuildRequires: geos-devel >= 2.2.0
BuildRequires: giflib-devel >= 4.0
BuildRequires: hdf-devel >= 4.0
BuildRequires: libjpeg-devel >= 6b
#BuildRequires: libkml-devel >= 1.3.0
BuildRequires: libpng-devel >= 2:1.2.8
+%{?with_spatialite:BuildRequires: libspatialite-devel}
BuildRequires: libstdc++-devel
BuildRequires: libtiff-devel >= 4.0
BuildRequires: libtool
BuildRequires: libuuid-devel
BuildRequires: libwebp-devel
BuildRequires: libxml2-devel
-BuildRequires: netcdf-devel >= 4
+%{?with_mysql:BuildRequires: mysql-devel}
+BuildRequires: netcdf-devel >= 4.1
BuildRequires: ogdi-devel >= 3.1
+%{?with_openjpeg:BuildRequires: openjpeg2-devel >= 2.0.0-2}
#BuildRequires: pcidsk-devel > 0.3
BuildRequires: perl-devel
%{?with_php:BuildRequires: php-devel}
%{?with_podofo:BuildRequires: podofo-devel}
-%{?with_poppler:BuildRequires: poppler-devel}
+%{?with_poppler:BuildRequires: poppler-devel >= 0.24}
# ensure it's compiled with PQescapeStringConn support
BuildRequires: postgresql-backend-devel >= 8.1.4
BuildRequires: postgresql-devel >= 8.1.4
BuildRequires: python-numpy-devel >= 1:1.0.0
BuildRequires: python-setuptools
BuildRequires: rpm-pythonprov
+%{?with_ruby:BuildRequires: rpm-rubyprov}
BuildRequires: rpmbuild(macros) >= 1.344
%{?with_ruby:BuildRequires: ruby-devel}
BuildRequires: sed >= 4.0
BuildRequires: swig-perl
BuildRequires: swig-python >= 1.3
%{?with_ruby:BuildRequires: swig-ruby}
-%if "%{pld_release}" == "ti"
-BuildRequires: tetex-format-latex
-BuildRequires: tetex-dvips
-%else
BuildRequires: texlive-dvips
BuildRequires: texlive-latex
-%endif
%{?with_odbc:BuildRequires: unixODBC-devel >= 2.2.15}
%{?with_xerces:BuildRequires: xerces-c-devel >= 2.7.0}
BuildRequires: xz-devel
BuildRequires: zlib-devel >= 1.1.4
+Requires: freexl >= 1.0
Requires: geos >= 2.2.0
Requires: libgeotiff >= 1.2.1
Requires: libpng >= 2:1.2.8
Summary(pl.UTF-8): Pliki nagłówkowe biblioteki GDAL
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
+%{?with_opencl:Requires: OpenCL-devel >= 1.0}
+%{?with_armadillo:Requires: armadillo-devel}
Requires: cfitsio-devel
Requires: curl-devel
%{?with_epsilon:Requires: epsilon-compressor-devel}
Requires: expat-devel >= 1.95.0
+Requires: freexl-devel >= 1.0
Requires: geos-devel >= 2.2.0
Requires: giflib-devel >= 4.0
Requires: hdf-devel >= 4.0
%{?with_gta:Requires: libgta-devel}
Requires: libjpeg-devel >= 6b
Requires: libpng-devel >= 2:1.2.8
+%{?with_spatialite:Requires: libspatialite-devel}
Requires: libstdc++-devel
Requires: libtiff-devel >= 4.0
Requires: libuuid-devel
Requires: libwebp-devel
Requires: libxml2-devel
+%{?with_mysql:Requires: mysql-devel}
Requires: netcdf-devel >= 4
Requires: ogdi-devel >= 3.1
+%{?with_openjpeg:Requires: openjpeg2-devel >= 2.0.0-2}
#Requires: pcidsk-devel > 0.3
%{?with_podofo:Requires: podofo-devel}
-%{?with_poppler:Requires: poppler-devel}
+%{?with_poppler:Requires: poppler-devel >= 0.24}
Requires: postgresql-devel
Requires: proj-devel >= 4
Requires: sqlite3-devel >= 3.0.0
Summary(pl.UTF-8): Moduł Pythona GDAL
Group: Libraries/Python
Requires: %{name} = %{version}-%{release}
-%pyrequires_eq python-libs
+Requires: python-libs
%description -n python-gdal
GDAL Python module.
Summary(pl.UTF-8): Wiązania języka Ruby do pakietu GDAL
Group: Development/Languages
Requires: %{name} = %{version}-%{release}
-%{?ruby_mod_ver_requires_eq}
%description -n ruby-gdal
Ruby bindings for GDAL - gdal, gdalconst, ogr and osr modules.
%prep
%setup -q
+%{__aclocal}
+%{__autoconf}
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
-%patch5 -p1
+%patch5 -p3
# need to regenerate (old ones don't support perl 5.10)
%{__rm} swig/perl/{gdal_wrap.cpp,gdalconst_wrap.c,ogr_wrap.cpp,osr_wrap.cpp}
+# Build with fPIC to allow Ruby bindings
+# Xcompiler should normally achieve that -- http://trac.osgeo.org/gdal/ticket/3978
+# http://trac.osgeo.org/gdal/ticket/1994
+sed -i 's|\$(CFLAGS)|$(CFLAGS) -fPIC|g' swig/ruby/RubyMakefile.mk
+# Install Ruby bindings to distribution specific directory
+sed -i 's|RUBY_EXTENSIONS_DIR :=.*|RUBY_EXTENSIONS_DIR := %{ruby_vendorarchdir}|' swig/ruby/RubyMakefile.mk
+
+# Install Ruby bindings into the proper place
+sed -i -e 's|^$(INSTALL_DIR):|$(DESTDIR)$(INSTALL_DIR):|' swig/ruby/RubyMakefile.mk
+sed -i -e 's|^install: $(INSTALL_DIR)|install: $(DESTDIR)$(INSTALL_DIR)|' swig/ruby/RubyMakefile.mk
+
+# our man path
+sed -i -e 's#^mandir=.*##g' configure.in
+
%{__rm} -r man
%{__sed} -i -e 's,DODS_INC="-I.*,DODS_INC="$(pkg-config --cflags libdap)",' configure.in
%configure \
--datadir=%{_datadir}/gdal \
--with-dods-root=/usr \
+ %{?with_armadillo:--with-armadillo} \
%{?with_epsilon:--with-epsilon} \
%{!?with_gta:--without-gta} \
--with-hide-internal-symbols \
%{?with_java:--with-java=%{java_home}} \
--with-liblzma \
%{?with_java:--with-mdb --with-jvm-lib-add-rpath} \
+ %{?with_mysql:--with-mysql} \
+ %{?with_opencl:--with-opencl} \
--with-perl \
%{?with_php:--with-php} \
%{?with_podofo:--with-podofo} \
%{?with_poppler:--with-poppler} \
--with-python \
%{?with_ruby:--with-ruby} \
+ %{?with_spatialite:--with-spatialite} \
--with-sqlite3 \
--with-webp \
%{?with_xerces:--with-xerces} \
--with-xerces-lib="-lxerces-c" \
--without-grass \
--without-libgrass
+# --with-rasdaman
# --with-pcidsk=/usr (needs > 0.3)
# csharp builds, but has no configure option
# regenerate where needed
%{__make} -j1 -C swig/perl generate
-%{?with_ruby:%{__make} -j1 -C swig/ruby generate}
+%if %{with ruby}
+%{__make} -j1 -C swig/ruby generate
+%endif
%{__make} -j1
%{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Geo/OSR/.packlist
# some doxygen trash
-%{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/Geo/{GDAL.dox,GDAL/Const.dox,OGR.dox,OSR.dox}
-%{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/Geo/check_dox.pl
-%{__rm} $RPM_BUILD_ROOT%{_bindir}/gdal_{fillnodata,sieve}.dox
+%{__rm} $RPM_BUILD_ROOT%{_bindir}/gdalmove.dox
+%{__rm} $RPM_BUILD_ROOT%{_bindir}/gdal_{edit,fillnodata,polygonize,proximity,sieve}.dox
%clean
rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/gcps2wld.py
%attr(755,root,root) %{_bindir}/gdal2tiles.py
%attr(755,root,root) %{_bindir}/gdal2xyz.py
+%attr(755,root,root) %{_bindir}/gdal_auth.py
%attr(755,root,root) %{_bindir}/gdal_contour
%attr(755,root,root) %{_bindir}/gdal_calc.py
+%attr(755,root,root) %{_bindir}/gdal_edit.py
%attr(755,root,root) %{_bindir}/gdal_fillnodata.py
%attr(755,root,root) %{_bindir}/gdal_grid
%attr(755,root,root) %{_bindir}/gdal_merge.py
%attr(755,root,root) %{_bindir}/gdalinfo
%attr(755,root,root) %{_bindir}/gdallocationinfo
%attr(755,root,root) %{_bindir}/gdalmanage
+%attr(755,root,root) %{_bindir}/gdalmove.py
+%attr(755,root,root) %{_bindir}/gdalserver
%attr(755,root,root) %{_bindir}/gdalsrsinfo
%attr(755,root,root) %{_bindir}/gdaltindex
%attr(755,root,root) %{_bindir}/gdaltransform
%{_datadir}/gdal
%{_mandir}/man1/gdal2tiles.1*
%{_mandir}/man1/gdal_contour.1*
+%{_mandir}/man1/gdal_edit.1*
%{_mandir}/man1/gdal_fillnodata.1*
%{_mandir}/man1/gdal_grid.1*
%{_mandir}/man1/gdal_merge.1*
+%{_mandir}/man1/gdal_polygonize.1*
+%{_mandir}/man1/gdal_proximity.1*
%{_mandir}/man1/gdal_rasterize.1*
%{_mandir}/man1/gdal_retile.1*
%{_mandir}/man1/gdal_sieve.1*
%{_mandir}/man1/gdaldem.1*
%{_mandir}/man1/gdalinfo.1*
%{_mandir}/man1/gdallocationinfo.1*
+%{_mandir}/man1/gdalmanage.1*
+%{_mandir}/man1/gdalmove.1*
%{_mandir}/man1/gdalsrsinfo.1*
%{_mandir}/man1/gdaltindex.1*
%{_mandir}/man1/gdaltransform.1*
%if %{with ruby}
%files -n ruby-gdal
%defattr(644,root,root,755)
-%dir %{ruby_sitearchdir}/gdal
-%attr(755,root,root) %{ruby_sitearchdir}/gdal/gdal.so
-%attr(755,root,root) %{ruby_sitearchdir}/gdal/gdalconst.so
-%attr(755,root,root) %{ruby_sitearchdir}/gdal/ogr.so
-%attr(755,root,root) %{ruby_sitearchdir}/gdal/osr.so
+%dir %{ruby_vendorarchdir}/gdal
+%attr(755,root,root) %{ruby_vendorarchdir}/gdal/gdal.so
+%attr(755,root,root) %{ruby_vendorarchdir}/gdal/gdalconst.so
+%attr(755,root,root) %{ruby_vendorarchdir}/gdal/ogr.so
+%attr(755,root,root) %{ruby_vendorarchdir}/gdal/osr.so
%endif