commit:     9c5c5ae1907d3c28ea98dc872bbd96935e8dd2ff
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 16 20:23:38 2018 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Jan 16 20:24:54 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9c5c5ae1

sci-libs/gdal: Fix bash_completion install path

Closes: https://bugs.gentoo.org/641866
Package-Manager: Portage-2.3.19, Repoman-2.3.6

 sci-libs/gdal/files/gdal-2.2.3-bashcomp-path.patch |  12 +
 sci-libs/gdal/gdal-2.2.3-r1.ebuild                 | 287 +++++++++++++++++++++
 2 files changed, 299 insertions(+)

diff --git a/sci-libs/gdal/files/gdal-2.2.3-bashcomp-path.patch 
b/sci-libs/gdal/files/gdal-2.2.3-bashcomp-path.patch
new file mode 100644
index 00000000000..620b05fecbd
--- /dev/null
+++ b/sci-libs/gdal/files/gdal-2.2.3-bashcomp-path.patch
@@ -0,0 +1,12 @@
+Fixes Gentoo-bug #641866
+
+--- a/scripts/GNUmakefile
++++ b/scripts/GNUmakefile
+@@ -6,5 +6,5 @@
+ install:
+       if test "x`pkg-config --version 2>/dev/null`" != "x" -a "x`pkg-config 
--variable=compatdir bash-completion`" != "x"; then \
+-              $(INSTALL_DIR) $(DESTDIR)${prefix}`pkg-config 
--variable=compatdir bash-completion` ; \
+-              cp gdal-bash-completion.sh $(DESTDIR)${prefix}`pkg-config 
--variable=compatdir bash-completion`; \
++              $(INSTALL_DIR) $(DESTDIR)`pkg-config --variable=completionsdir 
bash-completion` ; \
++              cp gdal-bash-completion.sh $(DESTDIR)`pkg-config 
--variable=completionsdir bash-completion`/gdal.sh; \
+       fi

diff --git a/sci-libs/gdal/gdal-2.2.3-r1.ebuild 
b/sci-libs/gdal/gdal-2.2.3-r1.ebuild
new file mode 100644
index 00000000000..900a8c7a129
--- /dev/null
+++ b/sci-libs/gdal/gdal-2.2.3-r1.ebuild
@@ -0,0 +1,287 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+GENTOO_DEPEND_ON_PERL="no"
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
+DISTUTILS_OPTIONAL=1
+
+inherit autotools perl-module distutils-r1 toolchain-funcs flag-o-matic 
java-pkg-opt-2
+
+DESCRIPTION="Translator library for raster geospatial data formats (includes 
OGR support)"
+HOMEPAGE="http://www.gdal.org/";
+SRC_URI="http://download.osgeo.org/${PN}/${PV}/${P}.tar.gz";
+
+SLOT="0/2.2"
+LICENSE="BSD Info-ZIP MIT"
+KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux 
~ppc-macos ~x86-macos"
+IUSE="armadillo +aux_xml curl debug doc fits geos gif gml hdf5 java jpeg 
jpeg2k mdb mysql netcdf odbc ogdi opencl oracle pdf perl png postgres python 
spatialite sqlite threads webp xls"
+
+COMMON_DEPEND="
+       dev-libs/expat
+       dev-libs/json-c:=
+       dev-libs/libpcre
+       dev-libs/libxml2:=
+       media-libs/tiff:0=
+       sci-libs/libgeotiff
+       sys-libs/zlib:=[minizip(+)]
+       armadillo? ( sci-libs/armadillo:=[lapack] )
+       curl? ( net-misc/curl )
+       fits? ( sci-libs/cfitsio:= )
+       geos? ( >=sci-libs/geos-2.2.1 )
+       gif? ( media-libs/giflib:= )
+       gml? ( >=dev-libs/xerces-c-3.1 )
+       hdf5? ( >=sci-libs/hdf5-1.6.4:=[szip] )
+       jpeg? ( virtual/jpeg:0 )
+       jpeg2k? ( media-libs/openjpeg:2= )
+       mdb? ( dev-java/jackcess:1 )
+       mysql? ( virtual/mysql )
+       netcdf? ( sci-libs/netcdf:= )
+       odbc? ( dev-db/unixODBC )
+       ogdi? ( sci-libs/ogdi )
+       opencl? ( virtual/opencl )
+       oracle? ( dev-db/oracle-instantclient:= )
+       pdf? ( >=app-text/poppler-0.24.3:= )
+       perl? ( dev-lang/perl:= )
+       png? ( media-libs/libpng:0= )
+       postgres? ( >=dev-db/postgresql-8.4:= )
+       python? (
+               ${PYTHON_DEPS}
+               dev-python/numpy[${PYTHON_USEDEP}]
+       )
+       spatialite? ( dev-db/spatialite )
+       sqlite? ( dev-db/sqlite:3 )
+       webp? ( media-libs/libwebp:= )
+       xls? ( dev-libs/freexl )"
+
+RDEPEND="${COMMON_DEPEND}
+       java? ( >=virtual/jre-1.7:* )"
+
+DEPEND="${COMMON_DEPEND}
+       app-shells/bash-completion
+       doc? ( app-doc/doxygen )
+       java? ( >=virtual/jdk-1.7:* )
+       perl? ( dev-lang/swig:0 )
+       python? (
+               dev-lang/swig:0
+               dev-python/setuptools[${PYTHON_USEDEP}]
+       )"
+
+REQUIRED_USE="
+       mdb? ( java )
+       python? ( ${PYTHON_REQUIRED_USE} )
+       spatialite? ( sqlite )
+"
+
+PATCHES=(
+       "${FILESDIR}/${P}-soname.patch"
+       "${FILESDIR}/${P}-json-c-0.13.patch" # bug 641658
+       "${FILESDIR}/${P}-bashcomp-path.patch" # bug 641866
+)
+
+src_prepare() {
+       # fix datadir and docdir placement
+       sed -e "s:@datadir@:@datadir@/gdal:" \
+               -e "s:@exec_prefix@/doc:@exec_prefix@/share/doc/${PF}/html:g" \
+               -i "${S}"/GDALmake.opt.in || die
+
+       # the second sed expression should fix bug 371075
+       sed -e "s:setup.py install:setup.py install --root=\$(DESTDIR):" \
+               -e "s:--prefix=\$(DESTDIR):--prefix=:" \
+               -i "${S}"/swig/python/GNUmakefile || die
+
+       # Fix spatialite/sqlite include issue
+       sed -e 's:spatialite/sqlite3.h:sqlite3.h:g' \
+               -i ogr/ogrsf_frmts/sqlite/ogr_sqlite.h || die
+
+       # Fix freexl configure check
+       sed -e 's:FREEXL_LIBS=missing):FREEXL_LIBS=missing,-lm):g' \
+               -i configure.ac || die
+
+       sed -e "s: /usr/: \"${EPREFIX}\"/usr/:g" \
+               -i configure.ac || die
+
+       sed -e 's:^ar:$(AR):g' \
+               -i ogr/ogrsf_frmts/sdts/install-libs.sh || die
+
+       # updated for newer swig (must specify the path to input files)
+       sed -e "s: gdal_array.i: ../include/gdal_array.i:" \
+               -e "s:\$(DESTDIR)\$(prefix):\$(DESTDIR)\$(INST_PREFIX):g" \
+               -i swig/python/GNUmakefile || die "sed python makefile failed"
+       sed -e "s:library_dirs = :library_dirs = /usr/$(get_libdir):g" \
+               -i swig/python/setup.cfg || die "sed python setup.cfg failed"
+
+       default
+       eautoreconf
+}
+
+src_configure() {
+
+       tc-export AR RANLIB
+       local myopts=()
+
+       if use java; then
+               myopts+=(
+                       --with-java=$(java-config --jdk-home 2>/dev/null)
+                       --with-jvm-lib=dlopen
+                       $(use_with mdb)
+               )
+       else
+               myopts+=( --without-java --without-mdb )
+       fi
+
+       if use sqlite; then
+               append-libs -lsqlite3
+       fi
+
+       # pcidsk is internal, because there is no such library yet released
+       #     also that thing is developed by the gdal people
+       # kakadu, mrsid jp2mrsid - another jpeg2k stuff, ignore
+       # bsb - legal issues
+       # ingres - same story as oracle oci
+       # jasper - disabled because unmaintained and vulnerable; openjpeg will 
be used as JPEG-2000 provider instead
+       # podofo - we use poppler instead they are exclusive for each other
+       # tiff is a hard dep
+       ECONF_SOURCE="${S}" econf \
+               --includedir="${EPREFIX}/usr/include/${PN}" \
+               --disable-pdf-plugin \
+               --disable-static \
+               --enable-shared \
+               --with-expat \
+               --with-geotiff \
+               --with-grib \
+               --with-hide-internal-symbols \
+               --with-libtiff \
+               --with-libtool \
+               --with-libz="${EPREFIX}/usr/" \
+               --with-gnm \
+               --with-cryptopp=no \
+               --without-bsb \
+               --without-dods-root \
+               --without-ecw \
+               --without-epsilon \
+               --without-fme \
+               --without-grass \
+               --without-hdf4 \
+               --without-idb \
+               --without-ingres \
+               --without-jasper \
+               --without-jp2mrsid \
+               --without-kakadu \
+               --without-mrsid \
+               --without-msg \
+               --without-mrf \
+               --without-pcraster \
+               --without-pdfium \
+               --without-sde \
+               --without-sosi \
+               --without-mongocxx \
+               --without-podofo \
+               --disable-lto \
+               $(use_enable debug) \
+               $(use_with armadillo) \
+               $(use_with aux_xml pam) \
+               $(use_with curl) \
+               $(use_with fits cfitsio) \
+               $(use_with geos) \
+               $(use_with gif) \
+               $(use_with gml xerces) \
+               $(use_with hdf5) \
+               $(use_with jpeg pcidsk) \
+               $(use_with jpeg) \
+               $(use_with jpeg2k openjpeg) \
+               $(use_with mysql mysql "${EPREFIX}"/usr/bin/mysql_config) \
+               $(use_with netcdf) \
+               $(use_with oracle oci) \
+               $(use_with odbc) \
+               $(use_with ogdi ogdi "${EPREFIX}"/usr) \
+               $(use_with opencl) \
+               $(use_with perl) \
+               $(use_with png) \
+               $(use_with pdf poppler) \
+               $(use_with postgres pg) \
+               $(use_with python) \
+               $(use_with spatialite) \
+               $(use_with sqlite sqlite3 "${EPREFIX}"/usr) \
+               $(use_with threads) \
+               $(use_with webp) \
+               $(use_with xls freexl) \
+               ${myopts}
+
+       # mysql-config puts this in (and boy is it a PITA to get it out)
+       if use mysql; then
+               sed -e "s: -rdynamic : :" \
+                       -i GDALmake.opt || die "sed LIBS failed"
+       fi
+}
+
+src_compile() {
+       if use perl; then
+               rm "${S}"/swig/perl/*_wrap.cpp || die
+               emake -C "${S}"/swig/perl generate
+       fi
+
+       # gdal-config needed before generating Python bindings
+       default
+
+       if use perl ; then
+               pushd "${S}"/swig/perl > /dev/null || die
+               perl-module_src_configure
+               perl-module_src_compile
+               popd > /dev/null || die
+       fi
+
+       if use python; then
+               rm -f "${S}"/swig/python/*_wrap.cpp || die
+               emake -C "${S}"/swig/python generate
+               pushd "${S}"/swig/python > /dev/null || die
+               distutils-r1_src_compile
+               popd > /dev/null || die
+       fi
+
+       use doc && emake docs
+}
+
+src_install() {
+       if use perl ; then
+               pushd "${S}"/swig/perl > /dev/null || die
+               perl-module_src_install
+               popd > /dev/null || die
+               sed -e 's:BINDINGS        =       \(.*\) perl:BINDINGS        = 
      \1:g' \
+                       -i GDALmake.opt || die
+       fi
+
+       use perl && perl_delete_localpod
+
+       local DOCS=( Doxyfile HOWTO-RELEASE NEWS )
+       use doc && HTML_DOCS=( html/. )
+
+       default
+
+       python_install() {
+               distutils-r1_python_install
+               python_doscript scripts/*.py
+       }
+
+       if use python; then
+               # Don't clash with gdal's docs
+               unset DOCS HTML_DOCS
+
+               pushd "${S}"/swig/python > /dev/null || die
+               distutils-r1_src_install
+               popd > /dev/null || die
+
+               newdoc swig/python/README.txt README-python.txt
+
+               insinto /usr/share/${PN}/samples
+               doins -r swig/python/samples/
+       fi
+
+       doman "${S}"/man/man*/*
+}
+
+pkg_postinst() {
+       elog "Check available image and data formats after building with"
+       elog "gdalinfo and ogrinfo (using the --formats switch)."
+}

Reply via email to