Gentoo Archives: gentoo-commits

From: Sam James <sam@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-libs/gdal/
Date: Tue, 06 Jul 2021 04:12:48
Message-Id: 1625544759.e323fe36d8ba43a16ab24e313492d300311232bb.sam@gentoo
1 commit: e323fe36d8ba43a16ab24e313492d300311232bb
2 Author: Sam James <sam <AT> gentoo <DOT> org>
3 AuthorDate: Tue Jul 6 04:06:44 2021 +0000
4 Commit: Sam James <sam <AT> gentoo <DOT> org>
5 CommitDate: Tue Jul 6 04:12:39 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e323fe36
7
8 sci-libs/gdal: add 3.3.1
9
10 Signed-off-by: Sam James <sam <AT> gentoo.org>
11
12 sci-libs/gdal/Manifest | 1 +
13 sci-libs/gdal/gdal-3.3.1.ebuild | 312 ++++++++++++++++++++++++++++++++++++++++
14 2 files changed, 313 insertions(+)
15
16 diff --git a/sci-libs/gdal/Manifest b/sci-libs/gdal/Manifest
17 index a5e15147c50..c67ec7c7e6f 100644
18 --- a/sci-libs/gdal/Manifest
19 +++ b/sci-libs/gdal/Manifest
20 @@ -2,3 +2,4 @@ DIST gdal-3.2.1.tar.gz 18953600 BLAKE2B b47994849bcf6bc2b2f53daabb85ef99cdc9ce2a
21 DIST gdal-3.2.2.tar.gz 18959415 BLAKE2B 001347ee12c72fe4d9cfa27adb427624f80e5b16eeca01510166e3d74c36eb00da72c27d8582ccda124151143561c29b8e59dc3dd800c474b77991417b33acd1 SHA512 d7ff8773d3f1cb894fce89f56a3d4355769f1113eefb1367a3a543ced750e2c42618a4a1deef3a338ddd4d33b7332ae962b2d793f8c0b97e31ed4b84cb2df2d5
22 DIST gdal-3.2.3.tar.gz 18970990 BLAKE2B 9f2ac15b7e9d2df0393d15734030ec4777579aa01fcf2700958228b24fd50d574f3bd438c03e767549614a699c362b31f38cbb0f32ceb8056c9b55fab11ecfec SHA512 985a058a53f676f7d49a96d1a48d4f93c5da8548012bf81345afde03d8044022b210484290bca70c3d7a1ef3b0087d9e17c636b5badd1e0816c1f59b1bf21ee8
23 DIST gdal-3.3.0.tar.gz 19572446 BLAKE2B afc7ce3c2191fb7607fdf3a01e7ed3e83c601fa063019015f666e0c550e4e42129b8782568f20f97422308f95b4e5c3dbd2311d562b7ec0830635e47e7c931b4 SHA512 39505c07aaf4dac587a189a979462101a7acba41e8732031540ebad02e089820658943ebb48c20f4ea56548363033b2db2f03f41c8a91ff5c5997a19b5eb999e
24 +DIST gdal-3.3.1.tar.gz 19582883 BLAKE2B 328ba9f3c6a2ecca8583648e5f22469d3fbabf8d8676262a15c6debe718be8329ad3899cbe5397dff2896bc9c2500b60834c6a44cd0f5b670828d86838611f0d SHA512 0eb89502f1cebd5dd899fb8f20571952462c45aba6cee1d62ccc820b2fed5202f6c7e7096bd4ca6c0cfcc2de623f00295097a7e33da6ffa5624dcb8a7a0dc682
25
26 diff --git a/sci-libs/gdal/gdal-3.3.1.ebuild b/sci-libs/gdal/gdal-3.3.1.ebuild
27 new file mode 100644
28 index 00000000000..a81cf8d3765
29 --- /dev/null
30 +++ b/sci-libs/gdal/gdal-3.3.1.ebuild
31 @@ -0,0 +1,312 @@
32 +# Copyright 1999-2021 Gentoo Authors
33 +# Distributed under the terms of the GNU General Public License v2
34 +
35 +EAPI=7
36 +
37 +GENTOO_DEPEND_ON_PERL="no"
38 +PYTHON_COMPAT=( python3_{7,8,9} )
39 +DISTUTILS_OPTIONAL=1
40 +inherit autotools bash-completion-r1 distutils-r1 flag-o-matic java-pkg-opt-2 perl-module toolchain-funcs
41 +
42 +DESCRIPTION="Translator library for raster geospatial data formats (includes OGR support)"
43 +HOMEPAGE="https://gdal.org/"
44 +SRC_URI="https://download.osgeo.org/${PN}/${PV}/${P}.tar.gz"
45 +
46 +SLOT="0/3.3"
47 +LICENSE="BSD Info-ZIP MIT"
48 +KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
49 +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"
50 +
51 +REQUIRED_USE="
52 + mdb? ( java )
53 + python? ( ${PYTHON_REQUIRED_USE} )
54 + spatialite? ( sqlite )
55 +"
56 +
57 +BDEPEND="
58 + virtual/pkgconfig
59 + doc? ( app-doc/doxygen )
60 + java? (
61 + dev-java/ant-core
62 + dev-lang/swig:0
63 + >=virtual/jdk-1.8:*
64 + )
65 + perl? ( dev-lang/swig:0 )
66 + python? (
67 + dev-lang/swig:0
68 + dev-python/setuptools[${PYTHON_USEDEP}]
69 + )
70 +"
71 +DEPEND="
72 + dev-libs/expat
73 + dev-libs/json-c:=
74 + dev-libs/libpcre
75 + dev-libs/libxml2:2
76 + dev-libs/openssl:=
77 + media-libs/tiff
78 + >=sci-libs/libgeotiff-1.5.1-r1:=
79 + >=sci-libs/proj-6.0.0:=
80 + sys-libs/zlib[minizip(+)]
81 + armadillo? ( sci-libs/armadillo:=[lapack] )
82 + curl? ( net-misc/curl )
83 + fits? ( sci-libs/cfitsio:= )
84 + geos? ( >=sci-libs/geos-3.8.0 )
85 + gif? ( media-libs/giflib:= )
86 + gml? ( >=dev-libs/xerces-c-3.1 )
87 + hdf5? ( >=sci-libs/hdf5-1.6.4:=[szip] )
88 + jpeg? ( virtual/jpeg:0= )
89 + jpeg2k? ( media-libs/openjpeg:2= )
90 + lzma? ( || (
91 + app-arch/xz-utils
92 + app-arch/lzma
93 + ) )
94 + mdb? ( dev-java/jackcess:1 )
95 + mysql? ( virtual/mysql )
96 + netcdf? ( sci-libs/netcdf:= )
97 + odbc? ( dev-db/unixODBC )
98 + ogdi? ( sci-libs/ogdi )
99 + opencl? ( virtual/opencl )
100 + oracle? ( dev-db/oracle-instantclient:= )
101 + pdf? ( app-text/poppler:= )
102 + perl? ( dev-lang/perl:= )
103 + png? ( media-libs/libpng:0= )
104 + postgres? ( >=dev-db/postgresql-8.4:= )
105 + python? (
106 + ${PYTHON_DEPS}
107 + dev-python/numpy[${PYTHON_USEDEP}]
108 + )
109 + spatialite? ( dev-db/spatialite )
110 + sqlite? ( dev-db/sqlite:3 )
111 + webp? ( media-libs/libwebp:= )
112 + xls? ( dev-libs/freexl )
113 + zstd? ( app-arch/zstd:= )
114 +"
115 +RDEPEND="${DEPEND}
116 + java? ( >=virtual/jre-1.8:* )
117 +"
118 +
119 +PATCHES=(
120 + "${FILESDIR}/${PN}-2.2.3-soname.patch"
121 + "${FILESDIR}/${PN}-2.3.0-curl.patch" # bug 659840
122 + "${FILESDIR}/${PN}-3.3.0-libdir.patch"
123 +)
124 +
125 +src_prepare() {
126 + default
127 +
128 + # Drop a --prefix hack in the upstream build system
129 + # We don't want the line at all, so let's just drop it rather than
130 + # trying to put in the right libdir value.
131 + # bug #696106
132 + sed -e '/\$ADD_PREFIX\/lib/d' \
133 + -i configure.ac || die
134 +
135 + sed -e "s: /usr/: \"${EPREFIX}\"/usr/:g" \
136 + -i configure.ac || die
137 +
138 + sed -e 's:^ar:$(AR):g' \
139 + -i ogr/ogrsf_frmts/sdts/install-libs.sh || die
140 +
141 + # SWIG: Use of the include path to find the input file is deprecated and will not work with ccache.
142 + sed -e "s: gdal_array.i: ../include/gdal_array.i:" \
143 + -i swig/python/GNUmakefile || die "sed python makefile failed"
144 +
145 + # autoconf 2.70+
146 + # bug #775209
147 + config_rpath_update .
148 +
149 + eautoreconf
150 +}
151 +
152 +src_configure() {
153 + local myconf=(
154 + # charls - not packaged in Gentoo ebuild repository
155 + # kakadu, mrsid jp2mrsid - another jpeg2k stuff, ignore
156 + # bsb - legal issues
157 + # ingres - same story as oracle oci
158 + # jasper - disabled because unmaintained and vulnerable; openjpeg will be used as JPEG-2000 provider instead
159 + # podofo - we use poppler instead they are exclusive for each other
160 + # tiff is a hard dep
161 + --includedir="${EPREFIX}"/usr/include/${PN}
162 + --disable-lto
163 + --disable-static
164 + --disable-driver-bsb
165 + --disable-driver-mrf
166 + --disable-pdf-plugin
167 + --enable-shared
168 + --enable-driver-grib
169 + --with-bash-completion="$(get_bashcompdir)"
170 + --with-cpp14
171 + --with-crypto
172 + --with-cryptopp=no
173 + --with-expat
174 + --with-geotiff
175 + --with-gnm
176 + --with-hide-internal-symbols
177 + --with-libjson-c="${EPREFIX}"/usr
178 + --with-libtiff
179 + --with-libtool
180 + --with-libz="${EPREFIX}"/usr
181 + --without-charls
182 + --without-dods-root
183 + --without-ecw
184 + --without-fgdb
185 + --without-fme
186 + --without-gta
187 + --without-grass
188 + --without-hdf4
189 + --without-idb
190 + --without-ingres
191 + --without-jasper
192 + --without-jp2lura
193 + --without-jp2mrsid
194 + --without-kakadu
195 + --without-kea
196 + --without-libkml
197 + --without-mongocxx
198 + --without-mrsid
199 + --without-mrsid_lidar
200 + --without-msg
201 + --without-rasdaman
202 + --without-rasterlite2
203 + --without-pcraster
204 + --without-pdfium
205 + --without-perl
206 + --without-podofo
207 + --without-python
208 + --without-qhull
209 + --without-sfcgal
210 + --without-sosi
211 + --without-teigha
212 + $(use_enable debug)
213 + $(use_with armadillo)
214 + $(use_with aux-xml pam)
215 + $(use_with curl)
216 + $(use_with cpu_flags_x86_avx avx)
217 + $(use_with cpu_flags_x86_sse sse)
218 + $(use_with cpu_flags_x86_ssse3 ssse3)
219 + $(use_with fits cfitsio)
220 + $(use_with geos)
221 + $(use_with gif)
222 + $(use_with gml xerces)
223 + $(use_with hdf5)
224 + $(use_with jpeg pcidsk) # pcidsk is internal, because there is no such library released developer by gdal
225 + $(use_with jpeg)
226 + $(use_with jpeg2k openjpeg)
227 + $(use_with lzma liblzma)
228 + $(use_with mysql mysql "${EPREFIX}"/usr/bin/mysql_config)
229 + $(use_with netcdf)
230 + $(use_with oracle oci)
231 + $(use_with odbc)
232 + $(use_with ogdi ogdi "${EPREFIX}"/usr)
233 + $(use_with opencl)
234 + $(use_with pdf poppler)
235 + $(use_with png)
236 + $(use_with postgres pg)
237 + $(use_with spatialite)
238 + $(use_with sqlite sqlite3 "${EPREFIX}"/usr)
239 + $(use_with threads)
240 + $(use_with webp)
241 + $(use_with xls freexl)
242 + $(use_with zstd)
243 + )
244 +
245 + tc-export AR RANLIB
246 +
247 + if use java; then
248 + myconf+=(
249 + --with-java=$(java-config --jdk-home 2>/dev/null)
250 + --with-jvm-lib=dlopen
251 + $(use_with mdb)
252 + )
253 + else
254 + myconf+=( --without-java --without-mdb )
255 + fi
256 +
257 + if use sqlite; then
258 + append-libs -lsqlite3
259 + fi
260 +
261 + # bug #632660
262 + if use ogdi; then
263 + append-cflags $($(tc-getPKG_CONFIG) --cflags libtirpc)
264 + append-cxxflags $($(tc-getPKG_CONFIG) --cflags libtirpc)
265 + fi
266 +
267 + ECONF_SOURCE="${S}" econf "${myconf[@]}"
268 +
269 + # mysql-config puts this in (and boy is it a PITA to get it out)
270 + if use mysql; then
271 + sed -e "s: -rdynamic : :" \
272 + -i GDALmake.opt || die "sed LIBS failed"
273 + fi
274 +}
275 +
276 +src_compile() {
277 + if use perl; then
278 + rm "${S}"/swig/perl/*_wrap.cpp || die
279 + emake -C "${S}"/swig/perl generate
280 + fi
281 +
282 + # gdal-config needed before generating Python bindings
283 + default
284 +
285 + if use java; then
286 + pushd "${S}"/swig/java > /dev/null || die
287 + emake
288 + popd > /dev/null || die
289 + fi
290 +
291 + if use perl; then
292 + pushd "${S}"/swig/perl > /dev/null || die
293 + perl-module_src_configure
294 + perl-module_src_compile
295 + popd > /dev/null || die
296 + fi
297 +
298 + if use python; then
299 + rm -f "${S}"/swig/python/*_wrap.cpp || die
300 + emake -C "${S}"/swig/python generate
301 + pushd "${S}"/swig/python > /dev/null || die
302 + distutils-r1_src_compile
303 + popd > /dev/null || die
304 + fi
305 +
306 + use doc && emake docs
307 +}
308 +
309 +src_install() {
310 + local DOCS=( NEWS )
311 + use doc && local HTML_DOCS=( html/. )
312 +
313 + default
314 +
315 + use java && java-pkg_dojar "${S}"/swig/java/gdal.jar
316 +
317 + if use perl; then
318 + pushd "${S}"/swig/perl > /dev/null || die
319 + myinst=( DESTDIR="${D}" )
320 + perl-module_src_install
321 + popd > /dev/null || die
322 + perl_delete_localpod
323 + fi
324 +
325 + if use python; then
326 + # Don't clash with gdal's docs
327 + unset DOCS HTML_DOCS
328 +
329 + pushd "${S}"/swig/python > /dev/null || die
330 + distutils-r1_src_install
331 + popd > /dev/null || die
332 +
333 + newdoc swig/python/README.rst README-python.rst
334 + fi
335 +
336 + doman "${S}"/man/man*/*
337 + find "${ED}" -name '*.la' -type f -delete || die
338 +}
339 +
340 +pkg_postinst() {
341 + elog "Check available image and data formats after building with"
342 + elog "gdalinfo and ogrinfo (using the --formats switch)."
343 +}