diff options
author | Amy Liffey <amynka@gentoo.org> | 2018-06-28 21:53:06 +0200 |
---|---|---|
committer | Amy Liffey <amynka@gentoo.org> | 2018-06-28 22:02:13 +0200 |
commit | 5325276b91d66c0bfffc48330aae12033e5d8c38 (patch) | |
tree | 2f6046dcda0d00a8144f0cdbb151f21d70752e68 /sci-libs | |
parent | net-misc/openssh: stackprotector is broken on musl x86 (diff) | |
download | gentoo-5325276b91d66c0bfffc48330aae12033e5d8c38.tar.gz gentoo-5325276b91d66c0bfffc48330aae12033e5d8c38.tar.bz2 gentoo-5325276b91d66c0bfffc48330aae12033e5d8c38.zip |
sci-libs/gdal: version bump 2.3.0
Closes: https://bugs.gentoo.org/654590
Closes: https://bugs.gentoo.org/644882
Closes: https://bugs.gentoo.org/654702
Closes: https://bugs.gentoo.org/656314
Package-Manager: Portage-2.3.40, Repoman-2.3.9
Diffstat (limited to 'sci-libs')
-rw-r--r-- | sci-libs/gdal/Manifest | 1 | ||||
-rw-r--r-- | sci-libs/gdal/gdal-2.3.0.ebuild | 289 |
2 files changed, 290 insertions, 0 deletions
diff --git a/sci-libs/gdal/Manifest b/sci-libs/gdal/Manifest index 17fbd88fc85d..aac7d7c428b6 100644 --- a/sci-libs/gdal/Manifest +++ b/sci-libs/gdal/Manifest @@ -1 +1,2 @@ DIST gdal-2.2.3.tar.gz 13754766 BLAKE2B d9482e7ee40bb5558fbbb43b750dfb95344abe45142c19e1f767535d3fc127fa9d6ed4496d730a25cb4132980efbffb4685e8663798fa05515b8548edb689e42 SHA512 841e5ba3c1a442b678dcaabac719ea7707b817f3dc717a34430dc7ba1f2c27fa88e27b7a8645075fae6e16373b36e6c50f674bdd6b70d10059e6bc4be7a72046 +DIST gdal-2.3.0.tar.gz 14423820 BLAKE2B 6c67c66b2f68699249ccd4df2cb1e3b7042e94003b730e64bd8b8eec726a32da9485cab29552bd34c23831686ec3e879edd1848a2339c8289580ce282a287992 SHA512 b37e433be0b7a587ea9f9e5e720295e4cd1406f6c8ca770f5fedcd7fdc797e01e576eb887034b38f93f04a4e76c0ce84792bc7d91a49fea4122231a37ace812f diff --git a/sci-libs/gdal/gdal-2.3.0.ebuild b/sci-libs/gdal/gdal-2.3.0.ebuild new file mode 100644 index 000000000000..24f395f1b094 --- /dev/null +++ b/sci-libs/gdal/gdal-2.3.0.ebuild @@ -0,0 +1,289 @@ +# 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 ~sparc ~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} + 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}/${PN}-2.2.3-soname.patch" + "${FILESDIR}/${PN}-2.2.3-bashcomp-path.patch" # bug 641866 + "${FILESDIR}/${PN}-2.2.3-goocast.patch" # bug 656252 +) + +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() { + # bug 619148 + append-cxxflags -std=c++14 + + 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-libjson-c="${EPREFIX}/usr/" \ + --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)." +} |