blob: d8c2d830dc7e75d21153408fb5669448e000a229 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
|
# Maintainer: Sylvain POULAIN <sylvain dot poulain at giscan dot com>
# Contributor: Jaroslav Lichtblau <svetlemodry@archlinux.org>
# Contributor: dibblethewrecker dibblethewrecker.at.jiwe.dot.org
# Contributor: William Rea <sillywilly@gmail.com>
# Contributor: Luigi Ranghetti <ggranga@gmail.com>
# Contributor: Oliver Kuster <olivervbk (at) gmail>
#
# Original can be found at:
# https://github.com/archlinux/svntogit-community/blob/packages/gdal/trunk/PKGBUILD
pkgbase=gdal-ecw
_pkgbase=gdal
provides=('gdal=3.7.0')
conflicts=('gdal')
pkgname=('gdal-ecw' 'python-gdal-ecw')
pkgver=3.7.0
pkgrel=2
pkgdesc="A translator library for raster geospatial data formats, with support to ECW format. Based on gdal-hdf4 AUR package."
arch=('x86_64')
url="https://gdal.org/"
license=('custom')
depends=('curl' 'geos' 'giflib' 'hdf5' 'libgeotiff' 'libjpeg-turbo' 'libpng' 'libspatialite' 'libtiff' 'netcdf'
'openjpeg2' 'poppler' 'cfitsio' 'sqlite' 'mariadb-libs' 'postgresql-libs' 'xerces-c' 'json-c' 'arrow' 'pcre2'
# needed for ecw support:
'libecwj2' )
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 xz
libxml2 lz4 mariadb-libs netcdf unixodbc ocl-icd openexr openjpeg2
openssl pcre2 libpng podofo-0.9 poppler postgresql-libs qhull
libspatialite sqlite swig libtiff libwebp xerces-c zlib zstd)
optdepends=('postgresql: postgresql database support'
'mariadb: mariadb database support'
'perl: perl binding support'
'unixodbc: when present while building, will add odbc support'
'libkml: when present while building, adds kml support'
)
options=('!emptydirs')
changelog=$pkgbase.changelog
source=(https://download.osgeo.org/${_pkgbase}/${pkgver}/${_pkgbase}-${pkgver}.tar.xz)
b2sums=('400cc17fc636c637f7c40e93aed8e2db7bfbbe73741da4135cfeec8dbcda24ce0c8035214edf038afc29a916012da86a78d789729540f870231dfa6aa27e424a')
prepare() {
# Fix build with podofo-0.9
sed -e 's|podofo.h|podofo/podofo.h|' -i $_pkgbase-$pkgver/frmts/pdf/pdfsdk_headers.h
}
build() {
opt_libs=""
[[ "$(ldconfig -p | grep libkml.so)" ]] && { echo "Found libkml.so"; opt_libs+=" -DGDAL_USE_LIBKML=ON"; }
cmake -B build -S $_pkgbase-$pkgver \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_CXX_STANDARD=17 \
-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_ZSTD=ON \
-DPODOFO_INCLUDE_DIR=/usr/include/podofo-0.9 \
-DPODOFO_LIBRARY=/usr/lib/podofo-0.9/libpodofo.so \
$opt_libs
make -C build
}
package_gdal-ecw () {
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
# https://github.com/OSGeo/gdal/issues/6281
# optdepends should be either hard deps or split package
# due to upstream design choice - hard dep for the moment
arrow cfitsio hdf5 libheif mariadb-libs netcdf openexr openjpeg2
podofo poppler postgresql-libs libwebp libecwj2)
# optdepends=('arrow: Arrow/Parquet support'
# 'cfitsio: FITS support'
# 'hdf5: HDF5 support'
# 'libheif: HEIF support'
# 'mariadb-libs: MySQL support'
# 'netcdf: netCDF support'
# 'openexr: EXR support'
# 'openjpeg2: JP2 support'
# 'podofo-0.9: 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-ecw () {
pkgdesc="Python bindings for GDAL, with support to ECW format"
provides=("python-gdal")
conflicts=("python-gdal")
depends=("gdal-ecw=$pkgver" 'python-numpy')
optdepends=()
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}
}
|