1{ lib
2, stdenv
3, fetchurl
4, installShellFiles
5}:
6
7stdenv.mkDerivation (finalAttrs: {
8 pname = "cmucl-binary";
9 version = "21d";
10
11 srcs = [
12 (fetchurl {
13 url = "http://common-lisp.net/project/cmucl/downloads/release/"
14 + finalAttrs.version + "/cmucl-${finalAttrs.version}-x86-linux.tar.bz2";
15 hash = "sha256-RdctcqPTtQh1Yb3BrpQ8jtRFQn85OcwOt1l90H6xDZs=";
16 })
17 (fetchurl {
18 url = "http://common-lisp.net/project/cmucl/downloads/release/"
19 + finalAttrs.version + "/cmucl-${finalAttrs.version}-x86-linux.extra.tar.bz2";
20 hash = "sha256-zEmiW3m5VPpFgPxV1WJNCqgYRlHMovtaMXcgXyNukls=";
21 })];
22
23 sourceRoot = ".";
24
25 outputs = [ "out" "doc" "man" ];
26
27 nativeBuildInputs = [
28 installShellFiles
29 ];
30
31 dontConfigure = true;
32 dontBuild = true;
33
34 installPhase = ''
35 runHook preInstall
36
37 mkdir -pv $out $doc/share $man
38 mv bin lib -t $out
39 mv -v doc -t $doc/share
40 installManPage man/man1/*
41
42 runHook postInstall
43 '';
44
45 postFixup = ''
46 patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
47 $out/bin/lisp
48 '';
49
50 meta = with lib; {
51 homepage = "http://www.cons.org/cmucl/";
52 description = "The CMU implementation of Common Lisp";
53 longDescription = ''
54 CMUCL is a free implementation of the Common Lisp programming language
55 which runs on most major Unix platforms. It mainly conforms to the
56 ANSI Common Lisp standard.
57 '';
58 license = licenses.publicDomain;
59 maintainers = lib.teams.lisp.members;
60 platforms = [ "i686-linux" "x86_64-linux" ];
61 };
62})