nixpkgs/pkgs/development/libraries/mapnik/default.nix

74 lines
2.1 KiB
Nix
Raw Normal View History

{ lib, stdenv, fetchzip
2015-12-02 20:27:32 +00:00
, boost, cairo, freetype, gdal, harfbuzz, icu, libjpeg, libpng, libtiff
, libwebp, libxml2, proj, python, sqlite, zlib
# supply a postgresql package to enable the PostGIS input plugin
, postgresql ? null
2015-12-02 20:27:32 +00:00
}:
stdenv.mkDerivation rec {
pname = "mapnik";
2021-01-20 07:19:03 +00:00
version = "3.1.0";
2015-12-02 20:27:32 +00:00
2016-09-27 14:17:28 +01:00
src = fetchzip {
# this one contains all git submodules and is cheaper than fetchgit
url = "https://github.com/mapnik/mapnik/releases/download/v${version}/mapnik-v${version}.tar.bz2";
2021-01-20 07:19:03 +00:00
sha256 = "sha256-qqPqN4vs3ZsqKgnx21yQhX8OzHca/0O+3mvQ/vnC5EY=";
2015-12-02 20:27:32 +00:00
};
2016-09-27 14:17:28 +01:00
# a distinct dev output makes python-mapnik fail
outputs = [ "out" ];
2016-06-13 10:59:04 +01:00
nativeBuildInputs = [ python ];
2015-12-02 20:27:32 +00:00
buildInputs =
[ boost cairo freetype gdal harfbuzz icu libjpeg libpng libtiff
2018-09-30 12:44:41 +01:00
libwebp libxml2 proj python sqlite zlib
# optional inputs
postgresql
2015-12-02 20:27:32 +00:00
];
prefixKey = "PREFIX=";
2015-12-02 20:27:32 +00:00
2019-03-04 20:41:53 +00:00
preConfigure = ''
patchShebangs ./configure
'';
configureFlags = [
"BOOST_INCLUDES=${boost.dev}/include"
"BOOST_LIBS=${boost.out}/lib"
"CAIRO_INCLUDES=${cairo.dev}/include"
"CAIRO_LIBS=${cairo.out}/lib"
"FREETYPE_INCLUDES=${freetype.dev}/include"
"FREETYPE_LIBS=${freetype.out}/lib"
"GDAL_CONFIG=${gdal}/bin/gdal-config"
"HB_INCLUDES=${harfbuzz.dev}/include"
"HB_LIBS=${harfbuzz.out}/lib"
"ICU_INCLUDES=${icu.dev}/include"
"ICU_LIBS=${icu.out}/lib"
"JPEG_INCLUDES=${libjpeg.dev}/include"
"JPEG_LIBS=${libjpeg.out}/lib"
"PNG_INCLUDES=${libpng.dev}/include"
"PNG_LIBS=${libpng.out}/lib"
"PROJ_INCLUDES=${proj}/include"
"PROJ_LIBS=${proj}/lib"
"SQLITE_INCLUDES=${sqlite.dev}/include"
"SQLITE_LIBS=${sqlite.out}/lib"
"TIFF_INCLUDES=${libtiff.dev}/include"
"TIFF_LIBS=${libtiff.out}/lib"
"WEBP_INCLUDES=${libwebp}/include"
"WEBP_LIBS=${libwebp}/lib"
"XML2_INCLUDES=${libxml2.dev}/include"
"XML2_LIBS=${libxml2.out}/lib"
];
2015-12-02 20:27:32 +00:00
meta = with lib; {
2015-12-02 20:27:32 +00:00
description = "An open source toolkit for developing mapping applications";
homepage = "https://mapnik.org";
2015-12-02 20:27:32 +00:00
maintainers = with maintainers; [ hrdinka ];
license = licenses.lgpl21;
platforms = platforms.all;
};
}