commit:     6fc4c33ae634e95c1ec80f19348d10cc79b43725
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu May 22 19:41:24 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu May 22 19:42:27 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6fc4c33a

sci-libs/pdal: backport ODR fix

Bug: https://bugs.gentoo.org/862915
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sci-libs/pdal/files/pdal-2.8.4-odr.patch | 30 +++++++++++++++
 sci-libs/pdal/pdal-2.8.4-r1.ebuild       | 63 ++++++++++++++++++++++++++++++++
 2 files changed, 93 insertions(+)

diff --git a/sci-libs/pdal/files/pdal-2.8.4-odr.patch 
b/sci-libs/pdal/files/pdal-2.8.4-odr.patch
new file mode 100644
index 000000000000..2fe59ffecd48
--- /dev/null
+++ b/sci-libs/pdal/files/pdal-2.8.4-odr.patch
@@ -0,0 +1,30 @@
+From 92ac29a2a899c597ae4403c760a2e8991952b448 Mon Sep 17 00:00:00 2001
+From: Andrew Bell <[email protected]>
+Date: Mon, 19 May 2025 10:35:34 -0400
+Subject: [PATCH] Put arbiter forward declaration in the pdal namespace.
+
+---
+ io/EsriReader.hpp | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/io/EsriReader.hpp b/io/EsriReader.hpp
+index 7d42f68c49..35a12dce22 100644
+--- a/io/EsriReader.hpp
++++ b/io/EsriReader.hpp
+@@ -50,13 +50,14 @@
+ 
+ #include <nlohmann/json.hpp>
+ 
++namespace pdal
++{
++
+ namespace arbiter
+ {
+     class Arbiter;
+ }
+ 
+-namespace pdal
+-{
+ class SrsTransform;
+ class ThreadPool;
+ 

diff --git a/sci-libs/pdal/pdal-2.8.4-r1.ebuild 
b/sci-libs/pdal/pdal-2.8.4-r1.ebuild
new file mode 100644
index 000000000000..352d60c1cacd
--- /dev/null
+++ b/sci-libs/pdal/pdal-2.8.4-r1.ebuild
@@ -0,0 +1,63 @@
+# Copyright 2021-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="A C++ library for translating and manipulating point cloud data"
+HOMEPAGE="https://pdal.io/";
+SRC_URI="https://github.com/PDAL/PDAL/releases/download/${PV}/PDAL-${PV}-src.tar.bz2";
+S="${WORKDIR}/PDAL-${PV}-src"
+
+LICENSE="BSD"
+SLOT="0/18"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE="debug postgres test"
+
+BDEPEND="
+       sys-devel/gettext
+       virtual/pkgconfig
+"
+RDEPEND="
+       net-misc/curl
+       app-arch/zstd:=
+       dev-libs/libxml2
+       dev-libs/openssl:=
+       sci-libs/gdal:=
+       sci-libs/libgeotiff:=
+       sys-libs/zlib
+       debug? ( sys-libs/libunwind:= )
+       postgres? ( dev-db/postgresql:*[xml] )
+"
+
+DEPEND="
+       test? ( sci-libs/gdal[geos,jpeg,png,sqlite] )
+       ${RDEPEND}
+"
+
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-2.8.4-odr.patch
+)
+
+src_configure() {
+       local mycmakeargs=(
+               -DBUILD_PLUGIN_PGPOINTCLOUD="$(usex postgres)"
+               -DWITH_COMPLETION=ON
+               -DWITH_BACKTRACE="$(usex debug)"
+       )
+
+       cmake_src_configure
+}
+
+src_test() {
+       local myctestargs=(
+               --exclude-regex 
'(pgpointcloudtest|pdal_info_test|pdal_io_bpf_base_test|pdal_io_bpf_zlib_test|pdal_filters_overlay_test|pdal_filters_stats_test|pdal_app_plugin_test|pdal_merge_test|pdal_io_stac_reader_test)'
+               --output-on-failure
+               -j1
+       )
+
+       cmake_src_test
+}

Reply via email to