1{ lib, stdenv, fetchurl, makeWrapper, cfg }:
2
3stdenv.mkDerivation rec {
4 pname = "sbcl-bootstrap";
5 inherit (cfg) version;
6
7 src = fetchurl {
8 url = "mirror://sourceforge/project/sbcl/sbcl/${version}/sbcl-${version}-${cfg.system}-binary.tar.bz2";
9 inherit (cfg) sha256;
10 };
11
12 nativeBuildInputs = [ makeWrapper ];
13
14 installPhase = ''
15 mkdir -p $out/bin
16 cp -p src/runtime/sbcl $out/bin
17
18 mkdir -p $out/share/sbcl
19 cp -p src/runtime/sbcl $out/share/sbcl
20 cp -p output/sbcl.core $out/share/sbcl
21 mkdir -p $out/bin
22 makeWrapper $out/share/sbcl/sbcl $out/bin/sbcl \
23 --add-flags "--core $out/share/sbcl/sbcl.core"
24 '';
25
26 postFixup = lib.optionalString (!stdenv.isAarch32 && stdenv.isLinux) ''
27 patchelf --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) $out/share/sbcl/sbcl
28 '';
29
30 meta.sourceProvenance = [ lib.sourceTypes.binaryNativeCode ];
31}