1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
a @ { mpfr, m4, binutils, fetchcvs, emacs, zlib, which
, texinfo, libX11, xproto, inputproto, libXi
, libXext, xextproto, libXt, libXaw, libXmu, stdenv, ... } :
let
buildInputs = with a; [
mpfr m4 binutils emacs gmp
libX11 xproto inputproto libXi
libXext xextproto libXt libXaw libXmu
zlib which texinfo texLive
];
in
(
assert a.stdenv ? cc ;
assert a.stdenv.cc.isGNU ;
assert a.stdenv.cc ? libc ;
assert a.stdenv.cc.libc != null ;
rec {
src = a.fetchurl {
sha256 = "1s4hs2qbjqmn9h88l4xvsifq5c3dlc5s74lyb61rdi5grhdlkf4f";
url="http://gnu.spinellicreations.com/gcl/${name}.tar.gz";
};
name = "gcl-2.6.12";
inherit buildInputs;
configureFlags = [
"--enable-ansi"
];
# Upstream bug submitted - http://savannah.gnu.org/bugs/index.php?30371
# $TMPDIR must have no extension
setVars = a.noDepEntry ''
export TMPDIR="''${TMPDIR:-''${TMP:-''${TEMP}}}/tmp-for-gcl"
mkdir -p "$TMPDIR"
'';
preBuild = a.fullDepEntry (''
sed -re "s@/bin/cat@$(which cat)@g" -i configure */configure
sed -re "s@if test -d /proc/self @if false @" -i configure
sed -re 's^([ \t])cpp ^\1cpp -I${a.stdenv.cc.cc}/include -I${a.stdenv.cc.libc}/include ^g' -i makefile
'') ["minInit" "doUnpack" "addInputs"];
/* doConfigure should be removed if not needed */
phaseNames = ["setVars" "doUnpack" "preBuild"
"doConfigure" "doMakeInstall"];
}) // {
meta = {
description = "GNU Common Lisp compiler working via GCC";
maintainers = [
a.lib.maintainers.raskin
];
platforms = with a.lib.platforms;
linux;
};
}
|