nixpkgs/pkgs/development/compilers/gcl/2.6.13-pre.nix
Jan Malakhovski 591ccfe5b9 treewide: noop: refer to src.name or similar where appropriate, part 3: more use cases
This continues where d8f7f6a5ce left off. Similarly
to that commit, this commit this also points `sourceRoot`s to `src.name` and similar
instead of keeping hardcoded names, and edits other derivation attrs do do the same,
where appropriate.

Also, similarly to d8f7f6a5ce some of expressions this
edits use `srcs` attribute with customly-named sources, so they have to be moved
into `let` blocks to keep evaluation efficient (the other, worse, way to do this
would to recurcively refer to `elemAt n finalAttrs.srcs` or, similarly, with `rec`).
2023-08-11 09:20:44 +00:00

50 lines
1.1 KiB
Nix

{ lib, stdenv, fetchgit, mpfr, m4, binutils, emacs, zlib, which
, texinfo, libX11, xorgproto, libXi, gmp, readline
, libXext, libXt, libXaw, libXmu } :
assert stdenv ? cc ;
assert stdenv.cc.isGNU ;
assert stdenv.cc ? libc ;
assert stdenv.cc.libc != null ;
stdenv.mkDerivation rec {
pname = "gcl";
version = "2.6.13pre124";
src = fetchgit {
sha256 = "sha256-e4cUQlNSfdz+B3urlZ82pf7fTc6aoloUyDDorAUi5kc=";
url = "https://git.savannah.gnu.org/r/gcl.git";
rev = "refs/tags/Version_${builtins.replaceStrings ["."] ["_"] version}";
};
postPatch = ''
sed -e 's/<= obj-date/<= (if (= 0 obj-date) 1 obj-date)/' -i lsp/make.lisp
'';
sourceRoot = "${src.name}/gcl";
# breaks when compiling in parallel
enableParallelBuilding = false;
patches = [];
buildInputs = [
mpfr m4 binutils emacs gmp
libX11 xorgproto libXi
libXext libXt libXaw libXmu
zlib which texinfo readline
];
configureFlags = [
"--enable-ansi"
];
hardeningDisable = [ "pic" "bindnow" ];
meta = {
description = "GNU Common Lisp compiler working via GCC";
maintainers = lib.teams.lisp.members;
platforms = lib.platforms.linux;
};
}