diff options
author | Anderson Torres <torres.anderson.85@protonmail.com> | 2022-10-24 00:26:05 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-24 00:26:05 -0300 |
commit | a0ee3153a9a8baca6529b7f30452224e44a16a0d (patch) | |
tree | 043f75063e3e9e6f71b92d0d198dc1d7038c563b | |
parent | 3d13fe2b8cf4efac042475e94441070136a052e2 (diff) | |
parent | 9df05da28f9b13c361d7fb3fbcca41f940e3edd6 (diff) |
Merge pull request #197303 from atorres1985-contrib/cmucl
cmucl_binary: 21b -> 21d
-rw-r--r-- | pkgs/development/compilers/cmucl/binary.nix | 78 |
1 files changed, 48 insertions, 30 deletions
diff --git a/pkgs/development/compilers/cmucl/binary.nix b/pkgs/development/compilers/cmucl/binary.nix index 12e863b2070e1..fb0f8b2ce2c8a 100644 --- a/pkgs/development/compilers/cmucl/binary.nix +++ b/pkgs/development/compilers/cmucl/binary.nix @@ -1,44 +1,62 @@ -{lib, stdenv, fetchurl}: - -let - inherit (stdenv.hostPlatform) system; - version = "21b"; - 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 = "13k3b5ygnbsq6n2i3r5i4ljw3r1qlskn2p5f4x9hrx6vfvbb3k7a"; - } - else throw "Unsupported platform for cmucl."; -in - -stdenv.mkDerivation { +{ lib +, stdenv +, fetchurl +, installShellFiles +}: + +stdenv.mkDerivation (finalAttrs: { pname = "cmucl-binary"; - inherit version; + version = "21d"; + + srcs = [ + (fetchurl { + url = "http://common-lisp.net/project/cmucl/downloads/release/" + + finalAttrs.version + "/cmucl-${finalAttrs.version}-x86-linux.tar.bz2"; + hash = "sha256-RdctcqPTtQh1Yb3BrpQ8jtRFQn85OcwOt1l90H6xDZs="; + }) + (fetchurl { + url = "http://common-lisp.net/project/cmucl/downloads/release/" + + finalAttrs.version + "/cmucl-${finalAttrs.version}-x86-linux.extra.tar.bz2"; + hash = "sha256-zEmiW3m5VPpFgPxV1WJNCqgYRlHMovtaMXcgXyNukls="; + })]; + + sourceRoot = "."; + + outputs = [ "out" "doc" "man" ]; + + nativeBuildInputs = [ + installShellFiles + ]; + + dontConfigure = true; + dontBuild = true; - buildCommand = '' - mkdir -p $out - tar -C $out -xjf ${dist} + installPhase = '' + runHook preInstall + + mkdir -pv $out $doc/share $man + mv bin lib -t $out + mv -v doc -t $doc/share + installManPage man/man1/* + + runHook postInstall + ''; + + postFixup = '' patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ $out/bin/lisp ''; - meta = { + meta = with lib; { + homepage = "http://www.cons.org/cmucl/"; 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 = lib.licenses.free; # public domain - homepage = "http://www.cons.org/cmucl/"; + license = licenses.publicDomain; maintainers = [ ]; - platforms = lib.platforms.linux; + platforms = [ "i686-linux" "x86_64-linux" ]; }; -} +}) |