2022-10-08 15:46:52 +00:00
|
|
|
{
|
|
|
|
lib,
|
|
|
|
stdenv,
|
|
|
|
fetchFromGitHub,
|
|
|
|
fetchpatch,
|
|
|
|
cmake,
|
|
|
|
pkg-config,
|
|
|
|
bzip2,
|
|
|
|
libxml2,
|
|
|
|
libzip,
|
|
|
|
boost,
|
|
|
|
lua,
|
|
|
|
luabind,
|
|
|
|
tbb,
|
|
|
|
expat,
|
|
|
|
nixosTests,
|
|
|
|
}:
|
2015-02-22 13:31:35 +00:00
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
2019-08-15 12:41:18 +00:00
|
|
|
pname = "osrm-backend";
|
2022-10-08 15:46:52 +00:00
|
|
|
version = "5.27.1";
|
2015-02-22 13:31:35 +00:00
|
|
|
|
2016-03-26 18:07:55 +00:00
|
|
|
src = fetchFromGitHub {
|
2022-10-08 15:46:52 +00:00
|
|
|
owner = "Project-OSRM";
|
|
|
|
repo = "osrm-backend";
|
2020-10-14 22:57:12 +00:00
|
|
|
rev = "v${version}";
|
2022-10-08 15:46:52 +00:00
|
|
|
sha256 = "sha256-3oA/U5O4GLfwMF7x99JQuFK7ewDrLJLh6BBLYfnyNaM=";
|
2015-02-22 13:31:35 +00:00
|
|
|
};
|
|
|
|
|
2022-10-08 15:46:52 +00:00
|
|
|
nativeBuildInputs = [
|
|
|
|
cmake
|
|
|
|
pkg-config
|
|
|
|
];
|
2021-01-29 01:30:04 +00:00
|
|
|
|
2022-10-08 15:46:52 +00:00
|
|
|
buildInputs = [
|
|
|
|
bzip2
|
|
|
|
libxml2
|
|
|
|
libzip
|
|
|
|
boost
|
|
|
|
lua
|
|
|
|
luabind
|
|
|
|
tbb
|
|
|
|
expat
|
|
|
|
];
|
2015-02-22 13:31:35 +00:00
|
|
|
|
2024-02-10 17:51:49 +00:00
|
|
|
patches = [
|
|
|
|
# gcc-13 build fix:
|
|
|
|
# https://github.com/Project-OSRM/osrm-backend/pull/6632
|
|
|
|
(fetchpatch {
|
|
|
|
name = "gcc-13.patch";
|
|
|
|
url = "https://github.com/Project-OSRM/osrm-backend/commit/af59a9cfaee4d601b5c88391624a05f2a38da17b.patch";
|
|
|
|
hash = "sha256-dB9JP/DrJXpFGLD/paein2z64UtHIYZ17ycb91XWpEI=";
|
|
|
|
})
|
|
|
|
];
|
2023-04-12 14:35:05 +00:00
|
|
|
|
2024-09-27 15:24:02 +00:00
|
|
|
env.NIX_CFLAGS_COMPILE = toString (
|
|
|
|
[
|
|
|
|
# Needed with GCC 12
|
|
|
|
"-Wno-error=stringop-overflow"
|
|
|
|
"-Wno-error=uninitialized"
|
|
|
|
# Needed for GCC 13
|
|
|
|
"-Wno-error=array-bounds"
|
|
|
|
]
|
|
|
|
++
|
|
|
|
# error: aligned deallocation function of type 'void (void *, std::align_val_t) noexcept' is only available on macOS 10.13 or newer
|
|
|
|
(lib.optionals
|
|
|
|
(
|
|
|
|
stdenv.hostPlatform.isDarwin
|
|
|
|
&& stdenv.hostPlatform.isx86_64
|
|
|
|
&& lib.versionOlder stdenv.hostPlatform.darwinMinVersion "10.13"
|
|
|
|
)
|
|
|
|
[
|
|
|
|
"-faligned-allocation"
|
|
|
|
]
|
|
|
|
)
|
|
|
|
);
|
2022-12-23 16:57:29 +00:00
|
|
|
|
2022-10-08 15:46:52 +00:00
|
|
|
postInstall = ''
|
|
|
|
mkdir -p $out/share/osrm-backend
|
|
|
|
cp -r ../profiles $out/share/osrm-backend/profiles
|
|
|
|
'';
|
|
|
|
|
|
|
|
passthru.tests = {
|
|
|
|
inherit (nixosTests) osrm-backend;
|
|
|
|
};
|
2015-03-07 11:31:50 +00:00
|
|
|
|
2015-02-22 13:31:35 +00:00
|
|
|
meta = {
|
2020-04-01 01:11:51 +00:00
|
|
|
homepage = "https://github.com/Project-OSRM/osrm-backend/wiki";
|
2015-04-28 08:54:58 +00:00
|
|
|
description = "Open Source Routing Machine computes shortest paths in a graph. It was designed to run well with map data from the Openstreetmap Project";
|
2022-10-08 15:46:52 +00:00
|
|
|
changelog = "https://github.com/Project-OSRM/osrm-backend/blob/master/CHANGELOG.md";
|
2021-01-15 07:07:56 +00:00
|
|
|
license = lib.licenses.bsd2;
|
2022-10-08 15:46:52 +00:00
|
|
|
maintainers = with lib.maintainers; [ erictapen ];
|
2023-04-12 14:35:05 +00:00
|
|
|
platforms = lib.platforms.unix;
|
2015-02-22 13:31:35 +00:00
|
|
|
};
|
|
|
|
}
|