about summary refs log tree commit diff
path: root/third_party/lisp/bordeaux-threads.nix
blob: 92bc1f2629c48d4dca63509c9d76e3cf57d3240c (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
# This library is meant to make writing portable multi-threaded apps
# in Common Lisp simple.
{ depot, ... }:

let
  src = builtins.fetchGit {
    url = "https://github.com/sionescu/bordeaux-threads.git";
    rev = "499b6d3f0ce635417d6096acf0a671d8bf3f6e5f";
  };
  getSrc = f: "${src}/src/${f}";
in depot.nix.buildLisp.library {
  name = "bordeaux-threads";
  deps = [ depot.third_party.lisp.alexandria ];

  srcs = map getSrc [
    "pkgdcl.lisp"
    "bordeaux-threads.lisp"
  ] ++ [
    {
      sbcl = getSrc "impl-sbcl.lisp";
      ecl = getSrc "impl-ecl.lisp";
    }
  ] ++ map getSrc [
    "default-implementations.lisp"
  ];
}