aboutsummaryrefslogtreecommitdiffstats
path: root/testing/mapnik
diff options
context:
space:
mode:
Diffstat (limited to 'testing/mapnik')
-rw-r--r--testing/mapnik/APKBUILD9
-rw-r--r--testing/mapnik/icu-62.patch65
2 files changed, 71 insertions, 3 deletions
diff --git a/testing/mapnik/APKBUILD b/testing/mapnik/APKBUILD
index 0655e27adbc..ac0fa5a93b3 100644
--- a/testing/mapnik/APKBUILD
+++ b/testing/mapnik/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Markus Juenemann <markus@juenemann.net>
pkgname=mapnik
pkgver=3.0.20
-pkgrel=0
+pkgrel=1
pkgdesc="An open source toolkit for developing mapping applications"
url="http://mapnik.org/"
arch="x86_64 ppc64le"
@@ -20,13 +20,15 @@ makedepends="
postgresql-dev
proj4-dev
python3
+ py3-setuptools
sqlite-dev
tiff-dev
zlib-dev
"
install=""
subpackages="$pkgname-dev $pkgname-doc"
-source="https://github.com/mapnik/mapnik/releases/download/v$pkgver/mapnik-v$pkgver.tar.bz2"
+source="https://github.com/mapnik/mapnik/releases/download/v$pkgver/mapnik-v$pkgver.tar.bz2
+ icu-62.patch"
builddir="$srcdir/$pkgname-v$pkgver"
build() {
@@ -67,4 +69,5 @@ doc() {
install -Dm644 $builddir/docs/* "$subpkgdir"/usr/share/docs/$pkgname/docs/
}
-sha512sums="f957ee9ca63fc597baa513b226ba4a6ab310138c8daea3f8dd9af9fdb2f4fa10c52f1710a839549492403859c2b312e39bca2c5c4f7bc579dd9662a6438e2e39 mapnik-v3.0.20.tar.bz2"
+sha512sums="f957ee9ca63fc597baa513b226ba4a6ab310138c8daea3f8dd9af9fdb2f4fa10c52f1710a839549492403859c2b312e39bca2c5c4f7bc579dd9662a6438e2e39 mapnik-v3.0.20.tar.bz2
+370d0fb7473f48dfb6fd59ddadb6d3fca83547721d67f1e4e7d40c266ef229c4e05a319aca85b7ac73411dc51755b3aaf710f22fb7b7ea8e4558970e6b5432ea icu-62.patch"
diff --git a/testing/mapnik/icu-62.patch b/testing/mapnik/icu-62.patch
new file mode 100644
index 00000000000..c703d92bf21
--- /dev/null
+++ b/testing/mapnik/icu-62.patch
@@ -0,0 +1,65 @@
+--- ./SConstruct.orig 2018-10-01 16:59:39.291478884 +0000
++++ ./SConstruct 2018-10-01 17:05:50.416539178 +0000
+@@ -42,7 +42,7 @@
+
+ DEFAULT_CC = "cc"
+ DEFAULT_CXX = "c++"
+-DEFAULT_CXX11_CXXFLAGS = " -std=c++11"
++DEFAULT_CXX11_CXXFLAGS = " -std=c++11 -DU_USING_ICU_NAMESPACE=0"
+ DEFAULT_CXX11_LINKFLAGS = ""
+ if sys.platform == 'darwin':
+ # homebrew default
+From 1ddfe6c315487a802f2ea38119255a203a25913c Mon Sep 17 00:00:00 2001
+From: Raul Marin <git@rmr.ninja>
+Date: Tue, 3 Apr 2018 13:18:03 +0200
+Subject: [PATCH] Qualify ICU types explicitly
+
+ICU 61 has dropped the global `using namespace icu;`
+http://site.icu-project.org/download/61#TOC-Migration-Issues
+---
+ include/mapnik/text/scrptrun.hpp | 2 +-
+ src/text/text_layout.cpp | 4 +++-
+ 2 files changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/include/mapnik/text/scrptrun.hpp b/include/mapnik/text/scrptrun.hpp
+index 2161c510d9..c219a2a0d3 100644
+--- a/include/mapnik/text/scrptrun.hpp
++++ b/include/mapnik/text/scrptrun.hpp
+@@ -37,7 +37,7 @@ struct ParenStackEntry
+ UScriptCode scriptCode = USCRIPT_INVALID_CODE;
+ };
+
+-class ScriptRun : public UObject {
++class ScriptRun : public icu::UObject {
+ public:
+ ScriptRun();
+
+diff --git a/src/text/text_layout.cpp b/src/text/text_layout.cpp
+index 663cbe11aa..ecf02ab8e3 100644
+--- a/src/text/text_layout.cpp
++++ b/src/text/text_layout.cpp
+@@ -207,6 +207,7 @@ void text_layout::layout()
+ // At the end everything that is left over is added as the final line.
+ void text_layout::break_line_icu(std::pair<unsigned, unsigned> && line_limits)
+ {
++ using BreakIterator = icu::BreakIterator;
+ text_line line(line_limits.first, line_limits.second);
+ shape_text(line);
+
+@@ -228,7 +229,7 @@ void text_layout::break_line_icu(std::pair<unsigned, unsigned> && line_limits)
+ }
+
+ mapnik::value_unicode_string const& text = itemizer_.text();
+- Locale locale; // TODO: Is the default constructor correct?
++ icu::Locale locale; // TODO: Is the default constructor correct?
+ UErrorCode status = U_ZERO_ERROR;
+ std::unique_ptr<BreakIterator> breakitr(BreakIterator::createLineInstance(locale, status));
+
+@@ -336,6 +337,7 @@ inline int adjust_last_break_position (int pos, bool repeat_wrap_char)
+
+ void text_layout::break_line(std::pair<unsigned, unsigned> && line_limits)
+ {
++ using BreakIterator = icu::BreakIterator;
+ text_line line(line_limits.first, line_limits.second);
+ shape_text(line);
+ double scaled_wrap_width = wrap_width_ * scale_factor_;