Ver código fonte

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>
Dominik Michael Rauh 3 anos atrás
pai
commit
1e64fa2956
5 arquivos alterados com 166 adições e 0 exclusões
  1. 3 0
      DEVELOPERS
  2. 1 0
      package/Config.in
  3. 30 0
      package/gdal/Config.in
  4. 6 0
      package/gdal/gdal.hash
  5. 126 0
      package/gdal/gdal.mk

+ 3 - 0
DEVELOPERS

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

+ 1 - 0
package/Config.in

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

+ 30 - 0
package/gdal/Config.in

@@ -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 - 0
package/gdal/gdal.hash

@@ -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 - 0
package/gdal/gdal.mk

@@ -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))