tuicam: init at 0.0.2 (#377825)
[NixPkgs.git] / pkgs / by-name / os / osm2pgsql / package.nix
blobd4fbb130bea9dc36c2364fb92fcecd2a012da198
2   lib,
3   stdenv,
4   fetchFromGitHub,
5   cmake,
6   expat,
7   fmt_11,
8   proj,
9   bzip2,
10   cli11,
11   zlib,
12   boost,
13   libpq,
14   python3,
15   withLuaJIT ? false,
16   lua,
17   luajit,
18   libosmium,
19   nlohmann_json,
20   opencv,
21   potrace,
22   protozero,
23   testers,
26 stdenv.mkDerivation (finalAttrs: {
27   pname = "osm2pgsql";
28   version = "2.0.1";
30   src = fetchFromGitHub {
31     owner = "osm2pgsql-dev";
32     repo = "osm2pgsql";
33     rev = finalAttrs.version;
34     hash = "sha256-+EFvYloLm/cDOflqj6ZIgjFoljKhYBVIKxD8L9j2Hj4=";
35   };
37   postPatch = ''
38     # Remove bundled libraries
39     rm -r contrib
40   '';
42   nativeBuildInputs = [ cmake ];
44   buildInputs =
45     [
46       boost
47       bzip2
48       cli11
49       expat
50       fmt_11
51       libosmium
52       libpq
53       nlohmann_json
54       opencv
55       potrace
56       proj
57       protozero
58       (python3.withPackages (
59         p: with p; [
60           psycopg2
61           pyosmium
62         ]
63       ))
64       zlib
65     ]
66     ++ lib.optional withLuaJIT luajit
67     ++ lib.optional (!withLuaJIT) lua;
69   cmakeFlags = [
70     (lib.cmakeBool "EXTERNAL_LIBOSMIUM" true)
71     (lib.cmakeBool "EXTERNAL_PROTOZERO" true)
72     (lib.cmakeBool "EXTERNAL_FMT" true)
73     (lib.cmakeBool "WITH_LUAJIT" withLuaJIT)
74   ];
76   passthru.tests.version = testers.testVersion {
77     package = finalAttrs.finalPackage;
78   };
80   meta = {
81     description = "OpenStreetMap data to PostgreSQL converter";
82     homepage = "https://osm2pgsql.org";
83     license = lib.licenses.gpl2Plus;
84     platforms = lib.platforms.unix;
85     maintainers =
86       lib.teams.geospatial.members
87       ++ (with lib.maintainers; [
88         jglukasik
89         das-g
90       ]);
91   };