mapnik: unstable-2022-10-18 -> unstable-2023-11-28

Removed no-longer-needed patch:
* `include.patch`: Fixed [here](64a031a19b)

Added patch to account for `FONTS_INSTALL_DIR`/`PLUGINS_INSTALL_DIR`
containing full paths, causing this issue:
```
Broken paths found in a .pc file! /nix/store/lriysmfydb9p6g6s02q6ri24nzwmi494-mapnik-unstable-2023-11-28/lib/pkgconfig/libmapnik.pc
The following lines have issues (specifically '//' in paths).
5:fonts_dir=${prefix}//nix/store/lriysmfydb9p6g6s02q6ri24nzwmi494-mapnik-unstable-2023-11-28/lib/mapnik/fonts
6:plugins_dir=${prefix}//nix/store/lriysmfydb9p6g6s02q6ri24nzwmi494-mapnik-unstable-2023-11-28/lib/mapnik/input
```

Enabled `Checks`, which requires a patch to allow one test to fail:
* `datasource-ogr-test-should-fail.patch`
This commit is contained in:
David Hummel 2023-12-26 12:48:47 -07:00 committed by Robert Schütz
parent ae9397e83b
commit dfa2fbc087
5 changed files with 42 additions and 19 deletions

View File

@ -1,8 +1,8 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d87a7052d..837867551 100644
index ffb86d4ac..1775b986f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -153,19 +153,8 @@ endif()
@@ -177,19 +177,8 @@ endif()
mapnik_find_package(Freetype REQUIRED)
@ -16,7 +16,7 @@ index d87a7052d..837867551 100644
- # It might be possible that in future version harfbuzz could only be found via pkg-config.
- # harfbuzz related discussion: https://github.com/harfbuzz/harfbuzz/issues/2653
- message(STATUS "harfbuzz not found via cmake. Searching via pkg-config...")
- pkg_check_modules(harfbuzz REQUIRED IMPORTED_TARGET harfbuzz>=${HARFBUZZ_MIN_VERSION})
- mapnik_pkg_check_modules(harfbuzz REQUIRED IMPORTED_TARGET harfbuzz>=${HARFBUZZ_MIN_VERSION})
- list(APPEND MAPNIK_OPTIONAL_LIBS PkgConfig::harfbuzz)
-endif()
+pkg_check_modules(harfbuzz REQUIRED IMPORTED_TARGET harfbuzz)

View File

@ -0,0 +1,13 @@
diff --git a/test/unit/datasource/ogr.cpp b/test/unit/datasource/ogr.cpp
index 8441ecc55..8dabc67b0 100644
--- a/test/unit/datasource/ogr.cpp
+++ b/test/unit/datasource/ogr.cpp
@@ -30,7 +30,7 @@
#include <mapnik/image_util.hpp>
#include <mapnik/datasource_cache.hpp>
-TEST_CASE("ogr")
+TEST_CASE("ogr", "[!shouldfail]")
{
const bool have_ogr_plugin = mapnik::datasource_cache::instance().plugin_registered("ogr");
if (have_ogr_plugin)

View File

@ -26,13 +26,13 @@
stdenv.mkDerivation rec {
pname = "mapnik";
version = "unstable-2022-10-18";
version = "unstable-2023-11-28";
src = fetchFromGitHub {
owner = "mapnik";
repo = "mapnik";
rev = "05661e54392bcbb3367747f97a3ef6e468c105ba";
hash = "sha256-96AneLPH1gbh/u880Pdc9OdFq2MniSdaTJoKYqId7sw=";
rev = "2e1b32512b1f8b52331994f2a809d8a383c0c984";
hash = "sha256-qGdUfu6gFWum/Id/W3ICeGZroMQ3Tz9PQf1tt+gaaXM=";
fetchSubmodules = true;
};
@ -57,7 +57,11 @@ stdenv.mkDerivation rec {
src = ./catch2-src.patch;
catch2_src = catch2.src;
})
./include.patch
# Disable broken test
# See discussion: https://github.com/mapnik/mapnik/issues/4329#issuecomment-1248778398
./datasource-ogr-test-should-fail.patch
# Account for full paths when generating libmapnik.pc
./export-pkg-config-full-paths.patch
];
nativeBuildInputs = [ cmake pkg-config ];
@ -83,9 +87,11 @@ stdenv.mkDerivation rec {
cmakeFlags = [
# Would require qt otherwise.
"-DBUILD_DEMO_VIEWER=OFF"
"-DBUILD_DEMO_VIEWER:BOOL=OFF"
];
doCheck = true;
# mapnik-config is currently not build with CMake. So we use the SCons for
# this one. We can't add SCons to nativeBuildInputs though, as stdenv would
# then try to build everything with scons.

View File

@ -0,0 +1,15 @@
diff --git a/cmake/MapnikExportPkgConfig.cmake b/cmake/MapnikExportPkgConfig.cmake
index e459f80ef..ec18a71a2 100644
--- a/cmake/MapnikExportPkgConfig.cmake
+++ b/cmake/MapnikExportPkgConfig.cmake
@@ -65,8 +65,8 @@ prefix=@CMAKE_INSTALL_PREFIX@
exec_prefix=${prefix}
includedir=${prefix}/include
libdir=${exec_prefix}/lib
-fonts_dir=${prefix}/@FONTS_INSTALL_DIR@
-plugins_dir=${prefix}/@PLUGINS_INSTALL_DIR@
+fonts_dir=@FONTS_INSTALL_DIR@
+plugins_dir=@PLUGINS_INSTALL_DIR@
Name: @_lib_name@
Description: @_description@

View File

@ -1,11 +0,0 @@
diff --git a/benchmark/src/test_png_encoding2.cpp b/benchmark/src/test_png_encoding2.cpp
index 19897d180..5791b139c 100644
--- a/benchmark/src/test_png_encoding2.cpp
+++ b/benchmark/src/test_png_encoding2.cpp
@@ -1,5 +1,6 @@
#include "bench_framework.hpp"
#include "compare_images.hpp"
+#include <memory>
class test : public benchmark::test_case
{