about summary refs log tree commit diff
path: root/third_party/lisp/ironclad.nix (follow)
AgeCommit message (Collapse)AuthorFilesLines
2021-08-15 r/2739 fix(3p/lisp/ironclad): add missing dependency on sb-posixsterni1-0/+1
This was previously propagated from somewhere else, but is actually needed here. Change-Id: I921758320ff5567b451291c69c8532d43a5c898c Reviewed-on: https://cl.tvl.fyi/c/depot/+/3358 Tested-by: BuildkiteCI Reviewed-by: grfn <grfn@gws.fyi>
2020-07-26 r/1483 feat(3p/lisp): Add ironcladGriffin Smith1-0/+145
Add ironclad, a common lisp library for cryptography. This is a huge library with a lot of moving parts - probably most notable here is that I've had to turn off compiling with `:ironclad-assembly`, as it was causing an infinite loop in the compiler due to https://github.com/sharplispers/ironclad/blob/master/src/opt/sbcl/cpu-features.lisp#L9-L10, a mutually self-recursive function that looks like: (defun aes-ni-support-p () (aes-ni-support-p)) Without knowing much about how sbcl handles native-compiled assembly, it seems like this definition should actually be skipped entirely, due to it being defined as a `defknown` in `fndb.lisp`: (defknown ironclad::aes-ni-support-p () (boolean) (any) :overwrite-fndb-silently t) But something about how we're compiling things was causing that not to happen, and the infinite recursion caused the compiler to hang. This should be fixed at some point, but given I only need this library as a transitive dependency down a level I'm not going to attempt to do so now. Change-Id: Id768717991404f959b003c7e2f28f1f4d532b94b Reviewed-on: https://cl.tvl.fyi/c/depot/+/1333 Tested-by: BuildkiteCI Reviewed-by: kanepyork <rikingcoding@gmail.com>