From 0fac8f2b716fdaf016a0f2cb2fa92d2d39c8ad36 Mon Sep 17 00:00:00 2001 From: Holger Jaekel Date: Fri, 10 May 2024 22:04:29 +0200 Subject: [PATCH] testing/mapnik: rebuild against gdal 3.9.0 fix build with libxml2 2.12.x fix build with boost 1.83 --- testing/mapnik/APKBUILD | 6 +++- testing/mapnik/boost-1.83.patch | 53 +++++++++++++++++++++++++++++++++ testing/mapnik/libxml2.patch | 39 ++++++++++++++++++++++++ 3 files changed, 97 insertions(+), 1 deletion(-) create mode 100644 testing/mapnik/boost-1.83.patch create mode 100644 testing/mapnik/libxml2.patch diff --git a/testing/mapnik/APKBUILD b/testing/mapnik/APKBUILD index f86a372eedf..c460ed9af54 100644 --- a/testing/mapnik/APKBUILD +++ b/testing/mapnik/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Markus Juenemann pkgname=mapnik pkgver=3.1.0 -pkgrel=25 +pkgrel=26 pkgdesc="An open source toolkit for developing mapping applications" url="https://mapnik.org/" arch="all" @@ -31,6 +31,8 @@ source="https://github.com/mapnik/mapnik/releases/download/v$pkgver/mapnik-v$pkg boost-1.77.patch gcc13.patch scons4.patch + libxml2.patch + boost-1.83.patch " builddir="$srcdir/$pkgname-v$pkgver" options="!check" # fail to build @@ -75,4 +77,6 @@ sha512sums=" b5961faf1bf903fca0d92408f4b9a783e61b5c06e89c9318aa7f59c6ca98be922504909ae7cf59dd09e953378952f7af3335f3f71cb1ff9f5a8a8c8f7c729f6d boost-1.77.patch b9de94825d5c9934adcfd451b1fada42d17d9b79345649c19d9d1b3db333309086b7de711e9fb44038a3ba992c27d520f6a5a66f656c267f9e8d286ad2bec920 gcc13.patch e0c60c696b9d195ad0e430c8c4fb9c36465d9635fae3e4a8b25dca4b421d90330994285c92dfcefe929a196ff87345da278a564d8fa9f3ac29a46d9e2dfa3110 scons4.patch +1333cb498f5c617ad9179f7920869c91d81f2905a97f1b3e230c486f996cfc012a44fa83863d70a30b8c29f950a16e61fd4cbbf9fc71c82bf89fa672b863aa19 libxml2.patch +9f4def2f41932c6e80c0ace4b9d80744bdd51e9dff71ec13328b220fb445739c0633e1a313d70c26f591aaeadfc0304b8544cc49b0dc8b836707c4d4b9079c74 boost-1.83.patch " diff --git a/testing/mapnik/boost-1.83.patch b/testing/mapnik/boost-1.83.patch new file mode 100644 index 00000000000..4c6463072cb --- /dev/null +++ b/testing/mapnik/boost-1.83.patch @@ -0,0 +1,53 @@ +Author: Antonio Rojas +Summary: fixes for boost 1.83 +URL: https://gitlab.archlinux.org/archlinux/packaging/packages/mapnik/-/blob/f9f723222c0af50e4db747e7c4e8138dbc769f53/boost-1.83.patch +---- + +diff --git a/include/mapnik/geometry/boost_spirit_karma_adapter.hpp b/include/mapnik/geometry/boost_spirit_karma_adapter.hpp +index a146ef1d1..bfdf00d7f 100644 +--- a/include/mapnik/geometry/boost_spirit_karma_adapter.hpp ++++ b/include/mapnik/geometry/boost_spirit_karma_adapter.hpp +@@ -25,6 +25,7 @@ + #define MAPNIK_BOOST_SPIRIT_KARMA_ADAPTER_HPP + + #include ++#include + + namespace boost { using mapbox::util::get; } + +diff --git a/include/mapnik/geometry_fusion_adapted.hpp b/include/mapnik/geometry_fusion_adapted.hpp +index 66869891a..c4b4cae13 100644 +--- a/include/mapnik/geometry_fusion_adapted.hpp ++++ b/include/mapnik/geometry_fusion_adapted.hpp +@@ -26,6 +26,7 @@ + + #include + #include ++#include + + BOOST_FUSION_ADAPT_STRUCT( + mapnik::geometry::point, +diff --git a/include/mapnik/json/generic_json.hpp b/include/mapnik/json/generic_json.hpp +index 0c4662304..b81a742c7 100644 +--- a/include/mapnik/json/generic_json.hpp ++++ b/include/mapnik/json/generic_json.hpp +@@ -32,6 +32,7 @@ + #include + #include + #include ++#include + #pragma GCC diagnostic pop + + #include +diff --git a/plugins/input/csv/csv_utils.cpp b/plugins/input/csv/csv_utils.cpp +index 916b17e01..227ee2c9b 100644 +--- a/plugins/input/csv/csv_utils.cpp ++++ b/plugins/input/csv/csv_utils.cpp +@@ -32,6 +32,7 @@ + // csv grammar + #include + // ++#include + #include "csv_getline.hpp" + #include "csv_utils.hpp" + diff --git a/testing/mapnik/libxml2.patch b/testing/mapnik/libxml2.patch new file mode 100644 index 00000000000..3d7c4de4713 --- /dev/null +++ b/testing/mapnik/libxml2.patch @@ -0,0 +1,39 @@ +From 8cdca5f5be97b9fb4de95e0214197f879e6fcfb7 Mon Sep 17 00:00:00 2001 +From: David Hummel <6109326+hummeltech@users.noreply.github.com> +Date: Mon, 20 Nov 2023 10:21:12 -0700 +Subject: [PATCH] Fix broken builds with libxml2 >= v2.12.0 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +**I.E.** +``` +src/libxml2_loader.cpp:91:50: error: invalid conversion from ‘const xmlError*’ {aka ‘const _xmlError*’} to ‘xmlError*’ {aka ‘_xmlError*’} [-fpermissive] +src/libxml2_loader.cpp:131:50: error: invalid conversion from ‘const xmlError*’ {aka ‘const _xmlError*’} to ‘xmlError*’ {aka ‘_xmlError*’} [-fpermissive] +``` +--- + src/libxml2_loader.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/libxml2_loader.cpp b/src/libxml2_loader.cpp +index 223d8df447..78dc8aa978 100644 +--- a/src/libxml2_loader.cpp ++++ b/src/libxml2_loader.cpp +@@ -79,7 +79,7 @@ class libxml2_loader : util::noncopyable + + if (!doc) + { +- xmlError * error = xmlCtxtGetLastError(ctx_); ++ const xmlError* error = xmlCtxtGetLastError(ctx_); + if (error) + { + std::string msg("XML document not well formed:\n"); +@@ -118,7 +118,7 @@ + if (!doc) + { + std::string msg("XML document not well formed"); +- xmlError * error = xmlCtxtGetLastError( ctx_ ); ++ const xmlError* error = xmlCtxtGetLastError(ctx_); + if (error) + { + msg += ":\n";