diff options
Diffstat (limited to 'sci-libs/gdal')
-rw-r--r-- | sci-libs/gdal/Manifest | 5 | ||||
-rw-r--r-- | sci-libs/gdal/files/gdal-1.5.0-soname-r1.patch | 13 | ||||
-rw-r--r-- | sci-libs/gdal/files/gdal-2.0.3-add-dlopen-support-for-jvm.patch | 232 | ||||
-rw-r--r-- | sci-libs/gdal/files/gdal-2.0.3-install_name.patch | 49 | ||||
-rw-r--r-- | sci-libs/gdal/gdal-2.0.3.ebuild | 291 |
5 files changed, 0 insertions, 590 deletions
diff --git a/sci-libs/gdal/Manifest b/sci-libs/gdal/Manifest index cb0fd884bc84..90c514c1fe75 100644 --- a/sci-libs/gdal/Manifest +++ b/sci-libs/gdal/Manifest @@ -1,11 +1,6 @@ -AUX gdal-1.5.0-soname-r1.patch 491 BLAKE2B 210a50e61990fa79c7ff3c489f0f184ab36eb655851027799015b6932a3cffd1290ad68af181d650ed5f5e209c8346148f225415469efb7437bd26995be349ea SHA512 883828de32d55a79a390f4737b640c8d50d174117e86396545d075fb5328a7e5ffffa150c11a6e9a6317b7cfd5458eb5ac543152fc2acafb1abf3688b78a573f -AUX gdal-2.0.3-add-dlopen-support-for-jvm.patch 8840 BLAKE2B e4361d8ca2f42a74c60644cdecc3ba9329b2fb67edcecf71bad903899cfe4b1782a623dde962270c6139c442ee76a4274a5eb9afe45e81b40d4427575838621e SHA512 9af9a9a6063476a9a62807addf542b67e47a7323377f80a92ea163f9d36396879d7dd92af81d296d6bc2956c27b271c5dbe729598d91b68f64991f14e5cf8c0b -AUX gdal-2.0.3-install_name.patch 1825 BLAKE2B 989f4c4e224dfa7974c2c29a938600d1f377931cc5c7deed11c3a9538da31dfd2a15897764ecf4b8515c7e771409f5208dfeb5437dc46318585e780e23456f76 SHA512 ebe21b9794a81de79ec6ae1e5ef225cbc74b7e36941ddec162b8ddee91778ac6cca2169464281168351fe8356ff4a14d503da7769871054f30592ce6560a0397 AUX gdal-2.2.3-bashcomp-path.patch 621 BLAKE2B 0f825aa27d68e35afdcbd7c5d3239b6b63e1c9b2814acc307e0b5082e7326f495102d10c4b2bdc86b17b7f4ae8ae11231c99215d87fc59217115f0fd92fc96f0 SHA512 16ed7bbd5569166c80cf4d8beba81195a177ee36bcd7e14ca6d00e3add6fe57c7980cbe1853747325443699daa331fc23e53fc86150b6c7cf871ef4812936c39 AUX gdal-2.2.3-json-c-0.13.patch 3733 BLAKE2B 34921f8e2717a446bead6d8b07c6a8e2455752bd4534d066c4bb6150f1cd03856269a8510535517cbf60e609053e470107e9ce62d58358afcb48aa819a546563 SHA512 f4beaa11431b1eb2c6986c3da24a696cdade04f025a9bdeb9726c392aecdf597126c7735b1b2c1175bd0de71a2441b2c1e5d01e597acd7869e9c75644660994d AUX gdal-2.2.3-soname.patch 2062 BLAKE2B 159b3d8eec126a141ff21c908d45193411bdbcc50e03386131c313cbd71861859a1b8a5a5648307868fee484b8a1dd816b580bb2304cb7e1e72e42df40cea042 SHA512 0f06d8de537ddc19c6c4ee800c0c4b084ceb04a47fd24f28c3095909219e27634e66086158f80f011ccfb7865fc559a966770bfa95d3a8fd144f3f8a3d34571d -DIST gdal-2.0.3.tar.gz 11589011 BLAKE2B 2b9d319be24e377aff751c7ae4d6c89812c47fe2a0b9476936b2f3423e4f5593034a6303346e05709c9a7cffd71703ae80f72c689218ae0337794d35afcb3a1d SHA512 3ed2a084fa146fab8d5f5e039480ab935edaefebe9e55f85bf637a4487a3f56951c93055395850e7bf35d5a6d6e901f741ae01ad64be87597aabfad52f1c5e90 DIST gdal-2.2.3.tar.gz 13754766 BLAKE2B d9482e7ee40bb5558fbbb43b750dfb95344abe45142c19e1f767535d3fc127fa9d6ed4496d730a25cb4132980efbffb4685e8663798fa05515b8548edb689e42 SHA512 841e5ba3c1a442b678dcaabac719ea7707b817f3dc717a34430dc7ba1f2c27fa88e27b7a8645075fae6e16373b36e6c50f674bdd6b70d10059e6bc4be7a72046 -EBUILD gdal-2.0.3.ebuild 7525 BLAKE2B aa70d3e8b2bfb3213ea247f9c3c838a72cdf5e74061b6b4aa873726e14242f1d9635fc45436bebbbcaad443c89f0ad01546d02ad0f3d98238f2f8d4a006c2600 SHA512 eef801d86c845a1b880dee6aa20381ff06175d0c6b88431230e23ef772a5618455361dc6f38c5a7808d5dc97eb51cfb1fd9bf751b2d875d44d387f60fbf7685f EBUILD gdal-2.2.3-r1.ebuild 7470 BLAKE2B f15775486bb8a47e11191d3fb361f25f3b82fac5a6d81e2fa4e1b3161a5b9b0ace3b70c912304ed2da3d6821ea4500367ffa5919844e7e5159bf3e7c2563beb9 SHA512 dfbf230bf61217897c873a5c5feb54189a434ab783f259d8ccb293c72c7443ceec9509dfae55539088ecceea221406df3b6e76675e088c3f46daa625c2cdd693 MISC metadata.xml 1522 BLAKE2B b67678f81739e2fb2866cc6ca49545368fce4a85b145ba3f8228b8a39ecb2d7f75b55500f13768838c9ed11a47f586ab7b05eb31e2dbf6fcd4d29c5d8896107f SHA512 091112e555a5a77c5643cbd4465046bfd9fe287e209b42f5410787a2f1a2e4d7ec640efad93c277f0f6581db2264fa104d5aba2e8cbc4126c2c14fe4d86afcee diff --git a/sci-libs/gdal/files/gdal-1.5.0-soname-r1.patch b/sci-libs/gdal/files/gdal-1.5.0-soname-r1.patch deleted file mode 100644 index ec35018868dd..000000000000 --- a/sci-libs/gdal/files/gdal-1.5.0-soname-r1.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- old/GDALmake.opt.in.orig 2008-02-02 18:25:48.000000000 -0800 -+++ new/GDALmake.opt.in 2008-02-02 18:54:53.000000000 -0800 -@@ -97,6 +97,10 @@ - GDAL_SLIB = $(GDAL_ROOT)/libgdal.$(SO_EXT) - GDAL_SLIB_LINK = -L$(GDAL_ROOT) -lgdal - -+# for building without libtool -+GDAL_SLIB_SO_VER = $(GDAL_VERSION_MAJOR).$(LIBGDAL_CURRENT).$(LIBGDAL_REVISION) -+GDAL_SLIB_SONAME = -Wl,-soname,libgdal.$(SO_EXT).$(GDAL_VERSION_MAJOR) -+ - # Mac OS X Framework definition - MACOSX_FRAMEWORK = @MACOSX_FRAMEWORK@ - diff --git a/sci-libs/gdal/files/gdal-2.0.3-add-dlopen-support-for-jvm.patch b/sci-libs/gdal/files/gdal-2.0.3-add-dlopen-support-for-jvm.patch deleted file mode 100644 index 7c35d1cb1242..000000000000 --- a/sci-libs/gdal/files/gdal-2.0.3-add-dlopen-support-for-jvm.patch +++ /dev/null @@ -1,232 +0,0 @@ -From baba2c213770972e79be6be4902716278f351fb4 Mon Sep 17 00:00:00 2001 -From: James Le Cuirot <chewi@gentoo.org> -Date: Wed, 24 Aug 2016 23:32:13 +0100 -Subject: [PATCH 1/2] Allow libjvm.so to be dlopen'd with --with-jvm-lib=dlopen - -Having to set LD_LIBRARY_PATH is a pain and relying on the rpath can -be problematic when libjvm.so lives in a versioned directory. Some -distributions even allow per-user JVM selection so checking the value -of JAVA_HOME at runtime allows this choice to be respected. - -libjvm.so's location is hard to predict (amd64 vs i386, jre or not?) -so ${JAVA_HOME}/bin/java -XshowSettings is executed to find its -location. If JAVA_HOME is not set then java is executed from the PATH -instead. ---- - gdal/configure | 11 +++++- - gdal/configure.in | 7 +++- - gdal/ogr/ogrsf_frmts/mdb/ogrmdbjackcess.cpp | 57 +++++++++++++++++++++++++++-- - gdal/port/cpl_config.h.in | 3 ++ - 4 files changed, 71 insertions(+), 7 deletions(-) - -diff --git a/configure b/configure -index 75e4e279de..acdfa439de 100755 ---- a/configure -+++ b/configure -@@ -1753,7 +1753,7 @@ Optional Packages: - --with-python=ARG Enable python bindings (ARG=yes, no, or path to python binary) - --with-java Include Java support (ARG=yes, no or JDK home path) [default=no] - --with-mdb Include MDB driver -- --with-jvm-lib=ARG ARG points to Java libjvm path -+ --with-jvm-lib=ARG ARG is dlopen or points to Java libjvm path - --with-jvm-lib-add-rpath Add the libjvm path to the RPATH (no by default) - --with-rasdaman=DIR Include rasdaman support (DIR is rasdaman's install dir). - --with-armadillo=ARG Include Armadillo support for faster TPS transform computation (ARG=yes/no/path to armadillo install root) [default=no] -@@ -29491,7 +29491,14 @@ if test "${with_jvm_lib_add_rpath+set}" = set; then : - fi - - -- if test "x$with_jvm_lib" != "x"; then -+ if test "x$with_jvm_lib" = "xdlopen"; then -+ -+cat >>confdefs.h <<_ACEOF -+#define JVM_LIB_DLOPEN 1 -+_ACEOF -+ -+ JVM_LIB="-ldl" -+ elif test "x$with_jvm_lib" != "x"; then - if test -d "$with_jvm_lib"; then - saved_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -L$with_jvm_lib" -diff --git a/configure.in b/configure.in -index 91efa5a32a..546ff04049 100644 ---- a/configure.in -+++ b/configure.in -@@ -4213,11 +4213,14 @@ if test "$with_mdb" = "yes" ; then - AC_MSG_ERROR("--with-java must be specified.") - fi - -- AC_ARG_WITH(jvm-lib, [ --with-jvm-lib=[ARG] ARG points to Java libjvm path],,) -+ AC_ARG_WITH(jvm-lib, [ --with-jvm-lib=[ARG] ARG is dlopen or points to Java libjvm path],,) - - AC_ARG_WITH(jvm-lib-add-rpath,[ --with-jvm-lib-add-rpath Add the libjvm path to the RPATH (no by default)],,) - -- if test "x$with_jvm_lib" != "x"; then -+ if test "x$with_jvm_lib" = "xdlopen"; then -+ AC_DEFINE_UNQUOTED(JVM_LIB_DLOPEN, 1, [Define to 1 if libjvm.so should be dlopen'd]) -+ JVM_LIB="-ldl" -+ elif test "x$with_jvm_lib" != "x"; then - if test -d "$with_jvm_lib"; then - saved_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -L$with_jvm_lib" -diff --git a/ogr/ogrsf_frmts/mdb/ogrmdbjackcess.cpp b/ogr/ogrsf_frmts/mdb/ogrmdbjackcess.cpp -index b068adf777..bc54a115df 100644 ---- a/ogr/ogrsf_frmts/mdb/ogrmdbjackcess.cpp -+++ b/ogr/ogrsf_frmts/mdb/ogrmdbjackcess.cpp -@@ -29,6 +29,11 @@ - - #include "ogr_mdb.h" - -+#if JVM_LIB_DLOPEN -+#include <limits.h> -+#include <stdio.h> -+#endif -+ - CPL_CVSID("$Id: ogrmdbjackcess.cpp 27044 2014-03-16 23:41:27Z rouault $"); - - static JavaVM *jvm_static = NULL; -@@ -161,9 +166,41 @@ int OGRMDBJavaEnv::Init() - { - JavaVM* vmBuf[1]; - jsize nVMs; -+ int ret = 0; -+ -+#if JVM_LIB_DLOPEN -+ const char *jvmLibPtr = "libjvm.so"; -+ char jvmLib[PATH_MAX]; -+ -+ FILE *javaCmd = popen("\"${JAVA_HOME}${JAVA_HOME:+/bin/}java\" -XshowSettings 2>&1 | sed -n '/\\bsun\\.boot\\.library\\.path =/s:.* = \\(.*\\):\\1/server/libjvm.so:p'", "r"); -+ -+ if (javaCmd != NULL) -+ { -+ size_t javaCmdRead = fread(jvmLib, 1, PATH_MAX, javaCmd); -+ ret = pclose(javaCmd); -+ -+ if (ret == 0 && javaCmdRead >= 2) -+ { -+ /* Chomp the new line */ -+ jvmLib[javaCmdRead - 1] = '\0'; -+ jvmLibPtr = jvmLib; -+ } -+ } -+ -+ jint (*pfnJNI_GetCreatedJavaVMs)(JavaVM **, jsize, jsize *); -+ pfnJNI_GetCreatedJavaVMs = (jint (*)(JavaVM **, jsize, jsize *)) -+ CPLGetSymbol(jvmLibPtr, "JNI_GetCreatedJavaVMs"); -+ -+ if (pfnJNI_GetCreatedJavaVMs == NULL) -+ return FALSE; -+ else -+ ret = pfnJNI_GetCreatedJavaVMs(vmBuf, 1, &nVMs); -+#else -+ ret = JNI_GetCreatedJavaVMs(vmBuf, 1, &nVMs); -+#endif - - /* Are we already called from Java ? */ -- if (JNI_GetCreatedJavaVMs(vmBuf, 1, &nVMs) == JNI_OK && nVMs == 1) -+ if (ret == JNI_OK && nVMs == 1) - { - jvm = vmBuf[0]; - if (jvm->GetEnv((void **)&env, JNI_VERSION_1_2) == JNI_OK) -@@ -194,8 +231,22 @@ int OGRMDBJavaEnv::Init() - args.nOptions = 0; - args.ignoreUnrecognized = JNI_FALSE; - -- int ret = JNI_CreateJavaVM(&jvm, (void **)&env, &args); -- if (ret != 0 || jvm == NULL || env == NULL) -+#if JVM_LIB_DLOPEN -+ jint (*pfnJNI_CreateJavaVM)(JavaVM **, void **, void *); -+ pfnJNI_CreateJavaVM = (jint (*)(JavaVM **, void **, void *)) -+ CPLGetSymbol(jvmLibPtr, "JNI_CreateJavaVM"); -+ -+ if (pfnJNI_CreateJavaVM == NULL) -+ return FALSE; -+ else -+ ret = pfnJNI_CreateJavaVM(&jvm, (void **)&env, &args); -+#else -+ ret = JNI_CreateJavaVM(&jvm, (void **)&env, &args); -+#endif -+ -+ CPLFree(pszClassPathOption); -+ -+ if (ret != JNI_OK || jvm == NULL || env == NULL) - { - CPLError(CE_Failure, CPLE_AppDefined, "JNI_CreateJavaVM failed (%d)", ret); - return FALSE; -diff --git a/port/cpl_config.h.in b/port/cpl_config.h.in -index 313729fd3e..e8fa21140a 100644 ---- a/port/cpl_config.h.in -+++ b/port/cpl_config.h.in -@@ -161,6 +161,9 @@ - /* For .cpp files, define as const if the declaration of iconv() needs const. */ - #undef ICONV_CPP_CONST - -+/* Define to 1 if libjvm.so should be dlopen'd */ -+#undef JVM_LIB_DLOPEN -+ - /* Define to the sub-directory in which libtool stores uninstalled libraries. - */ - #undef LT_OBJDIR --- -2.11.0 - - -From cd6bbb60ced62b6176482e86c54ab618e2592ac8 Mon Sep 17 00:00:00 2001 -From: James Le Cuirot <chewi@gentoo.org> -Date: Thu, 25 Aug 2016 21:26:20 +0100 -Subject: [PATCH 2/2] Fetch jackcess classpath using java-config instead of - using CLASSPATH - ---- - gdal/ogr/ogrsf_frmts/mdb/ogrmdbjackcess.cpp | 26 ++++++++++++++++++++++---- - 1 file changed, 22 insertions(+), 4 deletions(-) - -diff --git a/ogr/ogrsf_frmts/mdb/ogrmdbjackcess.cpp b/ogr/ogrsf_frmts/mdb/ogrmdbjackcess.cpp -index bc54a115df..5b0972677e 100644 ---- a/ogr/ogrsf_frmts/mdb/ogrmdbjackcess.cpp -+++ b/ogr/ogrsf_frmts/mdb/ogrmdbjackcess.cpp -@@ -218,19 +218,37 @@ int OGRMDBJavaEnv::Init() - JavaVMInitArgs args; - JavaVMOption options[1]; - args.version = JNI_VERSION_1_2; -- const char* pszClassPath = CPLGetConfigOption("CLASSPATH", NULL); -- CPLString osClassPathOption; -+ -+ FILE *javaCmd = popen("java-config --with-dependencies --classpath=jackcess-1", "r"); -+ -+ const char* pszClassPath = NULL; -+ if (javaCmd != NULL) -+ { -+ pszClassPath = CPLReadLine(javaCmd); -+ ret = pclose(javaCmd); -+ -+ if (ret != 0) -+ pszClassPath = NULL; -+ } -+ -+ if (pszClassPath == NULL) -+ pszClassPath = CPLGetConfigOption("CLASSPATH", NULL); -+ -+ char* pszClassPathOption = NULL; - if (pszClassPath) - { - args.nOptions = 1; -- osClassPathOption.Printf("-Djava.class.path=%s", pszClassPath); -- options[0].optionString = (char*) osClassPathOption.c_str(); -+ pszClassPathOption = CPLStrdup(CPLSPrintf("-Djava.class.path=%s", pszClassPath)); -+ options[0].optionString = pszClassPathOption; - args.options = options; - } - else - args.nOptions = 0; - args.ignoreUnrecognized = JNI_FALSE; - -+ if (javaCmd != NULL) -+ CPLReadLine(NULL); -+ - #if JVM_LIB_DLOPEN - jint (*pfnJNI_CreateJavaVM)(JavaVM **, void **, void *); - pfnJNI_CreateJavaVM = (jint (*)(JavaVM **, void **, void *)) --- -2.11.0 - diff --git a/sci-libs/gdal/files/gdal-2.0.3-install_name.patch b/sci-libs/gdal/files/gdal-2.0.3-install_name.patch deleted file mode 100644 index 1e83d55ecf7d..000000000000 --- a/sci-libs/gdal/files/gdal-2.0.3-install_name.patch +++ /dev/null @@ -1,49 +0,0 @@ -Unbreak compilation on Darwin - -Author: Fabian Groffen <grobian@gentoo.org> - ---- gdal-2.0.3.old/GDALmake.opt.in -+++ gdal-2.0.3/GDALmake.opt.in -@@ -104,6 +104,10 @@ GDAL_LIB = $(GDAL_ROOT)/libgdal.a - GDAL_SLIB = $(GDAL_ROOT)/libgdal.$(SO_EXT) - GDAL_SLIB_LINK = -L$(GDAL_ROOT) -lgdal - -+# for building without libtool -+GDAL_SLIB_SO_VER = $(GDAL_VERSION_MAJOR).$(LIBGDAL_CURRENT).$(LIBGDAL_REVISION) -+GDAL_SLIB_SONAME = -install_name $(INST_LIB)/libgdal.$(GDAL_VERSION_MAJOR).$(SO_EXT) -+ - # Mac OS X Framework definition - MACOSX_FRAMEWORK = @MACOSX_FRAMEWORK@ - ---- gdal-2.0.3.old/GNUmakefile -+++ gdal-2.0.3/GNUmakefile -@@ -208,7 +208,7 @@ else - - ifeq ($(HAVE_LD_SHARED),yes) - --GDAL_SLIB_B = $(notdir $(GDAL_SLIB)) -+GDAL_SLIB_B = libgdal - - install-lib: - -@@ -216,14 +216,14 @@ install-lib: - ifeq ($(MACOSX_FRAMEWORK),yes) - $(INSTALL_LIB) $(GDAL_SLIB) $(DESTDIR)$(INST_LIB)/GDAL - else -- rm -f $(DESTDIR)$(INST_LIB)/$(GDAL_SLIB_B) -- rm -f $(DESTDIR)$(INST_LIB)/$(GDAL_SLIB_B).$(GDAL_VERSION_MAJOR) -- rm -f $(DESTDIR)$(INST_LIB)/$(GDAL_SLIB_B).$(GDAL_VER) -- $(INSTALL_LIB) $(GDAL_SLIB) $(DESTDIR)$(INST_LIB)/$(GDAL_SLIB_B).$(GDAL_VER) -+ rm -f $(DESTDIR)$(INST_LIB)/$(GDAL_SLIB_B).dylib -+ rm -f $(DESTDIR)$(INST_LIB)/$(GDAL_SLIB_B).$(GDAL_VERSION_MAJOR).dylib -+ rm -f $(DESTDIR)$(INST_LIB)/$(GDAL_SLIB_B).$(GDAL_VER).dylib -+ $(INSTALL_LIB) $(GDAL_SLIB) $(DESTDIR)$(INST_LIB)/$(GDAL_SLIB_B).$(GDAL_VER).dylib - (cd $(DESTDIR)$(INST_LIB) ; \ -- ln -s $(GDAL_SLIB_B).$(GDAL_VER) $(GDAL_SLIB_B).$(GDAL_VERSION_MAJOR)) -+ ln -s $(GDAL_SLIB_B).$(GDAL_VER).dylib $(GDAL_SLIB_B).$(GDAL_VERSION_MAJOR).dylib) - (cd $(DESTDIR)$(INST_LIB) ; \ -- ln -s $(GDAL_SLIB_B).$(GDAL_VERSION_MAJOR) $(GDAL_SLIB_B)) -+ ln -s $(GDAL_SLIB_B).$(GDAL_VERSION_MAJOR).dylib $(GDAL_SLIB_B).dylib) - $(INSTALL_DIR) $(DESTDIR)$(INST_LIB)/gdalplugins - endif - diff --git a/sci-libs/gdal/gdal-2.0.3.ebuild b/sci-libs/gdal/gdal-2.0.3.ebuild deleted file mode 100644 index ee3dfedc4d87..000000000000 --- a/sci-libs/gdal/gdal-2.0.3.ebuild +++ /dev/null @@ -1,291 +0,0 @@ -# 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} ) -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" -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 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 ) - 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/setuptools[${PYTHON_USEDEP}] - dev-python/numpy[${PYTHON_USEDEP}] - ) - sqlite? ( dev-db/sqlite:3 ) - spatialite? ( dev-db/spatialite ) - 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 )" - -REQUIRED_USE="mdb? ( java ) - python? ( ${PYTHON_REQUIRED_USE} ) - spatialite? ( sqlite ) -" - -src_prepare() { - local PATCHES=() - local PATCHES=( "${FILESDIR}"/gdal-2.0.3-add-dlopen-support-for-jvm.patch ) - - # -soname is only accepted by GNU ld/ELF - if [[ ${CHOST} == *-darwin* ]]; then - PATCHES+=( "${FILESDIR}"/${PN}-2.0.3-install_name.patch ) - else - PATCHES+=( "${FILESDIR}"/${PN}-1.5.0-soname-r1.patch ) - fi - - # fix datadir and docdir placement - sed -i \ - -e "s:@datadir@:@datadir@/gdal:" \ - -e "s:@exec_prefix@/doc:@exec_prefix@/share/doc/${PF}/html:g" \ - "${S}"/GDALmake.opt.in || die - - # the second sed expression should fix bug 371075 - sed -i \ - -e "s:setup.py install:setup.py install --root=\$(DESTDIR):" \ - -e "s:--prefix=\$(DESTDIR):--prefix=:" \ - "${S}"/swig/python/GNUmakefile || die - - # Fix spatialite/sqlite include issue - sed -i \ - -e 's:spatialite/sqlite3.h:sqlite3.h:g' \ - ogr/ogrsf_frmts/sqlite/ogr_sqlite.h || die - - # Fix freexl configure check - sed -i \ - -e 's:FREEXL_LIBS=missing):FREEXL_LIBS=missing,-lm):g' \ - configure.in || die - - sed \ - -e "s: /usr/: \"${EPREFIX}\"/usr/:g" \ - -i configure.in || 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 -i \ - -e "s: gdal_array.i: ../include/gdal_array.i:" \ - -e "s:\$(DESTDIR)\$(prefix):\$(DESTDIR)\$(INST_PREFIX):g" \ - swig/python/GNUmakefile || die "sed python makefile failed" - sed -i \ - -e "s:library_dirs = :library_dirs = /usr/$(get_libdir):g" \ - swig/python/setup.cfg || die "sed python setup.cfg failed" - - default - - # bug 626844, poppler headers require C++11 - use pdf && append-cxxflags -std=c++11 - - tc-export AR RANLIB - - mv configure.{in,ac} || die - - eautoreconf -} - -src_configure() { - 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 - myopts+=" 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-static \ - --enable-shared \ - --with-expat \ - --with-geotiff \ - --with-grib \ - --with-libtiff \ - --with-libz="${EPREFIX}/usr/" \ - --with-ogr \ - --without-bsb \ - --without-dods-root \ - --without-dwgdirect \ - --without-epsilon \ - --without-fme \ - --without-grass \ - --without-hdf4 \ - --without-idb \ - --without-ingres \ - --without-jasper \ - --without-jp2mrsid \ - --without-kakadu \ - --without-libtool \ - --without-mrsid \ - --without-msg \ - --without-pcraster \ - --without-podofo \ - --without-sde \ - $(use_enable debug) \ - $(use_with armadillo) \ - $(use_with aux_xml pam) \ - $(use_with curl) \ - --without-ecw \ - $(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 pdf poppler) \ - $(use_with perl) \ - $(use_with png) \ - $(use_with postgres pg) \ - $(use_with python) \ - $(use_with spatialite) \ - $(use_with sqlite sqlite3 "${EPREFIX}"/usr) \ - $(use_with threads) \ - $(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 -i \ - -e "s: -rdynamic : :" \ - 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 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)." -} |