at 23.05-pre 1.3 kB view raw
1{ lib, stdenv 2, fetchFromGitHub 3, cmake 4, expat 5, fmt 6, proj 7, bzip2 8, zlib 9, boost 10, postgresql 11, withLuaJIT ? false 12, lua 13, luajit 14, libosmium 15, protozero 16, rapidjson 17, testers 18}: 19 20stdenv.mkDerivation (finalAttrs: { 21 pname = "osm2pgsql"; 22 version = "1.7.2"; 23 24 src = fetchFromGitHub { 25 owner = "openstreetmap"; 26 repo = "osm2pgsql"; 27 rev = finalAttrs.version; 28 hash = "sha256-KJkqzvsm0IMaqeKnIbLGeOSJrsLvW+z7lCg6NbuU13g="; 29 }; 30 31 postPatch = '' 32 # Remove bundled libraries 33 rm -r contrib 34 ''; 35 36 nativeBuildInputs = [ cmake ]; 37 38 buildInputs = [ expat fmt proj bzip2 zlib boost postgresql libosmium protozero rapidjson ] 39 ++ lib.optional withLuaJIT luajit 40 ++ lib.optional (!withLuaJIT) lua; 41 42 cmakeFlags = [ 43 "-DEXTERNAL_LIBOSMIUM=ON" 44 "-DEXTERNAL_PROTOZERO=ON" 45 "-DEXTERNAL_RAPIDJSON=ON" 46 "-DEXTERNAL_FMT=ON" 47 ] ++ lib.optional withLuaJIT "-DWITH_LUAJIT:BOOL=ON"; 48 49 passthru.tests.version = testers.testVersion { 50 package = finalAttrs.finalPackage; 51 }; 52 53 meta = with lib; { 54 description = "OpenStreetMap data to PostgreSQL converter"; 55 homepage = "https://osm2pgsql.org"; 56 license = licenses.gpl2Plus; 57 platforms = platforms.unix; 58 maintainers = with maintainers; [ jglukasik das-g ]; 59 }; 60})