package/gdal: new package

GDAL is a translator library for raster and vector geospatial data
formats. As a library, it presents a single raster abstract data model
and single vector abstract data model to the calling application for all
supported formats. It also comes with a variety of useful command line
utilities for data translation and processing.

https://gdal.org/

test-pkg shows that this package is affected by binutils bug 27597.

Signed-off-by: Dominik Michael Rauh <dmrauh@posteo.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Dominik Michael Rauh 2022-05-07 09:46:50 +00:00 committed by Thomas Petazzoni
parent d48af70773
commit 1e64fa2956
5 changed files with 166 additions and 0 deletions

View File

@ -752,6 +752,9 @@ F: package/wireless-regdb/
N: Dominik Faessler <faessler@was.ch>
F: package/logsurfer/
N: Dominik Michael Rauh <dmrauh@posteo.de>
F: package/gdal/
N: Doug Kehn <rdkehn@gmail.com>
F: package/nss-pam-ldapd/
F: package/sp-oops-extract/

View File

@ -1967,6 +1967,7 @@ menu "Other"
source "package/flatbuffers/Config.in"
source "package/flatcc/Config.in"
source "package/gconf/Config.in"
source "package/gdal/Config.in"
source "package/gflags/Config.in"
source "package/gli/Config.in"
source "package/glibmm/Config.in"

30
package/gdal/Config.in Normal file
View File

@ -0,0 +1,30 @@
config BR2_PACKAGE_GDAL
bool "gdal"
depends on BR2_INSTALL_LIBSTDCPP # proj, libjson
# configure can't find proj, when linking statically
depends on !BR2_STATIC_LIBS
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 # C++11, proj
depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_27597
depends on BR2_TOOLCHAIN_HAS_THREADS # proj
depends on BR2_USE_WCHAR # proj
select BR2_PACKAGE_JPEG
select BR2_PACKAGE_LIBGEOTIFF
select BR2_PACKAGE_LIBJSON
select BR2_PACKAGE_LIBPNG
select BR2_PACKAGE_PROJ
select BR2_PACKAGE_ZLIB
help
GDAL is a translator library for raster and vector geospatial
data formats. As a library, it presents a single raster
abstract data model and single vector abstract data model to
the calling application for all supported formats. It also
comes with a variety of useful command line utilities for data
translation and processing.
https://gdal.org/
comment "gdal needs a toolchain w/ C++, dynamic library, gcc >= 4.7, not binutils bug 27597, threads, wchar"
depends on !BR2_INSTALL_LIBSTDCPP || BR2_STATIC_LIBS || \
!BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 || \
BR2_TOOLCHAIN_HAS_BINUTILS_BUG_27597 || \
!BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR

6
package/gdal/gdal.hash Normal file
View File

@ -0,0 +1,6 @@
# md5 from: https://download.osgeo.org/gdal/3.5.1/gdal-3.5.1.tar.xz.md5, sha256 locally computed:
md5 4b7981efbeed69c06c79fb65d0a60d83 gdal-3.5.1.tar.xz
sha256 d12c30a9eacdeaab493c0d1c9f88eb337c9cbb5bb40744c751bdd5a5af166ab6 gdal-3.5.1.tar.xz
# Hashes of license files:
sha256 b82e6cca0b13f5db2f22ab667f22254fb1f4b135ea73d5bd6238ef89aff31f6c LICENSE.TXT

126
package/gdal/gdal.mk Normal file
View File

@ -0,0 +1,126 @@
################################################################################
#
# gdal
#
################################################################################
GDAL_VERSION = 3.5.1
GDAL_SITE = https://download.osgeo.org/gdal/$(GDAL_VERSION)
GDAL_SOURCE = gdal-$(GDAL_VERSION).tar.xz
GDAL_LICENSE = MIT, many others
GDAL_LICENSE_FILES = LICENSE.TXT
GDAL_INSTALL_STAGING = YES
GDAL_CONFIG_SCRIPTS = gdal-config
# gdal at its core only needs host-pkgconf, libgeotiff, proj and tiff
# but since by default mrf driver support is enabled, it also needs
# jpeg, libpng and zlib. By default there are also many other drivers
# enabled but it seems, in contrast to mrf driver support, that they
# can be implicitly disabled, by configuring gdal without their
# respectively needed dependencies.
GDAL_DEPENDENCIES = host-pkgconf jpeg libgeotiff libpng proj tiff zlib
# Yes, even though they have --with options, these few libraries are
# mandatory. If we don't provide them, bundled versions are used.
GDAL_CONF_OPTS = \
--with-geotiff \
--with-jpeg \
--with-libjson-c \
--with-libtool \
--with-libz \
--with-png \
--with-proj \
--without-armadillo \
--without-blosc \
--without-brunsli \
--without-cfitsio \
--without-crypto \
--without-cryptopp \
--without-curl \
--without-dds \
--without-dods-root \
--without-ecw \
--without-expat \
--without-exr \
--without-fgdb \
--without-fme \
--without-freexl \
--without-geos \
--without-gnm \
--without-libkml \
--without-lz4 \
--without-grass \
--without-libgrass \
--without-gta \
--without-hdf4 \
--without-hdf5 \
--without-hdfs \
--without-heif \
--without-idb \
--without-ingres \
--without-jp2lura \
--without-jasper \
--without-java \
--without-jpeg12 \
--without-jxl \
--without-charls \
--without-kakadu \
--without-kea \
--without-lerc \
--without-gif \
--without-liblzma \
--without-libdeflate \
--without-mdb \
--without-mongocxx \
--without-mongocxxv3 \
--without-mrsid \
--without-jp2mrsid \
--without-macosx-framework \
--without-mrsid_lidar \
--without-msg \
--without-mysql \
--without-netcdf \
--without-null \
--without-oci \
--without-odbc \
--without-ogdi \
--without-opencl \
--without-openjpeg \
--without-pam \
--without-pcidsk \
--without-pcraster \
--without-pcre \
--without-pcre2 \
--without-pdfium \
--without-perl \
--without-podofo \
--without-poppler \
--without-python \
--without-qhull \
--without-rasdaman \
--without-rasterlite2 \
--without-rdb \
--without-sfcgal \
--without-sosi \
--without-spatialite \
--without-sqlite3 \
--without-teigha \
--without-tiledb \
--without-webp \
--without-xerces \
--without-zstd
ifeq ($(BR2_PACKAGE_LIBXML2),y)
GDAL_DEPENDENCIES += libxml2
GDAL_CONF_OPTS += --with-xml2
else
GDAL_CONF_OPTS += --without-xml2
endif
ifeq ($(BR2_PACKAGE_POSTGRESQL),y)
GDAL_DEPENDENCIES += postgresql
GDAL_CONF_OPTS += --with-pg
else
GDAL_CONF_OPTS += --without-pg
endif
$(eval $(autotools-package))