public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-libs/gdal/files/, sci-libs/gdal/
Date: Fri, 28 May 2021 03:47:19 +0000 (UTC)	[thread overview]
Message-ID: <1622173632.7db9d431bcdf4ec1cf079d3d3f271dddbe68208a.sam@gentoo> (raw)

commit:     7db9d431bcdf4ec1cf079d3d3f271dddbe68208a
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri May 28 03:44:09 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri May 28 03:47:12 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7db9d431

sci-libs/gdal: add 3.3.0

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sci-libs/gdal/Manifest                             |   1 +
 .../files/gdal-3.3.0-configure-geos-disable.patch  | 187 ++++++++++
 sci-libs/gdal/files/gdal-3.3.0-libdir.patch        | 392 +++++++++++++++++++++
 sci-libs/gdal/gdal-3.3.0.ebuild                    | 317 +++++++++++++++++
 4 files changed, 897 insertions(+)

diff --git a/sci-libs/gdal/Manifest b/sci-libs/gdal/Manifest
index e23b24d8734..a5e15147c50 100644
--- a/sci-libs/gdal/Manifest
+++ b/sci-libs/gdal/Manifest
@@ -1,3 +1,4 @@
 DIST gdal-3.2.1.tar.gz 18953600 BLAKE2B b47994849bcf6bc2b2f53daabb85ef99cdc9ce2a06134bc591652bf7e5304d503701d2b07cae520ca71ad6238dd0b073d2034743e59b072fc5eb50c13bc143e6 SHA512 152dd97464a8242ea1da7a3a215b1d3326bab5aa4b0884fcab6880da460577c80075f87ea7b9513d796e899e98b40701c0b6a63f1e5275607905480ec547e688
 DIST gdal-3.2.2.tar.gz 18959415 BLAKE2B 001347ee12c72fe4d9cfa27adb427624f80e5b16eeca01510166e3d74c36eb00da72c27d8582ccda124151143561c29b8e59dc3dd800c474b77991417b33acd1 SHA512 d7ff8773d3f1cb894fce89f56a3d4355769f1113eefb1367a3a543ced750e2c42618a4a1deef3a338ddd4d33b7332ae962b2d793f8c0b97e31ed4b84cb2df2d5
 DIST gdal-3.2.3.tar.gz 18970990 BLAKE2B 9f2ac15b7e9d2df0393d15734030ec4777579aa01fcf2700958228b24fd50d574f3bd438c03e767549614a699c362b31f38cbb0f32ceb8056c9b55fab11ecfec SHA512 985a058a53f676f7d49a96d1a48d4f93c5da8548012bf81345afde03d8044022b210484290bca70c3d7a1ef3b0087d9e17c636b5badd1e0816c1f59b1bf21ee8
+DIST gdal-3.3.0.tar.gz 19572446 BLAKE2B afc7ce3c2191fb7607fdf3a01e7ed3e83c601fa063019015f666e0c550e4e42129b8782568f20f97422308f95b4e5c3dbd2311d562b7ec0830635e47e7c931b4 SHA512 39505c07aaf4dac587a189a979462101a7acba41e8732031540ebad02e089820658943ebb48c20f4ea56548363033b2db2f03f41c8a91ff5c5997a19b5eb999e

