about summary refs log tree commit diff
path: root/pkgs/profpatsch/netencode/default.nix
blob: bafedc135991610dcc5fd7fc433c219d72e1bf44 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
{ pkgs, writeRustSimpleLib, writeRustSimple, el-semicolon, el-exec }:

let
  version-check = pkgs.buildRustCrate {
    pname = "version-check";
    version = "0.9.2";
    crateName = "version-check";
    sha256 = "1vwvc1mzwv8ana9jv8z933p2xzgj1533qwwl5zr8mi89azyhq21v";
  };
  memchr = pkgs.buildRustCrate {
    pname = "memchr";
    version = "2.3.3";
    crateName = "memchr";
    sha256 = "1ivxvlswglk6wd46gadkbbsknr94gwryk6y21v64ja7x4icrpihw";
  };
  nom = pkgs.buildRustCrate {
    pname = "nom";
    version = "5.1.1";
    crateName = "nom";
    sha256 = "1gb4r6mjwd645jqh02nhn60i7qkw8cgy3xq1r4clnmvz3cmkv1l0";
    dependencies = [ memchr ];
    buildDependencies = [ version-check ];
    features = [ "std" "alloc" ];
  };

  netencode-rs-common = tests: writeRustSimpleLib "netencode" {
    dependencies = [ nom ];
    buildTests = tests;
    release = false;
    verbose = true;
  } ./netencode.rs;

  netencode-rs-tests = netencode-rs-common true;

  netencode-rs = netencode-rs-common false;

  record-get = writeRustSimple "record-get" {
    dependencies = [ netencode-rs el-semicolon ];
    # TODO: for some reason the skarnet linker flag
    # is propagated by the link target is not?
  } ./record-get.rs;


in {
  inherit
   netencode-rs
   netencode-rs-tests
   record-get
   ;
}