Accepting request 327177 from home:bruno_friedmann:branches:Application:Geo

- Adding python3 support
- move fdupes from buildroot (mix python scripts otherwise)
  fdupes is run against source html directory
- dos2unix Fix EOL warnings
- improve spec style

OBS-URL: https://build.opensuse.org/request/show/327177
OBS-URL: https://build.opensuse.org/package/show/Application:Geo/gdal?expand=0&rev=16
This commit is contained in:
Martin Pluskal 2015-08-26 16:14:10 +00:00 committed by Git OBS Bridge
parent 87791d72e5
commit 2d5cccc0eb
2 changed files with 72 additions and 25 deletions

View File

@ -1,3 +1,11 @@
-------------------------------------------------------------------
Wed Aug 26 09:58:30 UTC 2015 - bruno@ioda-net.ch
- Adding python3 support
- move fdupes from buildroot (mix python scripts otherwise)
fdupes is run against source html directory
- dos2unix Fix EOL warnings
------------------------------------------------------------------- -------------------------------------------------------------------
Sat Jul 4 11:32:00 UTC 2015 - Angelos Tzotsos <tzotsos@opensuse.org> Sat Jul 4 11:32:00 UTC 2015 - Angelos Tzotsos <tzotsos@opensuse.org>

View File

@ -37,6 +37,7 @@ Patch5: gdal-poppler-0.31.patch
BuildRequires: blas-devel BuildRequires: blas-devel
BuildRequires: chrpath BuildRequires: chrpath
BuildRequires: curl-devel BuildRequires: curl-devel
BuildRequires: dos2unix
BuildRequires: doxygen >= 1.4.2 BuildRequires: doxygen >= 1.4.2
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: gcc-c++ BuildRequires: gcc-c++
@ -59,11 +60,12 @@ BuildRequires: poppler-devel
BuildRequires: postgresql-devel BuildRequires: postgresql-devel
BuildRequires: python-numpy-devel BuildRequires: python-numpy-devel
BuildRequires: python-setuptools BuildRequires: python-setuptools
BuildRequires: python3-devel
BuildRequires: python3-numpy-devel
BuildRequires: sqlite-devel >= 3 BuildRequires: sqlite-devel >= 3
BuildRequires: swig BuildRequires: swig
BuildRequires: unixODBC-devel BuildRequires: unixODBC-devel
BuildRequires: zlib-devel >= 1.1.4 BuildRequires: zlib-devel >= 1.1.4
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if %{with ecw_support} %if %{with ecw_support}
BuildRequires: libecwj2-devel BuildRequires: libecwj2-devel
%endif %endif
@ -71,13 +73,14 @@ BuildRequires: libecwj2-devel
BuildRequires: autoconf BuildRequires: autoconf
BuildRequires: automake BuildRequires: automake
BuildRequires: hdf5-devel BuildRequires: hdf5-devel
%endif %if 0%{?suse_version} >= 1310 && 0%{?suse_version} != 1315
%if 0%{?suse_version} > 1310 && 0%{?suse_version} != 1315
BuildRequires: libwebp-devel BuildRequires: libwebp-devel
BuildRequires: perl-ExtUtils-MakeMaker BuildRequires: perl-ExtUtils-MakeMaker
%endif
%else %else
BuildRequires: hdf-devel >= 4.0 BuildRequires: hdf-devel >= 4.0
%endif %endif
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description %description
GDAL is a translator library for raster geospatial data formats that GDAL is a translator library for raster geospatial data formats that
@ -127,6 +130,14 @@ Requires: %{name} = %{version}-%{release}
%description -n python-gdal %description -n python-gdal
The GDAL python modules provide support to handle multiple GIS file formats. The GDAL python modules provide support to handle multiple GIS file formats.
%package -n python3-gdal
Summary: GDAL Python3 module
Group: Development/Languages/Python
Requires: %{name} = %{version}-%{release}
%description -n python3-gdal
The GDAL python3 modules provide support to handle multiple GIS file formats.
%prep %prep
%setup -q -n gdal-%{version} %setup -q -n gdal-%{version}
%patch0 -p1 %patch0 -p1
@ -136,12 +147,20 @@ The GDAL python modules provide support to handle multiple GIS file formats.
%patch4 -p0 %patch4 -p0
%patch5 -p0 %patch5 -p0
# Fix wrong encoding EOL
for F in frmt_twms_srtm.xml frmt_wms_bluemarble_s3_tms.xml frmt_wms_virtualearth.xml frmt_twms_Clementine.xml;
do
# dos2unix -v is not supported on archaic SLE version
find . -name "${F}" -exec dos2unix {} \;
done
# need to regenerate (old ones don't support perl 5.10) # 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} #See below the veryclean & generate usage.
rm swig/php/{gdal_wrap.cpp,gdalconst_wrap.c,ogr_wrap.cpp,osr_wrap.cpp}
rm -r man rm -r man
echo "********* 0%{suse_version} *******************************************"
%build %build
# need to regenerate (old one does not accpet CFLAGS) # need to regenerate (old one does not accpet CFLAGS)
%if 0%{?suse_version} >= 1310 %if 0%{?suse_version} >= 1310
@ -156,12 +175,12 @@ autoreconf -fi
--disable-static \ --disable-static \
--with-geotiff \ --with-geotiff \
--with-libtiff \ --with-libtiff \
--with-rename-internal-libtiff-symbols=yes \ --with-rename-internal-libtiff-symbols=yes \
--with-rename-internal-libgeotiff-symbols=yes \ --with-rename-internal-libgeotiff-symbols=yes \
--with-libz \ --with-libz \
--with-cfitsio=no \ --with-cfitsio=no \
--with-netcdf \ --with-netcdf \
--with-openjpeg \ --with-openjpeg \
--with-curl \ --with-curl \
--with-pg \ --with-pg \
--with-ogdi \ --with-ogdi \
@ -176,7 +195,7 @@ autoreconf -fi
--with-png \ --with-png \
--with-gif \ --with-gif \
--with-jpeg \ --with-jpeg \
--with-spatialite \ --with-spatialite \
--with-poppler \ --with-poppler \
--with-python \ --with-python \
--with-perl \ --with-perl \
@ -184,31 +203,49 @@ autoreconf -fi
--with-xerces-lib="-lxerces-c" \ --with-xerces-lib="-lxerces-c" \
--with-xerces-inc=%{_includedir}/xercesc \ --with-xerces-inc=%{_includedir}/xercesc \
%if %{with ecw_support} %if %{with ecw_support}
--with-ecw \ --with-ecw \
CFLAGS="$CFLAGS -pthread" \ CFLAGS="$CFLAGS -pthread" \
%endif %endif
%if 0%{?suse_version} > 1310 %if 0%{?suse_version} >= 1310
--without-hdf4 \ --without-hdf4 \
--with-hdf5 \ --with-hdf5 \
--with-webp \ --with-webp \
%else %else
--with-hdf4 \ --with-hdf4 \
%endif %endif
--disable-rpath --disable-rpath
# regenerate where needed # regenerate where needed
make %{?_smp_mflags} -C swig/perl generate for M in perl python;
do
make %{?_smp_mflags} -C swig/${M} veryclean
make %{?_smp_mflags} -C swig/${M} generate
done
make %{?_smp_mflags} all docs man make %{?_smp_mflags} all docs man
# Make Python 3 module
pushd swig/python
python3 setup.py build
popd
%install %install
# Install Python 3 module
# Must be done first so executables are env python
pushd swig/python
python3 setup.py install --prefix=%{_prefix} --root=%{buildroot}
popd
make %{?_smp_mflags} install install-man \ make %{?_smp_mflags} install install-man \
DESTDIR=%{buildroot} INST_MAN=%{_mandir} DESTDIR=%{buildroot} INST_MAN=%{_mandir}
cp -a ogr/html html/ogr cp -a ogr/html html/ogr
%fdupes -s %{buildroot} # Not on buildroot : broke everything with python3
# If done got python3 needing python2 package heretic ..
# Futhermore duplicates are only existing in src html dir
%fdupes -s html
# chrpath must be removed here # chrpath must be removed here
chmod 644 %{buildroot}%{perl_vendorarch}/auto/Geo/GDAL/Const/Const.so chmod 644 %{buildroot}%{perl_vendorarch}/auto/Geo/GDAL/Const/Const.so
@ -221,6 +258,9 @@ chrpath --delete %{buildroot}%{perl_vendorarch}/auto/Geo/GDAL/GDAL.so
chrpath --delete %{buildroot}%{perl_vendorarch}/auto/Geo/OGR/OGR.so chrpath --delete %{buildroot}%{perl_vendorarch}/auto/Geo/OGR/OGR.so
chrpath --delete %{buildroot}%{perl_vendorarch}/auto/Geo/OSR/OSR.so chrpath --delete %{buildroot}%{perl_vendorarch}/auto/Geo/OSR/OSR.so
#perl bs 0 length files cleanup
find %{buildroot}%{perl_vendorarch} -name "*.bs" -exec rm -fv {} \;
# do not ship these # do not ship these
rm -rf %{buildroot}%{_mandir}/man1/_* rm -rf %{buildroot}%{_mandir}/man1/_*
rm -rf %{buildroot}%{_libdir}/libgdal.la rm -rf %{buildroot}%{_libdir}/libgdal.la
@ -332,16 +372,15 @@ rm -rf %{buildroot}%{_bindir}/*.dox
%attr(755,root,root) %{perl_vendorarch}/auto/Geo/OGR/OGR.so %attr(755,root,root) %{perl_vendorarch}/auto/Geo/OGR/OGR.so
%dir %{perl_vendorarch}/auto/Geo/OSR %dir %{perl_vendorarch}/auto/Geo/OSR
%attr(755,root,root) %{perl_vendorarch}/auto/Geo/OSR/OSR.so %attr(755,root,root) %{perl_vendorarch}/auto/Geo/OSR/OSR.so
%if 0%{?suse_version} <= 1315
%{perl_vendorarch}/auto/Geo/OSR/OSR.bs
%{perl_vendorarch}/auto/Geo/OGR/OGR.bs
%{perl_vendorarch}/auto/Geo/GDAL/GDAL.bs
%{perl_vendorarch}/auto/Geo/GDAL/Const/Const.bs
%endif
%files -n python-%{name} %files -n python-%{name}
%defattr(644,root,root,755) %defattr(644,root,root,755)
%doc NEWS PROVENANCE.TXT LICENSE.TXT %doc NEWS PROVENANCE.TXT LICENSE.TXT
%{python_sitearch}/* %{python_sitearch}/*
%files -n python3-%{name}
%defattr(644,root,root,755)
%doc NEWS PROVENANCE.TXT LICENSE.TXT
%{python3_sitearch}/*
%changelog %changelog