about summary refs log tree commit diff
path: root/pkgs/profpatsch/netencode/default.nix
blob: 85a57a6a11f942c7ca05ab15283615864027825a (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.4";
    crateName = "version_check";
    sha256 = "sha256-gqwGGKrA2DYqteb1R+yew32P9jE/mKVdSC/VmuEGIy8=";
  };
  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
   ;
}