Robert Schütz 2023-08-10 11:58:00 -07:00
parent 4dd23ff329
commit 6208ddedf4

View file

@ -1,32 +1,42 @@
{ lib, stdenv, fetchFromGitHub, cmake, pkg-config { lib
, zlib, curl, protobuf, prime-server, boost, sqlite, libspatialite , stdenv
, luajit, geos39, python3, zeromq }: , fetchFromGitHub
, cmake
, pkg-config
, boost
, curl
, geos
, libspatialite
, luajit
, prime-server
, protobuf
, python3
, sqlite
, zeromq
, zlib
, testers
}:
stdenv.mkDerivation rec { stdenv.mkDerivation (finalAttrs: {
pname = "valhalla"; pname = "valhalla";
version = "3.1.0"; version = "3.4.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "valhalla"; owner = "valhalla";
repo = "valhalla"; repo = "valhalla";
rev = version; rev = finalAttrs.version;
sha256 = "04vxvzy6hnhdvb9lh1p5vqzzi2drv0g4l2gnbdp44glipbzgd4dr"; hash = "sha256-1X9vsWsgnzmXn7bCMhN2PNwtfV0RRdzRFZIrQN2PLfA=";
fetchSubmodules = true; fetchSubmodules = true;
}; };
# https://github.com/valhalla/valhalla/issues/2119
postPatch = '' postPatch = ''
for f in valhalla/mjolnir/transitpbf.h \ substituteInPlace src/bindings/python/CMakeLists.txt \
src/mjolnir/valhalla_query_transit.cc; do --replace "\''${Python_SITEARCH}" "${placeholder "out"}/${python3.sitePackages}"
substituteInPlace $f --replace 'SetTotalBytesLimit(limit, limit)' \
'SetTotalBytesLimit(limit)'
done
''; '';
nativeBuildInputs = [ cmake pkg-config ]; nativeBuildInputs = [
buildInputs = [ cmake
zlib curl protobuf prime-server boost sqlite libspatialite pkg-config
luajit geos39 python3 zeromq
]; ];
cmakeFlags = [ cmakeFlags = [
@ -34,17 +44,36 @@ stdenv.mkDerivation rec {
"-DENABLE_BENCHMARKS=OFF" "-DENABLE_BENCHMARKS=OFF"
]; ];
buildInputs = [
boost
curl
geos
libspatialite
luajit
prime-server
protobuf
python3
sqlite
zeromq
zlib
];
postFixup = '' postFixup = ''
substituteInPlace "$out"/lib/pkgconfig/libvalhalla.pc \ substituteInPlace "$out"/lib/pkgconfig/libvalhalla.pc \
--replace '=''${prefix}//' '=/' \ --replace '=''${prefix}//' '=/' \
--replace '=''${exec_prefix}//' '=/' --replace '=''${exec_prefix}//' '=/'
''; '';
passthru.tests = {
pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
};
meta = with lib; { meta = with lib; {
changelog = "https://github.com/valhalla/valhalla/blob/${finalAttrs.src.rev}/CHANGELOG.md";
description = "Open Source Routing Engine for OpenStreetMap"; description = "Open Source Routing Engine for OpenStreetMap";
homepage = "https://valhalla.readthedocs.io/"; homepage = "https://valhalla.readthedocs.io/";
license = licenses.mit; license = licenses.mit;
maintainers = [ maintainers.Thra11 ]; maintainers = [ maintainers.Thra11 ];
platforms = platforms.linux; platforms = platforms.linux;
}; };
} })