Add CMUCL Common Lisp compiler

svn path=/nixpkgs/trunk/; revision=24618
This commit is contained in:
Marco Maggesi 2010-11-08 08:58:50 +00:00
parent 5b79f27f5c
commit caf0e7209a
2 changed files with 47 additions and 0 deletions

View file

@ -0,0 +1,45 @@
{stdenv, fetchurl}:
let
inherit (stdenv) system;
version = "20b";
downloadUrl = arch:
"http://common-lisp.net/project/cmucl/downloads/release/" +
"${version}/cmucl-${version}-${arch}.tar.bz2";
fetchDist = {arch, sha256}: fetchurl {
url = downloadUrl arch;
inherit sha256;
};
dist =
if system == "i686-linux" then fetchDist {
arch = "x86-linux";
sha256 = "1s00r1kszk5zhmv7m8z5q2wcqjn2gn7fbqwji3hgnsdvbb1f3jdn";
}
else if system == "i686-darwin" then fetchDist {
arch = "x86-darwin";
sha256 = "0vd3zbp5zcp0hjd3y03k595hmri8hw884brjpwjiby3jpm3l40np";
}
else throw "Unsupported platform for cmucl.";
in
stdenv.mkDerivation {
name = "cmucl-binary-${version}";
buildCommand = ''
ensureDir $out
tar -C $out -xjf ${dist}
patchelf --set-interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" \
$out/bin/lisp
'';
meta = {
description = "The CMU implementation of Common Lisp";
longDescription = ''
CMUCL is a free implementation of the Common Lisp programming language
which runs on most major Unix platforms. It mainly conforms to the
ANSI Common Lisp standard.
'';
license = "free"; # public domain
homepage = http://www.cons.org/cmucl/;
};
}

View file

@ -1453,6 +1453,8 @@ let
buildClang = true;
};
cmucl_binary = callPackage ../development/compilers/cmucl/binary.nix { };
dylan = callPackage ../development/compilers/gwydion-dylan {
dylan =
import ../development/compilers/gwydion-dylan/binary.nix {