60 lines
1.8 KiB
Nix
60 lines
1.8 KiB
Nix
{ stdenv, fetchurl, mpfr, m4, binutils, fetchcvs, emacs, zlib, which
|
|
, texinfo, libX11, xproto, inputproto, libXi, gmp
|
|
, libXext, xextproto, libXt, libXaw, libXmu } :
|
|
|
|
assert stdenv ? cc ;
|
|
assert stdenv.cc.isGNU ;
|
|
assert stdenv.cc ? libc ;
|
|
assert stdenv.cc.libc != null ;
|
|
|
|
stdenv.mkDerivation rec {
|
|
name = "gcl-${version}";
|
|
version = "2.6.12";
|
|
|
|
src = fetchurl {
|
|
sha256 = "1s4hs2qbjqmn9h88l4xvsifq5c3dlc5s74lyb61rdi5grhdlkf4f";
|
|
url = "http://gnu.spinellicreations.com/gcl/${name}.tar.gz";
|
|
};
|
|
|
|
patches = [(fetchurl {
|
|
url = https://gitweb.gentoo.org/repo/gentoo.git/plain/dev-lisp/gcl/files/gcl-2.6.12-gcc5.patch;
|
|
sha256 = "00jbsn0qp8ki2w7dx8caha7g2hr9076xa6bg48j3qqqncff93zdh";
|
|
})];
|
|
|
|
buildInputs = [
|
|
mpfr m4 binutils emacs gmp
|
|
libX11 xproto inputproto libXi
|
|
libXext xextproto libXt libXaw libXmu
|
|
zlib which texinfo
|
|
];
|
|
|
|
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 = ''
|
|
# 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${stdenv.cc.cc}/include -I${stdenv.cc.libc}/include ^g' -i makefile
|
|
|
|
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -fgnu89-inline"
|
|
'';
|
|
|
|
/* doConfigure should be removed if not needed */
|
|
# phaseNames = ["setVars" "doUnpack" "preBuild"
|
|
# "doConfigure" "doMakeInstall"];
|
|
|
|
meta = {
|
|
description = "GNU Common Lisp compiler working via GCC";
|
|
maintainers = [ stdenv.lib.maintainers.raskin ];
|
|
platforms = stdenv.lib.platforms.linux;
|
|
};
|
|
}
|