diff --git a/sci-libs/gdal/files/gdal-3.3.0-configure-geos-disable.patch b/sci-libs/gdal/files/gdal-3.3.0-configure-geos-disable.patch
new file mode 100644
index 00000000000..1671845707a
--- /dev/null
+++ b/sci-libs/gdal/files/gdal-3.3.0-configure-geos-disable.patch
@@ -0,0 +1,187 @@
+https://github.com/OSGeo/gdal/commit/b414b0a0594b3e9c175a001e8455819463039eb6.patch
+https://github.com/OSGeo/gdal/issues/3782
+
+From b414b0a0594b3e9c175a001e8455819463039eb6 Mon Sep 17 00:00:00 2001
+From: Thomas Bonfort <thomas.bonfort@airbus.com>
+Date: Tue, 4 May 2021 08:13:45 +0200
+Subject: [PATCH] configure: fix explicit disabling of geos/sfcgal
+--- a/configure
++++ b/configure
+@@ -38323,6 +38323,7 @@ fi
+     { $as_echo "$as_me:${as_lineno-$LINENO}: result: GEOS support disabled" >&5
+ $as_echo "GEOS support disabled" >&6; }
+     GEOS_CONFIG=no
++    HAVE_GEOS=no
+ 
+   elif test x"$with_geos" = x"yes" -o x"$with_geos" = x"" ; then
+ 
+@@ -38580,15 +38581,13 @@ $as_echo "$as_me: WARNING: GEOS was found on your system, but the library could
+ 
+   else
+ 
+-    if test $ac_geos_config_auto = "no" ; then
++    if test x"$with_geos" != x"no" -a x"$with_geos" != x ; then
+       as_fn_error $? "GEOS support explicitly enabled, but geos-config could not be found" "$LINENO" 5
+     fi
+ 
+   fi
+ 
+-HAVE_GEOS_RESULT="no"
+ if test "${HAVE_GEOS}" = "yes" ; then
+-
+   { $as_echo "$as_me:${as_lineno-$LINENO}: Using C API from GEOS $GEOS_VERSION" >&5
+ $as_echo "$as_me: Using C API from GEOS $GEOS_VERSION" >&6;}
+ 
+@@ -38602,7 +38601,6 @@ $as_echo "$as_me: Using C API from GEOS $GEOS_VERSION" >&6;}
+ 
+   GEOS_LIBS="$STRIPPED_LIBRARY_NAME"
+   LIBS="${GEOS_LIBS} ${LIBS}"
+-  HAVE_GEOS_RESULT="yes"
+ fi
+ 
+ 
+@@ -38625,6 +38623,7 @@ fi
+ 
+     { $as_echo "$as_me:${as_lineno-$LINENO}: result: SFCGAL support disabled" >&5
+ $as_echo "SFCGAL support disabled" >&6; }
++    HAVE_SFCGAL=no
+     SFCGAL_CONFIG=no
+ 
+   elif test x"$with_sfcgal" = x"yes" -o x"$with_sfcgal" = x"" ; then
+@@ -38883,15 +38882,13 @@ $as_echo "$as_me: WARNING: SFCGAL was found on your system, but the library coul
+ 
+   else
+ 
+-    if test $ac_sfcgal_config_auto = "no" ; then
++    if test x"$with_sfcgal" != x"no" -a x"$with_sfcgal" != x ; then
+       as_fn_error $? "SFCGAL support explicitly enabled, but sfcgal-config could not be found" "$LINENO" 5
+     fi
+ 
+   fi
+ 
+-HAVE_SFCGAL_RESULT="no"
+ if test "${HAVE_SFCGAL}" = "yes" ; then
+-
+   { $as_echo "$as_me:${as_lineno-$LINENO}: Using C API from SFCGAL $SFCGAL_VERSION" >&5
+ $as_echo "$as_me: Using C API from SFCGAL $SFCGAL_VERSION" >&6;}
+ 
+@@ -38905,7 +38902,6 @@ $as_echo "$as_me: Using C API from SFCGAL $SFCGAL_VERSION" >&6;}
+ 
+   SFCGAL_LIBS="$STRIPPED_LIBRARY_NAME"
+   LIBS="${SFCGAL_LIBS} ${LIBS}"
+-  HAVE_SFCGAL_RESULT="yes"
+ fi
+ 
+ 
+@@ -44998,7 +44994,7 @@ echo "  FreeXL support:            ${HAVE_FREEXL}"
+ echo "  GEORASTER support:         ${HAVE_GEORASTER}"
+ 
+ 
+-echo "  GEOS support:              ${HAVE_GEOS_RESULT}"
++echo "  GEOS support:              ${HAVE_GEOS}"
+ 
+ 
+ echo "  Google libkml support:     ${HAVE_LIBKML}"
+@@ -45162,7 +45158,7 @@ echo "  RasterLite2 support:       ${HAVE_RASTERLITE2}"
+ echo "  RDB support:               ${RDB_SETTING}"
+ 
+ 
+-echo "  SFCGAL support:            ${HAVE_SFCGAL_RESULT}"
++echo "  SFCGAL support:            ${HAVE_SFCGAL}"
+ 
+ 
+ echo "  SOSI support:              ${SOSI_ENABLED}"
+diff --git a/configure.ac b/configure.ac
+index ffc71b7faf76..1f88370c4045 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -4541,14 +4541,11 @@ dnl Check if geos library is available.
+ dnl ---------------------------------------------------------------------------
+ 
+ GEOS_INIT(3.1.0)
+-HAVE_GEOS_RESULT="no"
+ if test "${HAVE_GEOS}" = "yes" ; then
+-
+   AC_MSG_NOTICE([Using C API from GEOS $GEOS_VERSION])
+   STRIP_SYSTEM_LIBRARY_PATHS("${GEOS_LIBS}")
+   GEOS_LIBS="$STRIPPED_LIBRARY_NAME"
+   LIBS="${GEOS_LIBS} ${LIBS}"
+-  HAVE_GEOS_RESULT="yes"
+ fi
+ 
+ dnl ---------------------------------------------------------------------------
+@@ -4556,14 +4553,11 @@ dnl Check if SFCGAL library is available.
+ dnl ---------------------------------------------------------------------------
+ 
+ SFCGAL_INIT(1.2.2)
+-HAVE_SFCGAL_RESULT="no"
+ if test "${HAVE_SFCGAL}" = "yes" ; then
+-
+   AC_MSG_NOTICE([Using C API from SFCGAL $SFCGAL_VERSION])
+   STRIP_SYSTEM_LIBRARY_PATHS("${SFCGAL_LIBS}")
+   SFCGAL_LIBS="$STRIPPED_LIBRARY_NAME"
+   LIBS="${SFCGAL_LIBS} ${LIBS}"
+-  HAVE_SFCGAL_RESULT="yes"
+ fi
+ 
+ dnl ---------------------------------------------------------------------------
+@@ -6077,7 +6071,7 @@ LOC_MSG([  EXR support:               ${HAVE_EXR}])
+ LOC_MSG([  FGDB support:              ${FGDB_ENABLED}])
+ LOC_MSG([  FreeXL support:            ${HAVE_FREEXL}])
+ LOC_MSG([  GEORASTER support:         ${HAVE_GEORASTER}])
+-LOC_MSG([  GEOS support:              ${HAVE_GEOS_RESULT}])
++LOC_MSG([  GEOS support:              ${HAVE_GEOS}])
+ LOC_MSG([  Google libkml support:     ${HAVE_LIBKML}])
+ LOC_MSG([  GRASS support:             ${GRASS_SETTING}])
+ LOC_MSG([  GTA support:               ${GTA_SETTING}])
+@@ -6135,7 +6129,7 @@ LOC_MSG([  QHull support:             ${QHULL_SETTING}])
+ LOC_MSG([  Rasdaman support:          ${RASDAMAN_ENABLED}])
+ LOC_MSG([  RasterLite2 support:       ${HAVE_RASTERLITE2}])
+ LOC_MSG([  RDB support:               ${RDB_SETTING}])
+-LOC_MSG([  SFCGAL support:            ${HAVE_SFCGAL_RESULT}])
++LOC_MSG([  SFCGAL support:            ${HAVE_SFCGAL}])
+ LOC_MSG([  SOSI support:              ${SOSI_ENABLED}])
+ LOC_MSG([  SpatiaLite support:        ${HAVE_SPATIALITE}])
+ if test "x$SPATIALITE_SONAME" != "x"; then
+diff --git a/m4/geos.m4 b/m4/geos.m4
+index 1c685039740e..608466c67c69 100644
+--- a/m4/geos.m4
++++ b/m4/geos.m4
+@@ -55,6 +55,7 @@ AC_DEFUN([GEOS_INIT],[
+ 
+     AC_MSG_RESULT([GEOS support disabled])
+     GEOS_CONFIG=no
++    HAVE_GEOS=no
+ 
+   elif test x"$with_geos" = x"yes" -o x"$with_geos" = x"" ; then
+ 
+@@ -160,7 +161,7 @@ AC_DEFUN([GEOS_INIT],[
+ 
+   else
+ 
+-    if test $ac_geos_config_auto = "no" ; then
++    if test x"$with_geos" != x"no" -a x"$with_geos" != x ; then
+       AC_MSG_ERROR([GEOS support explicitly enabled, but geos-config could not be found])
+     fi
+ 
+diff --git a/m4/sfcgal.m4 b/m4/sfcgal.m4
+index 2384f0f0dc5d..1a8d26460ce7 100644
+--- a/m4/sfcgal.m4
++++ b/m4/sfcgal.m4
+@@ -53,6 +53,7 @@ AC_DEFUN([SFCGAL_INIT],[
+   if test x"$with_sfcgal" = x"no" ; then
+ 
+     AC_MSG_RESULT([SFCGAL support disabled])
++    HAVE_SFCGAL=no
+     SFCGAL_CONFIG=no
+ 
+   elif test x"$with_sfcgal" = x"yes" -o x"$with_sfcgal" = x"" ; then
+@@ -159,7 +160,7 @@ AC_DEFUN([SFCGAL_INIT],[
+ 
+   else
+ 
+-    if test $ac_sfcgal_config_auto = "no" ; then
++    if test x"$with_sfcgal" != x"no" -a x"$with_sfcgal" != x ; then
+       AC_MSG_ERROR([SFCGAL support explicitly enabled, but sfcgal-config could not be found])
+     fi
+ 

diff --git a/sci-libs/gdal/files/gdal-3.3.0-libdir.patch b/sci-libs/gdal/files/gdal-3.3.0-libdir.patch
new file mode 100644
index 00000000000..cd75a39f319
--- /dev/null
+++ b/sci-libs/gdal/files/gdal-3.3.0-libdir.patch
@@ -0,0 +1,392 @@
+[Dropped a few hunks for this to apply for now. Needs some rework to send upstream.]
+
+https://github.com/OSGeo/gdal/pull/3560
+https://bugs.gentoo.org/696106
+--- a/configure.ac
++++ b/configure.ac
+@@ -1121,11 +1121,11 @@ if test "$with_libz" = "external" -o "$with_libz" = "" -o "$with_libz" = "yes" ;
+ 
+ elif test "$with_libz" != "no" -a "$with_libz" != "internal" ; then
+ 
+-  LIBS="-L$with_libz -L$with_libz/lib $LIBS"
++  LIBS="-L$with_libz -L$with_libz/${libdir} $LIBS"
+ 
+-  AC_CHECK_LIB(z,deflateInit_,LIBZ_SETTING=external,LIBZ_SETTING=internal,-L$with_libz -L$with_libz/lib -lz)
++  AC_CHECK_LIB(z,deflateInit_,LIBZ_SETTING=external,LIBZ_SETTING=internal,-L$with_libz -L$with_libz/${libdir} -lz)
+   if test "$LIBZ_SETTING" = "external" ; then
+-    AC_CHECK_LIB(z,inflateCopy,LIBZ_SETTING=external,LIBZ_SETTING=internal,-L$with_libz -L$with_libz/lib -lz)
++    AC_CHECK_LIB(z,inflateCopy,LIBZ_SETTING=external,LIBZ_SETTING=internal,-L$with_libz -L$with_libz/${libdir} -lz)
+      if test "$LIBZ_SETTING" = "external" ; then
+         AC_MSG_RESULT([using libz library from $with_libz])
+     else
+@@ -1166,7 +1166,7 @@ AC_ARG_WITH(libdeflate,
+ if test "$with_libdeflate" != "no" ; then
+ 
+   if test "$with_libdeflate" != "" -a "$with_libdeflate" != "yes"; then
+-    AC_CHECK_LIB(deflate, libdeflate_zlib_decompress, [libdeflate_lib=yes], [libdeflate_lib=no],-L$with_libdeflate/lib)
++    AC_CHECK_LIB(deflate, libdeflate_zlib_decompress, [libdeflate_lib=yes], [libdeflate_lib=no],-L$with_libdeflate/${libdir})
+   else
+     AC_CHECK_LIB(deflate, libdeflate_zlib_decompress, [libdeflate_lib=yes], [libdeflate_lib=no])
+   fi
+@@ -1197,7 +1197,7 @@ fi
+ if test "$LIBDEFLATE_SETTING" = "yes" ; then
+   if test "$with_libdeflate" != "" -a "$with_libdeflate" != "yes"; then
+     EXTRA_INCLUDES="-I$with_libdeflate/include $EXTRA_INCLUDES"
+-    LIBS="-L$with_libdeflate/lib -ldeflate $LIBS"
++    LIBS="-L$with_libdeflate/${libdir} -ldeflate $LIBS"
+   else
+     LIBS="-ldeflate $LIBS"
+   fi
+@@ -1290,7 +1290,7 @@ else
+     LIBS="-L$with_libtiff -ltiff $LIBS"
+     EXTRA_INCLUDES="-I$with_libtiff $EXTRA_INCLUDES"
+   else
+-    LIBS="-L$with_libtiff/lib -ltiff $LIBS"
++    LIBS="-L$with_libtiff/${libdir} -ltiff $LIBS"
+     EXTRA_INCLUDES="-I$with_libtiff/include $EXTRA_INCLUDES"
+   fi
+ 
+@@ -1414,52 +1414,22 @@ else
+     fi
+   else
+     ORIG_LIBS="$LIBS"
+-    LIBS="-L$with_proj/lib -lproj $with_proj_extra_lib_for_test $ORIG_LIBS"
++    LIBS="-L$with_proj/${libdir} -lproj $with_proj_extra_lib_for_test $ORIG_LIBS"
+     AC_LANG_PUSH([C++])
+     AC_CHECK_LIB(proj,proj_create_from_wkt,PROJ_FOUND=yes,PROJ_FOUND=no,)
+     AC_LANG_POP([C++])
+     if test "$PROJ_FOUND" = "no"; then
+-        LIBS="-L$with_proj/lib -lproj $with_proj_extra_lib_for_test $ORIG_LIBS"
++        LIBS="-L$with_proj/${libdir} -lproj $with_proj_extra_lib_for_test $ORIG_LIBS"
+         unset ac_cv_lib_proj_proj_create_from_wkt
+         AC_LANG_PUSH([C++])
+         AC_CHECK_LIB(proj,proj_create_from_wkt,PROJ_FOUND=yes,PROJ_FOUND=no,)
+         AC_LANG_POP([C++])
+     fi
+     if test "$PROJ_FOUND" = "no"; then
+-        LIBS="-L$with_proj/lib64 -lproj $with_proj_extra_lib_for_test $ORIG_LIBS"
+-        unset ac_cv_lib_proj_proj_create_from_wkt
+-        AC_LANG_PUSH([C++])
+-        AC_CHECK_LIB(proj,proj_create_from_wkt,PROJ_FOUND=yes,PROJ_FOUND=no,)
+-        AC_LANG_POP([C++])
+-    fi
+-    if test "$PROJ_FOUND" = "no"; then
+-        LIBS="-L$with_proj/lib -lproj $with_proj_extra_lib_for_test $ORIG_LIBS"
++        LIBS="-L$with_proj/${libdir} -lproj $with_proj_extra_lib_for_test $ORIG_LIBS"
+         AC_LANG_PUSH([C++])
+         AC_CHECK_LIB(proj,internal_proj_create_from_wkt,PROJ_FOUND=yes,PROJ_FOUND=no,)
+         AC_LANG_POP([C++])
+-        if test "$PROJ_FOUND" = "no"; then
+-            LIBS="-L$with_proj/lib -lproj $with_proj_extra_lib_for_test $ORIG_LIBS"
+-            unset ac_cv_lib_proj_internal_proj_create_from_wkt
+-            AC_LANG_PUSH([C++])
+-            AC_CHECK_LIB(proj,internal_proj_create_from_wkt,PROJ_FOUND=yes,PROJ_FOUND=no,)
+-            AC_LANG_POP([C++])
+-        fi
+-        if test "$PROJ_FOUND" = "yes"; then
+-            PROJ_INCLUDE="-DPROJ_RENAME_SYMBOLS"
+-        fi
+-    fi
+-    if test "$PROJ_FOUND" = "no"; then
+-        LIBS="-L$with_proj/lib -linternalproj $with_proj_extra_lib_for_test $ORIG_LIBS"
+-        AC_LANG_PUSH([C++])
+-        AC_CHECK_LIB(internalproj,internal_proj_create_from_wkt,PROJ_FOUND=yes,PROJ_FOUND=no,)
+-        AC_LANG_POP([C++])
+-        if test "$PROJ_FOUND" = "no"; then
+-            LIBS="-L$with_proj/lib -linternalproj $with_proj_extra_lib_for_test $ORIG_LIBS"
+-            unset ac_cv_lib_internal_proj_internal_proj_create_from_wkt
+-            AC_LANG_PUSH([C++])
+-            AC_CHECK_LIB(internalproj,internal_proj_create_from_wkt,PROJ_FOUND=yes,PROJ_FOUND=no,)
+-            AC_LANG_POP([C++])
+-        fi
+         if test "$PROJ_FOUND" = "yes"; then
+             PROJ_INCLUDE="-DPROJ_RENAME_SYMBOLS"
+         fi
+@@ -1523,7 +1493,7 @@ elif test "$with_spatialite" = "dlopen"; then
+       SPATIALITE_SONAME="spatialite.so"
+   fi
+ else
+-    AC_CHECK_LIB(spatialite,spatialite_init,SPATIALITE_INIT_FOUND=yes,SPATIALITE_INIT_FOUND=no,-L$with_spatialite/lib -lspatialite)
++    AC_CHECK_LIB(spatialite,spatialite_init,SPATIALITE_INIT_FOUND=yes,SPATIALITE_INIT_FOUND=no,-L$with_spatialite/${libdir} -lspatialite)
+ 
+     if test -f "$with_spatialite/include/spatialite.h" -a \
+         "$SPATIALITE_INIT_FOUND" = "yes"; then
+@@ -1531,7 +1501,7 @@ else
+         if test "$HAVE_SQLITE3" = "yes"; then
+             SPATIALITE_INC="-I$with_spatialite/include"
+             HAVE_SPATIALITE=yes
+-            SPATIALITE_LIBS="-L$with_spatialite/lib -lspatialite"
++            SPATIALITE_LIBS="-L$with_spatialite/${libdir} -lspatialite"
+             LIBS="$SQLITE3_LDFLAGS $LIBS $SPATIALITE_LIBS"
+             AC_MSG_RESULT(spatialite enabled)
+         else
+@@ -1593,10 +1563,10 @@ if test "$with_zstd" = "" -o "$with_zstd" = "yes" ; then
+   fi
+ elif test "$with_zstd" != "" -a "$with_zstd" != "no"; then
+ 
+-  AC_CHECK_LIB(zstd,ZSTD_decompressStream,ZSTD_SETTING=yes,ZSTD_SETTING=no,-L$with_zstd/lib)
++  AC_CHECK_LIB(zstd,ZSTD_decompressStream,ZSTD_SETTING=yes,ZSTD_SETTING=no,-L$with_zstd/${libdir})
+ 
+   if test "$ZSTD_SETTING" = "yes" -a -f "$with_zstd/include/zstd.h" ; then
+-    LIBS="-L$with_zstd/lib -lzstd $LIBS"
++    LIBS="-L$with_zstd/${libdir} -lzstd $LIBS"
+     EXTRA_INCLUDES="-I$with_zstd/include $EXTRA_INCLUDES"
+   else
+     AC_MSG_ERROR([libzstd not found])
+@@ -1919,20 +1889,20 @@ fi
+ # TODO: separate libs for rasters and vectors
+ if test "$with_grass" != "yes" -a "$with_grass" != "no" ; then
+ 
+-  AC_CHECK_LIB(grass_gis,G_is_initialized,GRASS_SETTING=grass70+,GRASS_SETTING=no,-L$with_grass/lib -lgrass_datetime)
++  AC_CHECK_LIB(grass_gis,G_is_initialized,GRASS_SETTING=grass70+,GRASS_SETTING=no,-L$with_grass/${libdir} -lgrass_datetime)
+   if test "$GRASS_SETTING" = "no" ; then
+-    AC_CHECK_LIB(grass_gis,G_asprintf,GRASS_SETTING=grass57+,GRASS_SETTING=no,-L$with_grass/lib -lgrass_datetime)
++    AC_CHECK_LIB(grass_gis,G_asprintf,GRASS_SETTING=grass57+,GRASS_SETTING=no,-L$with_grass/${libdir} -lgrass_datetime)
+   fi
+ 
+   if test "$GRASS_SETTING" != "no" ; then
+     if test "$GRASS_SETTING" = "grass70+" ; then
+       G_RASTLIBS="-lgrass_raster -lgrass_imagery"
+       G_VECTLIBS="-lgrass_vector -lgrass_dig2 -lgrass_dgl -lgrass_rtree -lgrass_linkm -lgrass_dbmiclient -lgrass_dbmibase"
+-      LIBS="-L$with_grass/lib $G_VECTLIBS $G_RASTLIBS -lgrass_gproj -lgrass_gmath -lgrass_gis -lgrass_datetime $LIBS"
++      LIBS="-L$with_grass/${libdir} $G_VECTLIBS $G_RASTLIBS -lgrass_gproj -lgrass_gmath -lgrass_gis -lgrass_datetime $LIBS"
+     else
+       G_RASTLIBS="-lgrass_I"
+       G_VECTLIBS="-lgrass_vect -lgrass_dig2 -lgrass_dgl -lgrass_rtree -lgrass_linkm -lgrass_dbmiclient -lgrass_dbmibase"
+-      LIBS="-L$with_grass/lib $G_VECTLIBS $G_RASTLIBS -lgrass_gproj -lgrass_vask -lgrass_gmath -lgrass_gis -lgrass_datetime $LIBS"
++      LIBS="-L$with_grass/${libdir} $G_VECTLIBS $G_RASTLIBS -lgrass_gproj -lgrass_vask -lgrass_gmath -lgrass_gis -lgrass_datetime $LIBS"
+     fi
+     GRASS_INCLUDE="-I$with_grass/include"
+     GRASS_GISBASE="$with_grass"
+@@ -1956,10 +1926,10 @@ elif test "$with_libgrass" = "yes" -o "$with_libgrass" = "" ; then
+ 
+ else
+ 
+-  AC_CHECK_LIB(grass5,G_gisinit_2,GRASS_SETTING=libgrass,GRASS_SETTING=no,-L$with_libgrass/lib)
++  AC_CHECK_LIB(grass5,G_gisinit_2,GRASS_SETTING=libgrass,GRASS_SETTING=no,-L$with_libgrass/${libdir})
+ 
+   if test "$GRASS_SETTING" = "libgrass" ; then
+-    LIBS="-L$with_libgrass -L$with_libgrass/lib -lgrass5 $LIBS"
++    LIBS="-L$with_libgrass -L$with_libgrass/${libdir} -lgrass5 $LIBS"
+     GRASS_INCLUDE="-I$with_libgrass -I$with_libgrass/include $EXTRA_INCLUDES"
+   else
+     AC_MSG_ERROR([--with-libgrass=$with_grass requested, but libgrass5 not found!])
+@@ -2006,7 +1976,7 @@ dnl Fedora has cfitsio headers in /usr/include/cfitsio
+ else
+ 
+   FITS_SETTING=external
+-  LIBS="-L$with_cfitsio -L$with_cfitsio/lib -lcfitsio $LIBS"
++  LIBS="-L$with_cfitsio -L$with_cfitsio/${libdir} -lcfitsio $LIBS"
+   EXTRA_INCLUDES="-I$with_cfitsio -I$with_cfitsio/include $EXTRA_INCLUDES"
+ 
+   echo "using libcfitsio from $with_cfitsio."
+@@ -2055,7 +2025,7 @@ elif test "$with_pcraster" = "internal" ; then
+ else
+ 
+   PCRASTER_SETTING=external
+-  LIBS="-L$with_pcraster/lib -lcsf $LIBS"
++  LIBS="-L$with_pcraster/${libdir} -lcsf $LIBS"
+   EXTRA_INCLUDES="-I$with_pcraster/include $EXTRA_INCLUDES"
+ 
+   echo "using libcsf from $with_pcraster."
+@@ -2106,7 +2076,7 @@ elif test "$with_png" = "internal" ; then
+ else
+ 
+   PNG_SETTING=external
+-  LIBS="-L$with_png -L$with_png/lib -lpng $LIBS"
++  LIBS="-L$with_png -L$with_png/${libdir} -lpng $LIBS"
+   EXTRA_INCLUDES="-I$with_png -I$with_png/include $EXTRA_INCLUDES"
+ 
+   echo "using libpng from $with_png."
+@@ -2141,7 +2111,7 @@ else
+ 
+   DDS_SETTING=yes
+   CRUNCHDIR="$with_dds"
+-  LIBS="-L$with_dds/lib/ -lcrunch $LIBS"
++  LIBS="-L$with_dds/${libdir}/ -lcrunch $LIBS"
+   echo "using libcrunch from $with_dds."
+ 
+ fi
+@@ -2179,7 +2149,7 @@ elif test "$with_gta" = "yes" -o "$with_gta" = "" ; then
+ else
+ 
+   GTA_SETTING=yes
+-  LIBS="-L$with_gta -L$with_gta/lib -lgta $LIBS"
++  LIBS="-L$with_gta -L$with_gta/${libdir} -lgta $LIBS"
+   EXTRA_INCLUDES="-I$with_gta -I$with_gta/include $EXTRA_INCLUDES"
+ 
+   echo "using libgta from $with_gta."
+@@ -2292,10 +2262,10 @@ else
+ 
+   dnl We now require libgeotiff 1.5.0
+   dnl first check if $with_geotiff/lib has the library:
+-  AC_CHECK_LIB(geotiff,GTIFAttachPROJContext,GEOTIFF_SETTING=external,GEOTIFF_SETTING=not_found,-L$with_geotiff/lib)
++  AC_CHECK_LIB(geotiff,GTIFAttachPROJContext,GEOTIFF_SETTING=external,GEOTIFF_SETTING=not_found,-L$with_geotiff/${libdir})
+ 
+   if test $GEOTIFF_SETTING = "external" ; then
+-    LIBS="-L$with_geotiff/lib -lgeotiff $LIBS"
++    LIBS="-L$with_geotiff/${libdir} -lgeotiff $LIBS"
+     if test  -d $with_geotiff/include ; then
+       EXTRA_INCLUDES="-I$with_geotiff/include $EXTRA_INCLUDES"
+     fi
+@@ -2518,7 +2488,7 @@ elif test "$with_gif" = "internal" ; then
+ else
+ 
+   GIF_SETTING=external
+-  LIBS="-L$with_gif -L$with_gif/lib -lgif $LIBS"
++  LIBS="-L$with_gif -L$with_gif/${libdir} -lgif $LIBS"
+   EXTRA_INCLUDES="-I$with_gif -I$with_gif/include $EXTRA_INCLUDES"
+ 
+   echo "using libgif from $with_gif."
+@@ -2584,10 +2554,10 @@ elif test "$with_ogdi" = "yes" -o "$with_ogdi" = "" ; then
+ 
+ else
+ 
+-  AC_CHECK_LIB(ogdi,cln_GetLayerCapabilities,HAVE_OGDI=yes,HAVE_OGDI=no,-L$with_ogdi -L$with_ogdi/lib -logdi)
++  AC_CHECK_LIB(ogdi,cln_GetLayerCapabilities,HAVE_OGDI=yes,HAVE_OGDI=no,-L$with_ogdi -L$with_ogdi/${libdir} -logdi)
+   if test "$HAVE_OGDI" = "yes" ; then
+     if test -f "$with_ogdi/ecs.h" -o -f "$with_ogdi/include/ecs.h"; then
+-        LIBS="-L$with_ogdi -L$with_ogdi/lib -logdi $LIBS"
++        LIBS="-L$with_ogdi -L$with_ogdi/${libdir} -logdi $LIBS"
+         OGDI_INCLUDE="-I$with_ogdi -I$with_ogdi/include"
+ 
+         echo "using libogdi from $with_ogdi."
+@@ -2597,10 +2567,10 @@ else
+      fi
+   else
+     dnl For backward compatibility. Retry with ogdi31 as a name
+-    AC_CHECK_LIB(ogdi31,cln_GetLayerCapabilities,HAVE_OGDI=yes,HAVE_OGDI=no,-L$with_ogdi -L$with_ogdi/lib -logdi31)
++    AC_CHECK_LIB(ogdi31,cln_GetLayerCapabilities,HAVE_OGDI=yes,HAVE_OGDI=no,-L$with_ogdi -L$with_ogdi/${libdir} -logdi31)
+     if test "$HAVE_OGDI" = "yes" ; then
+       if test -f "$with_ogdi/ecs.h" -o -f "$with_ogdi/include/ecs.h"; then
+-        LIBS="-L$with_ogdi -L$with_ogdi/lib -logdi31 $LIBS"
++        LIBS="-L$with_ogdi -L$with_ogdi/${libdir} -logdi31 $LIBS"
+         OGDI_INCLUDE="-I$with_ogdi -I$with_ogdi/include"
+ 
+         echo "using libogdi31 from $with_ogdi."
+@@ -2718,10 +2688,10 @@ elif test "$with_sosi" = "yes" ; then
+     rm -f testfyba
+ else
+ 
+-  AC_MSG_CHECKING([for libfyba.a, libfygm.a and libfyut.a in $with_sosi/lib])
+-  if test -r $with_sosi/lib/libfyba.a -a -r $with_sosi/lib/libfygm.a -a -r $with_sosi/lib/libfyut.a ; then
++  AC_MSG_CHECKING([for libfyba.a, libfygm.a and libfyut.a in $with_sosi/${libdir}])
++  if test -r $with_sosi/${libdir}/libfyba.a -a -r $with_sosi/${libdir}/libfygm.a -a -r $with_sosi/${libdir}/libfyut.a ; then
+     AC_MSG_RESULT([found.])
+-    SOSI_LIB="$with_sosi/lib/libfyba.a $with_sosi/lib/libfygm.a $with_sosi/lib/libfyut.a"
++    SOSI_LIB="$with_sosi/${libdir}/libfyba.a $with_sosi/${libdir}/libfygm.a $with_sosi/${libdir}/libfyut.a"
+     SOSI_ENABLED=yes
+   else
+     AC_MSG_ERROR([not found.])
+@@ -2782,14 +2752,14 @@ else
+   AC_ARG_WITH(boost-lib-path,
+           [  --with-boost-lib-path=ARG   Path to boost libraries for mongocxx client],,,)
+ 
+-  AC_MSG_CHECKING([for libmongoclient.so in in $with_mongocxx/lib])
++  AC_MSG_CHECKING([for libmongoclient.so in in $with_mongocxx/${libdir}])
+   MONGODB_ENABLED=yes
+-  if test -r $with_mongocxx/lib/libmongoclient.so; then
++  if test -r $with_mongocxx/${libdir}/libmongoclient.so; then
+     AC_MSG_RESULT([found.])
+-    MONGODB_LIB="-L$with_mongocxx/lib -lmongoclient"
+-  elif test -r $with_mongocxx/lib/libmongoclient.dylib; then
++    MONGODB_LIB="-L$with_mongocxx/${libdir} -lmongoclient"
++  elif test -r $with_mongocxx/${libdir}/libmongoclient.dylib; then
+     AC_MSG_RESULT([found.])
+-    MONGODB_LIB="-L$with_mongocxx/lib -lmongoclient"
++    MONGODB_LIB="-L$with_mongocxx/${libdir} -lmongoclient"
+   else
+     AC_MSG_ERROR([not found.])
+   fi
+@@ -4770,8 +4740,8 @@ if test "$with_libjson_c" = "external" -o "$with_libjson_c" = "" -o "$with_libjs
+ elif test "$with_libjson_c" = "internal" ; then
+   LIBJSONC_SETTING=internal
+ elif test "$with_libjson_c" != "no"; then
+-  LIBS="-L$with_libjson_c/lib $LIBS"
+-  AC_CHECK_LIB(json-c,json_object_set_serializer,LIBJSONC_SETTING=external,LIBJSONC_SETTING=internal,-L$with_libjson_c/lib)
++  LIBS="-L$with_libjson_c/${libdir} $LIBS"
++  AC_CHECK_LIB(json-c,json_object_set_serializer,LIBJSONC_SETTING=external,LIBJSONC_SETTING=internal,-L$with_libjson_c/${libdir})
+ else
+   AC_MSG_ERROR([libjson-c (internal or external) is required])
+ fi
+--- a/frmts/grass/pkg/configure.in
++++ b/frmts/grass/pkg/configure.in
+@@ -99,7 +99,7 @@ else
+   if $GDAL_CONFIG --autoload > /dev/null 2>&1 ; then
+     AUTOLOAD_DIR=`$GDAL_CONFIG --autoload`
+   else
+-    AUTOLOAD_DIR=`$GDAL_CONFIG --prefix`/lib/gdalplugins
++    AUTOLOAD_DIR=`$GDAL_CONFIG --prefix`/${libdir}/gdalplugins
+   fi
+ fi
+ 
+@@ -123,11 +123,11 @@ fi
+ 
+ if test "$with_grass" != "yes" ; then
+ 
+-  AC_CHECK_LIB(grass_gis,G_read_compressed,GRASS_SETTING=grass72+,GRASS_SETTING=no,-L$with_grass/lib -lgrass_datetime)
++  AC_CHECK_LIB(grass_gis,G_read_compressed,GRASS_SETTING=grass72+,GRASS_SETTING=no,-L$with_grass/${libdir} -lgrass_datetime)
+   if test "$GRASS_SETTING" = "no" ; then
+-    AC_CHECK_LIB(grass_gis,G_is_initialized,GRASS_SETTING=grass70+,GRASS_SETTING=no,-L$with_grass/lib -lgrass_datetime)
++    AC_CHECK_LIB(grass_gis,G_is_initialized,GRASS_SETTING=grass70+,GRASS_SETTING=no,-L$with_grass/${libdir} -lgrass_datetime)
+     if test "$GRASS_SETTING" = "no" ; then
+-      AC_CHECK_LIB(grass_gis,G_asprintf,GRASS_SETTING=grass57+,GRASS_SETTING=no,-L$with_grass/lib -lgrass_datetime)
++      AC_CHECK_LIB(grass_gis,G_asprintf,GRASS_SETTING=grass57+,GRASS_SETTING=no,-L$with_grass/${libdir} -lgrass_datetime)
+     fi
+   fi
+ 
+@@ -135,15 +135,15 @@ if test "$with_grass" != "yes" ; then
+     if test "$GRASS_SETTING" = "grass72+" ; then
+       G_RASTLIBS="-lgrass_raster -lgrass_imagery"
+       G_VECTLIBS="-lgrass_vector -lgrass_dig2 -lgrass_dgl -lgrass_rtree -lgrass_linkm -lgrass_dbmiclient -lgrass_dbmibase"
+-      LIBS="-L$with_grass/lib $G_VECTLIBS $G_RASTLIBS -lgrass_gproj -lgrass_gmath -lgrass_gis -lgrass_datetime -lgrass_btree2 -lgrass_ccmath $LIBS"
++      LIBS="-L$with_grass/${libdir} $G_VECTLIBS $G_RASTLIBS -lgrass_gproj -lgrass_gmath -lgrass_gis -lgrass_datetime -lgrass_btree2 -lgrass_ccmath $LIBS"
+     elif test "$GRASS_SETTING" = "grass70+" ; then
+       G_RASTLIBS="-lgrass_raster -lgrass_imagery"
+       G_VECTLIBS="-lgrass_vector -lgrass_dig2 -lgrass_dgl -lgrass_rtree -lgrass_linkm -lgrass_dbmiclient -lgrass_dbmibase"
+-      LIBS="-L$with_grass/lib $G_VECTLIBS $G_RASTLIBS -lgrass_gproj -lgrass_gmath -lgrass_gis -lgrass_datetime $LIBS"
++      LIBS="-L$with_grass/${libdir} $G_VECTLIBS $G_RASTLIBS -lgrass_gproj -lgrass_gmath -lgrass_gis -lgrass_datetime $LIBS"
+     else
+       G_RASTLIBS="-lgrass_I"
+       G_VECTLIBS="-lgrass_vect -lgrass_dig2 -lgrass_dgl -lgrass_rtree -lgrass_linkm -lgrass_dbmiclient -lgrass_dbmibase"
+-      LIBS="-L$with_grass/lib $G_VECTLIBS $G_RASTLIBS -lgrass_gproj -lgrass_vask -lgrass_gmath -lgrass_gis -lgrass_datetime $LIBS"
++      LIBS="-L$with_grass/${libdir} $G_VECTLIBS $G_RASTLIBS -lgrass_gproj -lgrass_vask -lgrass_gmath -lgrass_gis -lgrass_datetime $LIBS"
+     fi
+     GRASS_INCLUDE="-I$with_grass/include"
+     GRASS_GISBASE="$with_grass"
+--- a/m4/ax_lib_expat.m4
++++ b/m4/ax_lib_expat.m4
+@@ -119,9 +119,9 @@ AC_DEFUN([AX_LIB_EXPAT],
+                     expat_lib_flags="-lexpat"
+                 fi
+             else
+-                AC_CHECK_LIB(expat,XML_ParserCreate,run_expat_test="yes",run_expat_test="no",-L$expat_prefix/lib)
++                AC_CHECK_LIB(expat,XML_ParserCreate,run_expat_test="yes",run_expat_test="no",-L$expat_prefix/${libdir})
+                 if test "$run_expat_test" = "yes"; then
+-                    expat_lib_flags="-L$expat_prefix/lib -lexpat"
++                    expat_lib_flags="-L$expat_prefix/${libdir} -lexpat"
+                 fi
+             fi
+         fi
+--- a/m4/ax_lib_libkml.m4
++++ b/m4/ax_lib_libkml.m4
+@@ -172,7 +172,7 @@ kmldom::KmlFactory* factory = kmldom::KmlFactory::GetFactory();
+             if test "$libkml_prefix" = "/usr"; then
+                 libkml_lib_flags="-lkmldom -lkmlbase -lkmlengine -lkmlconvenience -lminizip -luriparser"
+             else
+-                libkml_lib_flags="-L$libkml_prefix/lib -lkmldom -lkmlbase -lkmlengine -lkmlconvenience -lminizip -luriparser"
++                libkml_lib_flags="-L$libkml_prefix/${libdir} -lkmldom -lkmlbase -lkmlengine -lkmlconvenience -lminizip -luriparser"
+             fi
+             run_libkml_test="yes"
+         elif test "$libkml_requested" = "yes"; then
+--- a/m4/ax_lib_xerces.m4
++++ b/m4/ax_lib_xerces.m4
+@@ -100,7 +100,7 @@ AC_DEFUN([AX_LIB_XERCES],
+         if test "$xerces_prefix" = "/usr"; then
+             xerces_lib_flags="-lxerces-c -lpthread"
+         else
+-            xerces_lib_flags="-L$xerces_prefix/lib -lxerces-c -lpthread"
++            xerces_lib_flags="-L$xerces_prefix/${libdir} -lxerces-c -lpthread"
+         fi
+         run_xerces_test="yes"
+     elif test "$xerces_requested" = "yes"; then

diff --git a/sci-libs/gdal/gdal-3.3.0.ebuild b/sci-libs/gdal/gdal-3.3.0.ebuild
new file mode 100644
index 00000000000..5283d9b8188
--- /dev/null
+++ b/sci-libs/gdal/gdal-3.3.0.ebuild
@@ -0,0 +1,317 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+GENTOO_DEPEND_ON_PERL="no"
+PYTHON_COMPAT=( python3_{7,8,9} )
+DISTUTILS_OPTIONAL=1
+inherit autotools bash-completion-r1 distutils-r1 flag-o-matic java-pkg-opt-2 perl-module toolchain-funcs
+
+DESCRIPTION="Translator library for raster geospatial data formats (includes OGR support)"
+HOMEPAGE="https://gdal.org/"
+SRC_URI="https://download.osgeo.org/${PN}/${PV}/${P}.tar.gz"
+
+SLOT="0/3.3"
+LICENSE="BSD Info-ZIP MIT"
+KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="armadillo +aux-xml curl cpu_flags_x86_avx cpu_flags_x86_sse cpu_flags_x86_ssse3 debug doc fits geos gif gml hdf5 java jpeg jpeg2k lzma mdb mysql netcdf odbc ogdi opencl oracle pdf perl png postgres python spatialite sqlite threads webp xls zstd"
+
+REQUIRED_USE="
+	mdb? ( java )
+	python? ( ${PYTHON_REQUIRED_USE} )
+	spatialite? ( sqlite )
+"
+
+BDEPEND="
+	virtual/pkgconfig
+	doc? ( app-doc/doxygen )
+	java? (
+		dev-java/ant-core
+		dev-lang/swig:0
+		>=virtual/jdk-1.8:*
+	)
+	perl? ( dev-lang/swig:0 )
+	python? (
+		dev-lang/swig:0
+		dev-python/setuptools[${PYTHON_USEDEP}]
+	)
+"
+DEPEND="
+	dev-libs/expat
+	dev-libs/json-c:=
+	dev-libs/libpcre
+	dev-libs/libxml2:2
+	dev-libs/openssl:=
+	media-libs/tiff
+	>=sci-libs/libgeotiff-1.5.1-r1:=
+	>=sci-libs/proj-6.0.0:=
+	sys-libs/zlib[minizip(+)]
+	armadillo? ( sci-libs/armadillo:=[lapack] )
+	curl? ( net-misc/curl )
+	fits? ( sci-libs/cfitsio:= )
+	geos? ( >=sci-libs/geos-3.8.0 )
+	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= )
+	lzma? ( || (
+		app-arch/xz-utils
+		app-arch/lzma
+	) )
+	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:= )
+	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 )
+	zstd? ( app-arch/zstd:= )
+"
+RDEPEND="${DEPEND}
+	java? ( >=virtual/jre-1.8:* )
+"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-2.2.3-soname.patch"
+	"${FILESDIR}/${PN}-2.3.0-curl.patch" # bug 659840
+	"${FILESDIR}/${PN}-3.3.0-libdir.patch"
+	"${FILESDIR}/${PN}-3.3.0-configure-geos-disable.patch"
+)
+
+src_prepare() {
+	default
+
+	# Drop a --prefix hack in the upstream build system
+	# We don't want the line at all, so let's just drop it rather than
+	# trying to put in the right libdir value.
+	# bug #696106
+	sed -e '/\$ADD_PREFIX\/lib/d' \
+		-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
+
+	# SWIG: Use of the include path to find the input file is deprecated and will not work with ccache.
+	sed -e "s: gdal_array.i: ../include/gdal_array.i:" \
+		-i swig/python/GNUmakefile || die "sed python makefile failed"
+
+	# autoconf 2.70+
+	# bug #775209
+	config_rpath_update .
+
+	eautoreconf
+}
+
+src_configure() {
+	local myconf=(
+		# charls - not packaged in Gentoo ebuild repository
+		# 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
+		--includedir="${EPREFIX}"/usr/include/${PN}
+		--disable-lto
+		--disable-static
+		--disable-driver-bsb
+		--disable-driver-mrf
+		--disable-pdf-plugin
+		--enable-shared
+		--enable-driver-grib
+		--with-bash-completion="$(get_bashcompdir)"
+		--with-cpp14
+		--with-crypto
+		--with-cryptopp=no
+		--with-expat
+		--with-geotiff
+		--with-gnm
+		--with-hide-internal-symbols
+		--with-libjson-c="${EPREFIX}"/usr
+		--with-libtiff
+		--with-libtool
+		--with-libz="${EPREFIX}"/usr
+		--without-charls
+		--without-dods-root
+		--without-ecw
+		--without-epsilon
+		--without-fgdb
+		--without-fme
+		--without-gta
+		--without-grass
+		--without-hdf4
+		--without-idb
+		--without-ingres
+		--without-jasper
+		--without-jp2lura
+		--without-jp2mrsid
+		--without-kakadu
+		--without-kea
+		--without-libkml
+		--without-mongocxx
+		--without-mrsid
+		--without-mrsid_lidar
+		--without-msg
+		--without-rasdaman
+		--without-rasterlite2
+		--without-pcraster
+		--without-pdfium
+		--without-perl
+		--without-podofo
+		--without-python
+		--without-qhull
+		--without-sfcgal
+		--without-sosi
+		--without-teigha
+		$(use_enable debug)
+		$(use_with armadillo)
+		$(use_with aux-xml pam)
+		$(use_with curl)
+		$(use_with cpu_flags_x86_avx avx)
+		$(use_with cpu_flags_x86_sse sse)
+		$(use_with cpu_flags_x86_ssse3 ssse3)
+		$(use_with fits cfitsio)
+		$(use_with geos)
+		$(use_with gif)
+		$(use_with gml xerces)
+		$(use_with hdf5)
+		$(use_with jpeg pcidsk) # pcidsk is internal, because there is no such library released developer by gdal
+		$(use_with jpeg)
+		$(use_with jpeg2k openjpeg)
+		$(use_with lzma liblzma)
+		$(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 png)
+		$(use_with postgres pg)
+		$(use_with spatialite)
+		$(use_with sqlite sqlite3 "${EPREFIX}"/usr)
+		$(use_with threads)
+		$(use_with webp)
+		$(use_with xls freexl)
+		$(use_with zstd)
+	)
+
+	tc-export AR RANLIB
+
+	if use java; then
+		myconf+=(
+			--with-java=$(java-config --jdk-home 2>/dev/null)
+			--with-jvm-lib=dlopen
+			$(use_with mdb)
+		)
+	else
+		myconf+=( --without-java --without-mdb )
+	fi
+
+	if use sqlite; then
+		append-libs -lsqlite3
+	fi
+
+	# bug #632660
+	if use ogdi; then
+		append-cflags $($(tc-getPKG_CONFIG) --cflags libtirpc)
+		append-cxxflags $($(tc-getPKG_CONFIG) --cflags libtirpc)
+	fi
+
+	ECONF_SOURCE="${S}" econf "${myconf[@]}"
+
+	# 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 java; then
+		pushd "${S}"/swig/java > /dev/null || die
+		emake
+		popd > /dev/null || die
+	fi
+
+	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() {
+	local DOCS=( NEWS )
+	use doc && local HTML_DOCS=( html/. )
+
+	default
+
+	use java && java-pkg_dojar "${S}"/swig/java/gdal.jar
+
+	if use perl; then
+		pushd "${S}"/swig/perl > /dev/null || die
+		myinst=( DESTDIR="${D}" )
+		perl-module_src_install
+		popd > /dev/null || die
+		perl_delete_localpod
+	fi
+
+	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.rst README-python.rst
+
+		insinto /usr/share/${PN}/samples
+		doins -r swig/python/samples/.
+	fi
+
+	doman "${S}"/man/man*/*
+	find "${ED}" -name '*.la' -type f -delete || die
+}
+
+pkg_postinst() {
+	elog "Check available image and data formats after building with"
+	elog "gdalinfo and ogrinfo (using the --formats switch)."
+}


             reply	other threads:[~2021-05-28  3:47 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-28  3:47 Sam James [this message]
  -- strict thread matches above, loose matches on Subject: below --
2025-10-06 18:36 [gentoo-commits] repo/gentoo:master commit in: sci-libs/gdal/files/, sci-libs/gdal/ Andreas Sturmlechner
2025-02-10 20:11 Andreas Sturmlechner
2025-02-09 15:12 Andreas Sturmlechner
2023-11-21 22:36 Andreas Sturmlechner
2022-10-09 18:29 Andreas Sturmlechner
2022-03-12 15:53 Andreas Sturmlechner
2022-01-10 23:19 Sam James
2021-10-02 12:58 Andreas Sturmlechner
2020-04-13  9:21 Andreas Sturmlechner
2019-12-25 20:46 Andreas Sturmlechner
2019-11-01 18:53 Andreas Sturmlechner
2019-07-15  5:36 Andreas Sturmlechner
2019-06-12 10:03 Andreas Sturmlechner
2019-05-19 20:55 Andreas Sturmlechner
2019-01-16 20:01 Andreas Sturmlechner
2018-01-16 20:25 Andreas Sturmlechner
2017-12-20 20:08 Andreas Sturmlechner
2017-12-20 18:23 Amy Liffey
2017-07-19 18:54 Andreas Sturmlechner
2016-12-03 10:35 Amy Winston
2016-11-07 13:56 Amy Winston
2016-07-18 20:41 Sven Wegener

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1622173632.7db9d431bcdf4ec1cf079d3d3f271dddbe68208a.sam@gentoo \
    --to=sam@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox