summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 4aa3bb78d4ddce44fddbc788fdde22f00e8b38a0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
# Contributor: Balló György <ballogyor+arch at gmail dot com>
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: David Dent <thewinch@gmail.com>
# Contributor: orbisvicis <orbisvicis@gmail.com>
# Maintainer: Fritz Engelbrecht <fritz.engl+arch@gmail.com>
# Maintainer: David Hummel <david dot hummel at gmail point com>

pkgname=mapnik-git
pkgver=4.0.0.gd69a0902d
pkgrel=1
pkgdesc='Free Toolkit for developing mapping applications. Above all Mapnik is about rendering beautiful maps (git version)'
arch=('i686' 'x86_64')
url='https://github.com/mapnik/mapnik'
license=('LGPL2.1')
depends=('boost-libs'
         'cairo'
         'freetype2'
         'gdal'
         'harfbuzz'
         'icu'
         'libjpeg-turbo'
         'libpng'
         'libtiff'
         'libwebp'
         'libxml2'
         'mapbox-variant'
         'postgresql-libs'
         'proj'
         'protozero'
         'python'
         'sqlite'
         'ttf-dejavu')
makedepends=('boost' 'cmake' 'git')
conflicts=('mapnik')
provides=('mapnik')
source=('git+https://github.com/mapnik/mapnik.git'
        'mapnik-cmake-harfbuzz.patch'
        'mapnik-datasource-ogr-test.patch'
        'mapnik-plugins-input-csv_utils-trim_if.patch'
        'git+https://github.com/mapnik/test-data.git'
        'git+https://github.com/mapbox/geometry.hpp.git'
        'git+https://github.com/mapbox/polylabel.git')
sha256sums=('SKIP'
            '90f541c0845e3c7005564fa113771ce01cf2bcfd57662b7fa8849aabf4151638'
            '3fcf178e646df526e9a5c278f56ad16e4f75d2f27108e7b33419649a46b92f52'
            'ec3034bbfc06604aefdf4c2caec7e44aff9dda65d893f2829b89f29e0d9c9c1f'
            'SKIP'
            'SKIP'
            'SKIP')

pkgver() {
  cd mapnik || exit
  printf "4.0.0.%s" "$(git describe --all --long | cut -d- -f3)"
}

prepare() {
  cd mapnik || exit
  patch -Np1 < ../mapnik-cmake-harfbuzz.patch
  patch -Np1 < ../mapnik-datasource-ogr-test.patch
  patch -Np1 < ../mapnik-plugins-input-csv_utils-trim_if.patch
  git submodule init \
    test/data \
    deps/mapbox/geometry \
    deps/mapbox/polylabel
  git config submodule.test/data.url "$srcdir"/test-data
  git config submodule.deps/mapbox/geometry.url "$srcdir"/geometry.hpp
  git config submodule.deps/mapbox/polylabel.url "$srcdir"/polylabel
  git -c protocol.file.allow=always submodule update \
    test/data \
    deps/mapbox/geometry \
    deps/mapbox/polylabel
}

build() {
  cmake -B mapnik_build -S mapnik \
    -DBUILD_DEMO_VIEWER:BOOL=OFF \
    -DCMAKE_BUILD_TYPE:STRING=Release \
    -DCMAKE_INSTALL_PREFIX:PATH=/usr \
    -DFONTS_INSTALL_DIR:PATH=share/fonts/TTF \
    -DUSE_EXTERNAL_MAPBOX_PROTOZERO:BOOL=ON \
    -DUSE_EXTERNAL_MAPBOX_VARIANT:BOOL=ON
  cmake --build mapnik_build
}

check() {
  ctest --output-on-failure --test-dir mapnik_build
}

package(){
  DESTDIR="$pkgdir" cmake --install mapnik_build --strip

  # License
  install -Dm644 "$srcdir"/mapnik/COPYING "$pkgdir"/usr/share/licenses/"$pkgname"/LICENSE

  # Remove bundled fonts in favor of those from 'ttf-dejavu'
  rm -rf "$pkgdir"/usr/share/fonts
}