From d7e70b1d7270548272267e9b01dc9867f94f5f74 Mon Sep 17 00:00:00 2001 From: sterni Date: Fri, 13 Aug 2021 22:24:50 +0200 Subject: feat(nix/buildLisp): add ccl This adds support for Clozure's CL implementation to buildLisp. This is quite trivial in comparison to ECL since SBCL and CCL have very similar in how they work (so much so that CCL also suffers from b/136). Also the similarities in the code actually added here are striking, so I'll try to make an effort to reduce the code duplication in the future. To fix builds with CCL the following changes were made: * //3p/lisp/nibbles: The double inclusion of the types.lisp file was fixed. CCL doesn't like double definitions and refuses to compile otherwise. * //3p/lisp/physical-quantities: Update to a new bug fix release which contains a compilation fix for CCL. * //3p/lisp/routes: apply a patch fixing the build which was previously failing due to a double definition. * //3p/lisp/usocket: only depend on sb-bsd-sockets for SBCL and ECL, the latter of which seems to have a SBCL compatible implementation of the package. * Conditionally include a few CCL-specific source files and add `badImplementation` entries for the remaining failures which are //fun/gemma (to be expected) and //web/panettone which fails with an incredibly vague message. Change-Id: I666efdc39a0f16ee1bb6e23225784c709b04e740 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3350 Tested-by: BuildkiteCI Reviewed-by: tazjin --- web/panettone/default.nix | 1 + 1 file changed, 1 insertion(+) (limited to 'web') diff --git a/web/panettone/default.nix b/web/panettone/default.nix index 8dd4543af0d2..a01e0d81c83a 100644 --- a/web/panettone/default.nix +++ b/web/panettone/default.nix @@ -50,5 +50,6 @@ depot.nix.buildLisp.program { brokenOn = [ "ecl" # dependencies use dynamic cffi + "ccl" # The value NIL is not of the expected type STRING. when loading model.lisp ]; } -- cgit 1.4.1