1{
2 lib,
3 stdenv,
4 catch2,
5 fetchFromGitHub,
6 cmake,
7 nix-update-script,
8}:
9
10stdenv.mkDerivation rec {
11 pname = "immer";
12 version = "0.8.1";
13
14 src = fetchFromGitHub {
15 owner = "arximboldi";
16 repo = "immer";
17 tag = "v${version}";
18 hash = "sha256-Tyj2mNyLhrcFNQEn4xHC8Gz7/jtA4Dnkjtk8AAXJEw8=";
19 };
20
21 nativeBuildInputs = [
22 cmake
23 ];
24
25 buildInputs = [
26 catch2
27 ];
28
29 strictDeps = true;
30
31 dontBuild = true;
32 dontUseCmakeBuildDir = true;
33
34 passthru.updateScript = nix-update-script { };
35
36 meta = {
37 description = "Postmodern immutable and persistent data structures for C++ — value semantics at scale";
38 homepage = "https://sinusoid.es/immer";
39 changelog = "https://github.com/arximboldi/immer/releases/tag/v${version}";
40 license = lib.licenses.boost;
41 maintainers = with lib.maintainers; [ sifmelcara ];
42 platforms = lib.platforms.all;
43 };
44}