# Maintainer: Alireza S.N. # Maintainer: Jaroslav Lichtblau # Maintainer: Bruno Pagani # Contributor: dibblethewrecker dibblethewrecker.at.jiwe.dot.org # Contributor: William Rea _pkgbase=gdal pkgbase=gdal-libkml-filegdb pkgname=(gdal-libkml-filegdb python-gdal-libkml-filegdb) pkgver=3.9.0 pkgrel=2 provides=('gdal') pkgdesc="A translator library for raster and vector geospatial data formats (with libkml and filegdb support)" arch=(x86_64) url="https://gdal.org/" license=(custom) makedepends=(cmake opencl-headers python-setuptools python-numpy proj arrow blosc cfitsio curl crypto++ libdeflate expat libfreexl libgeotiff geos giflib libheif hdf5 libjpeg-turbo json-c libjxl xz libxml2 lz4 mariadb-libs netcdf unixodbc ocl-icd openexr openjpeg2 openssl pcre2 libpng podofo poppler postgresql-libs qhull libspatialite sqlite swig libtiff libwebp xerces-c zlib zstd libaec libkml-git) # armadillo brunsli lerc libkml qb3 rasterlite2 sfcgal tiledb # ogdi changelog=$_pkgbase.changelog source=(https://download.osgeo.org/${_pkgbase}/${pkgver}/${_pkgbase}-${pkgver}.tar.xz https://github.com/OSGeo/gdal/commit/7b526b12.patch) b2sums=('5b1453b889768359d36c6da435b27f6d31bb1ba95cecfd05d525d63258100705778d2675219711d0c2ab0e2392dd0eabffa1af3ffd055ebfc14840aaa1e768c0' '801eb649c20ef81d7590888589d4049eab4505fac6efbe1718d8bc9e01a35390b9d8cad090c3421ff90d769fe3f5aec4d1641409ecc5a434ba68c4c5d30eec85') prepare() { patch -d $_pkgbase-$pkgver -p1 < 7b526b12.patch # Fix build with C++20 } build() { #-DCMAKE_CXX_STANDARD=20 \ cmake -B build -S $_pkgbase-$pkgver \ -DCMAKE_INSTALL_PREFIX=/usr \ -DENABLE_IPO=ON \ -DBUILD_PYTHON_BINDINGS=ON \ -DGDAL_ENABLE_PLUGINS=ON \ -DGDAL_USE_ARROW=ON \ -DGDAL_USE_BLOSC=ON \ -DGDAL_USE_CFITSIO=ON \ -DGDAL_USE_CURL=ON \ -DGDAL_USE_CRYPTOPP=ON \ -DGDAL_USE_DEFLATE=ON \ -DGDAL_USE_EXPAT=ON \ -DGDAL_USE_FREEXL=ON \ -DGDAL_USE_GEOTIFF=ON \ -DGDAL_USE_GEOS=ON \ -DGDAL_USE_GIF=ON \ -DGDAL_USE_HEIF=ON \ -DGDAL_USE_HDF5=ON \ -DGDAL_USE_ICONV=ON \ -DGDAL_USE_JPEG=ON \ -DGDAL_USE_JSONC=ON \ -DGDAL_USE_JXL=ON \ -DGDAL_USE_LIBLZMA=ON \ -DGDAL_USE_LIBXML2=ON \ -DGDAL_USE_LZ4=ON \ -DGDAL_USE_MYSQL=ON \ -DGDAL_USE_NETCDF=ON \ -DGDAL_USE_ODBC=ON \ -DGDAL_USE_OPENCL=ON \ -DGDAL_USE_OPENEXR=ON \ -DGDAL_USE_OPENJPEG=ON \ -DGDAL_USE_OPENSSL=ON \ -DGDAL_USE_PARQUET=ON \ -DGDAL_USE_PCRE2=ON \ -DGDAL_USE_PNG=ON \ -DGDAL_USE_POPPLER=ON \ -DGDAL_USE_POSTGRESQL=ON \ -DGDAL_USE_QHULL=ON \ -DGDAL_USE_SPATIALITE=ON \ -DGDAL_USE_SQLITE3=ON \ -DGDAL_USE_TIFF=ON \ -DGDAL_USE_WEBP=ON \ -DGDAL_USE_XERCESC=ON \ -DGDAL_USE_ZLIB=ON \ -DGDAL_USE_ZSTD=ON \ -DGDAL_USE_LIBKML=ON \ -DGDAL_USE_FileGDB=ON \ -DFileGDB_INCLUDE_DIR=/usr/include/filegdb-api/ \ -DFileGDB_LIBRARY=/usr/lib/libFileGDBAPI.so && \ make -C build -j $(nproc) } package_gdal-libkml-filegdb () { provides+=('gdal-libkml-filegdb') conflicts=('gdal') depends=(proj blosc crypto++ curl libdeflate expat libfreexl geos libgeotiff giflib libjpeg-turbo json-c xz libxml2 lz4 unixodbc ocl-icd openssl pcre2 libpng qhull libspatialite sqlite libtiff xerces-c zlib zstd libaec libkml-git filegdb-api) optdepends=('arrow: Arrow/Parquet support' 'cfitsio: FITS support' 'hdf5: HDF5 support' 'libheif: HEIF support' 'libjxl: JPEG XL support' 'mariadb-libs: MySQL support' 'netcdf: netCDF support' 'openexr: EXR support' 'openjpeg2: JP2 support' 'podofo: PDF support' 'poppler: PDF support' 'postgresql-libs: PostgreSQL support' 'libwebp: WebP support') make -C build DESTDIR="${pkgdir}" install install -Dm644 ${_pkgbase}-${pkgver}/LICENSE.TXT -t "${pkgdir}"/usr/share/licenses/$pkgbase/ # Move python stuff mkdir -p {bin,lib} mv "${pkgdir}"/usr/bin/*py bin mv "${pkgdir}"/usr/lib/python* lib } package_python-gdal-libkml-filegdb () { pkgdesc="Python bindings for GDAL" depends=("gdal-libkml-filegdb=$pkgver" 'python-numpy') provides=('python-gdal') conflicts=('python-gdal') install -d "${pkgdir}"/usr/{bin,lib} mv bin/* "${pkgdir}"/usr/bin mv lib/* "${pkgdir}"/usr/lib install -dm755 "${pkgdir}"/usr/share/licenses ln -s $pkgbase "${pkgdir}"/usr/share/licenses/$pkgname # byte-compile python modules since the CMake build does not do it. local site_packages=$(python -c "import site; print(site.getsitepackages()[0])") python -m compileall -o 0 -o 1 -o 2 --hardlink-dupes -s "${pkgdir}" "${pkgdir}"${site_packages} }