community/pdal: rebuild against libarrow/libparquet 21.0.0-r0

This commit is contained in:
Sertonix 2025-08-20 20:25:20 +02:00 committed by Achill Gilgenast
parent bba0350273
commit 88b06dbe5d
2 changed files with 50 additions and 1 deletions

View File

@ -1,7 +1,7 @@
maintainer="Bart Ribbers <bribbers@disroot.org>"
pkgname=pdal
pkgver=2.9.0
pkgrel=0
pkgrel=1
pkgdesc="PDAL is a C++ BSD library for translating and manipulating point cloud data."
url="https://pdal.io/"
arch="all"
@ -37,6 +37,7 @@ subpackages="
"
source="https://github.com/PDAL/PDAL/releases/download/$pkgver/PDAL-$pkgver-src.tar.bz2
10-zstd.patch
arrow21.patch
"
builddir="$srcdir/PDAL-$pkgver-src"
@ -142,4 +143,5 @@ plugins() {
sha512sums="
1ff1dcfdca261968a5e20ce9072181a687430e9ef5601d7f15c12cbf1af1696cd84c991bcad67e4c7cdfe279b66d12a0bc06016cee5a4106331b12eb6aa8a7a4 PDAL-2.9.0-src.tar.bz2
decf41a55e5eafd73c5519b199756b0b47c15d0e8ffa4d0ff77b37be4b4c618e389b64109744ba54f75915b9118f14b23b221de61d483c462e74abaf224ab8ab 10-zstd.patch
16a626b5359b34327466c38deeba5320f304cc4e937c1192719333c698406c1835cf27c877c8fa13ada8bf097ac7e7d116845ad91cafebabd0f604a7a4c3622f arrow21.patch
"

View File

@ -0,0 +1,47 @@
Patch-Source: https://github.com/PDAL/PDAL/commit/860420bdaa4e4b44d3255d55b73950327ab90407
Patch-Source: https://github.com/PDAL/PDAL/commit/356826c20607b5db2e4e46cd8fb894b413553adf
--- a/plugins/arrow/io/ArrowReader.cpp
+++ b/plugins/arrow/io/ArrowReader.cpp
@@ -312,7 +312,27 @@ void ArrowReader::initialize()
+#if ARROW_VERSION_MAJOR >= 21
+ auto reader_result = parquet::arrow::OpenFile(m_file, m_pool);
+ if (!reader_result.ok())
+ {
+ std::stringstream msg;
+ msg << "Unable to open file '" << m_filename << "' with message '"
+ << reader_result.status().ToString() << "'";
+ throwError(msg.str());
+ }
+ m_arrow_reader = std::move(reader_result).ValueOrDie();
+#else
auto pOpenStatus = parquet::arrow::OpenFile(m_file, m_pool, &m_arrow_reader);
+ if (!pOpenStatus.ok())
+ {
+ std::stringstream msg;
+ msg << "Unable to open file '" << m_filename << "' with message '"
+ << pOpenStatus.ToString() <<"'";
+ throwError(msg.str());
+ }
+#endif
+
const auto metadata = m_arrow_reader->parquet_reader()->metadata();
loadParquetGeoMetadata(metadata->key_value_metadata());
--- a/plugins/arrow/io/ArrowWriter.cpp
+++ b/plugins/arrow/io/ArrowWriter.cpp
@@ -523,7 +523,11 @@ void ArrowWriter::flushBatch()
if (m_formatType == arrowsupport::Parquet)
{
+#if ARROW_VERSION_MAJOR >= 20
+ auto result = m_parquetFileWriter->NewRowGroup();
+#else
auto result = m_parquetFileWriter->NewRowGroup(m_batchSize);
+#endif
if (!result.ok())
throwError("Unable to make NewRowGroup: " + result.ToString());