ripasso-cursive: cosmetic changes (#361736)
[NixPkgs.git] / pkgs / by-name / ma / mapserver / package.nix
blob43996b4c92d58f9aa56f7af509fc4e9f8ea1ede2
2   lib,
3   stdenv,
4   fetchFromGitHub,
6   withPython ? true,
8   cairo,
9   cmake,
10   curl,
11   fcgi,
12   freetype,
13   fribidi,
14   gdal,
15   geos,
16   giflib,
17   harfbuzz,
18   libjpeg,
19   libpng,
20   librsvg,
21   libxml2,
22   pkg-config,
23   postgresql,
24   proj,
25   protobufc,
26   python3,
27   swig,
28   zlib,
31 stdenv.mkDerivation rec {
32   pname = "mapserver";
33   version = "8.2.2";
35   src = fetchFromGitHub {
36     owner = "MapServer";
37     repo = "MapServer";
38     rev = "rel-${lib.replaceStrings [ "." ] [ "-" ] version}";
39     hash = "sha256-tub0Jd1IUkONQ5Mqz8urihbrcFLlOQybLhOvzkcwW54=";
40   };
42   nativeBuildInputs =
43     [
44       cmake
45       pkg-config
46     ]
47     ++ lib.optionals withPython [
48       swig
49       python3.pkgs.setuptools
50     ];
52   buildInputs = [
53     cairo
54     curl
55     fcgi
56     freetype
57     fribidi
58     gdal
59     geos
60     giflib
61     harfbuzz
62     libjpeg
63     libpng
64     librsvg
65     (libxml2.override { enableHttp = true; })
66     postgresql
67     proj
68     protobufc
69     zlib
70   ] ++ lib.optional withPython python3;
72   cmakeFlags = [
73     (lib.cmakeBool "WITH_KML" true)
74     (lib.cmakeBool "WITH_SOS" true)
75     (lib.cmakeBool "WITH_RSVG" true)
76     (lib.cmakeBool "WITH_CURL" true)
77     (lib.cmakeBool "WITH_CLIENT_WMS" true)
78     (lib.cmakeBool "WITH_CLIENT_WFS" true)
79     (lib.cmakeBool "WITH_PYTHON" withPython)
81     # RPATH of binary /nix/store/.../bin/... contains a forbidden reference to /build/
82     (lib.cmakeBool "CMAKE_SKIP_BUILD_RPATH" true)
83   ];
85   meta = {
86     description = "Platform for publishing spatial data and interactive mapping applications to the web";
87     homepage = "https://mapserver.org/";
88     changelog = "https://mapserver.org/development/changelog/";
89     license = lib.licenses.mit;
90     maintainers = lib.teams.geospatial.members;
91     platforms = lib.platforms.unix;
92   };