about summary refs log tree commit diff
path: root/third_party/lisp
diff options
context:
space:
mode:
authorWilliam Carroll <wpcarro@gmail.com>2020-01-23T16·31+0000
committerWilliam Carroll <wpcarro@gmail.com>2020-01-23T16·31+0000
commite76843d337546fe83dbbc9eba9cff52ca6767ef7 (patch)
treed84c362758d6926715ef597d5501e14918549974 /third_party/lisp
parent393bd0a5c7967c9eafbf228413416d7691125e59 (diff)
Create third_party
Create a third_party subdirectory and a third_party/lisp. This directory layout
resembles and is inspired by the layout of Google's mono-repo, Google3. @tazjin
borrowed this idea from Google and I'm borrowing the idea from him.
Diffstat (limited to 'third_party/lisp')
-rw-r--r--third_party/lisp/anaphora.nix17
-rw-r--r--third_party/lisp/cl-colors.nix24
-rw-r--r--third_party/lisp/let-plus.nix23
-rw-r--r--third_party/lisp/prove.nix35
4 files changed, 99 insertions, 0 deletions
diff --git a/third_party/lisp/anaphora.nix b/third_party/lisp/anaphora.nix
new file mode 100644
index 000000000000..04a1dd847feb
--- /dev/null
+++ b/third_party/lisp/anaphora.nix
@@ -0,0 +1,17 @@
+{ depot ? import <depot> {}, ... }:
+
+let
+  src = builtins.fetchGit {
+    url = "https://github.com/tokenrove/anaphora.git";
+    rev = "aeace4c68cf55098a67112750b28f8f2dc6d0e30";
+  };
+in depot.nix.buildLisp.library {
+  name = "anaphora";
+  deps = [];
+  srcs = [
+    "${src}/packages.lisp"
+    "${src}/early.lisp"
+    "${src}/symbolic.lisp"
+    "${src}/anaphora.lisp"
+  ];
+}
diff --git a/third_party/lisp/cl-colors.nix b/third_party/lisp/cl-colors.nix
new file mode 100644
index 000000000000..2217e68ce70b
--- /dev/null
+++ b/third_party/lisp/cl-colors.nix
@@ -0,0 +1,24 @@
+{
+  depot ? import <depot> {},
+  universe ? import <universe> {},
+  ...
+}:
+
+let
+  src = builtins.fetchGit {
+    url = "https://github.com/tpapp/cl-colors.git";
+    rev = "827410584553f5c717eec6182343b7605f707f75";
+  };
+in depot.nix.buildLisp.library {
+  name = "cl-colors";
+  deps = [
+    depot.third_party.lisp.alexandria
+    universe.third_party.lisp.let-plus
+  ];
+  srcs = [
+    "${src}/package.lisp"
+    "${src}/colors.lisp"
+    "${src}/colornames.lisp"
+    "${src}/hexcolors.lisp"
+  ];
+}
diff --git a/third_party/lisp/let-plus.nix b/third_party/lisp/let-plus.nix
new file mode 100644
index 000000000000..a3a15776bf86
--- /dev/null
+++ b/third_party/lisp/let-plus.nix
@@ -0,0 +1,23 @@
+{
+  depot ? import <depot> {},
+  universe ? import <universe> {},
+  ...
+}:
+
+let
+  src = builtins.fetchGit {
+    url = "https://github.com/tpapp/let-plus.git";
+    rev = "7cf18b29ed0fe9c667a9a6a101b08ab9661a59e9";
+  };
+in depot.nix.buildLisp.library {
+  name = "let-plus";
+  deps = [
+    depot.third_party.lisp.alexandria
+    universe.third_party.lisp.anaphora
+  ];
+  srcs = [
+    "${src}/package.lisp"
+    "${src}/let-plus.lisp"
+    "${src}/extensions.lisp"
+  ];
+}
diff --git a/third_party/lisp/prove.nix b/third_party/lisp/prove.nix
new file mode 100644
index 000000000000..d6c0fe7413cb
--- /dev/null
+++ b/third_party/lisp/prove.nix
@@ -0,0 +1,35 @@
+{
+  depot ? import <depot> {},
+  universe? import <universe> {},
+  ...
+}:
+
+let
+  src = builtins.fetchGit {
+    url = "https://github.com/fukamachi/prove.git";
+    rev = "5d71f02795b89e36f34e8c7d50e69b67ec6ca2de";
+  };
+in depot.nix.buildLisp.library {
+  name = "prove";
+  deps = [
+    depot.third_party.lisp.cl-ppcre
+    depot.third_party.lisp.cl-ansi-text
+    depot.third_party.lisp.alexandria
+    depot.third_party.lisp.uiop
+    universe.third_party.lisp.cl-colors
+  ];
+  srcs = [
+    "${src}/src/asdf.lisp"
+    "${src}/src/suite.lisp"
+    "${src}/src/color.lisp"
+    "${src}/src/output.lisp"
+    "${src}/src/prove.lisp"
+    "${src}/src/report.lisp"
+    "${src}/src/reporter.lisp"
+    "${src}/src/test.lisp"
+    "${src}/src/reporter/dot.lisp"
+    "${src}/src/reporter/fiveam.lisp"
+    "${src}/src/reporter/list.lisp"
+    "${src}/src/reporter/tap.lisp"
+  ];
+}