5262e5bf6c
This is slightly better than the (mostly untested) mess we had before: Just implement the one thing we need using the tools the one implementation we support (SBCL) gives us. Eventually, we'll want to make this portable, probably using osicat. Unfortunately, packaging this requires support for cffi-grovel (b/383) which buildLisp lacks at the moment. Change-Id: I6960015f80e6a5dfde67baf55537c5274a19e4e2 Reviewed-on: https://cl.tvl.fyi/c/depot/+/11356 Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI Autosubmit: sterni <sternenseemann@systemli.org>
51 lines
1 KiB
Nix
51 lines
1 KiB
Nix
# Copyright (C) 2021 by the TVL Authors
|
|
# SPDX-License-Identifier: LGPL-2.1-or-later
|
|
{ depot, pkgs, ... }:
|
|
|
|
depot.nix.buildLisp.library {
|
|
name = "mime4cl";
|
|
|
|
deps = [
|
|
depot.third_party.lisp.flexi-streams
|
|
depot.third_party.lisp.npg
|
|
depot.third_party.lisp.trivial-gray-streams
|
|
depot.third_party.lisp.qbase64
|
|
{ sbcl = depot.nix.buildLisp.bundled "sb-posix"; }
|
|
];
|
|
|
|
srcs = [
|
|
./ex-sclf.lisp
|
|
./package.lisp
|
|
./endec.lisp
|
|
./streams.lisp
|
|
./mime.lisp
|
|
./address.lisp
|
|
];
|
|
|
|
tests = {
|
|
name = "mime4cl-tests";
|
|
|
|
srcs = [
|
|
./test/rt.lisp
|
|
./test/package.lisp
|
|
(pkgs.writeText "nix-samples.lisp" ''
|
|
(in-package :mime4cl-tests)
|
|
|
|
;; override auto discovery which doesn't work in the nix store
|
|
(defvar *samples-directory* (pathname "${./test/samples}/"))
|
|
'')
|
|
./test/temp-file.lisp
|
|
./test/endec.lisp
|
|
./test/address.lisp
|
|
./test/mime.lisp
|
|
];
|
|
|
|
expression = "(rtest:do-tests)";
|
|
};
|
|
|
|
# limited by sclf
|
|
brokenOn = [
|
|
"ccl"
|
|
"ecl"
|
|
];
|
|
}
|