1 { lib, stdenv, fetchurl, readline, gettext, ncurses }:
3 stdenv.mkDerivation rec {
8 url = "mirror://gnu/apl/apl-${version}.tar.gz";
9 sha256 = "sha256-KRhn8bGTdpOrtXvn2aN2GLA3bj4nCVdIVKe75Suyjrg=";
12 buildInputs = [ readline gettext ncurses ];
14 env.NIX_CFLAGS_COMPILE = toString ((lib.optionals stdenv.cc.isGNU [
16 "-Wno-error=int-in-bool-context"
17 "-Wno-error=class-memaccess"
19 "-Wno-error=format-truncation"
21 "-Wno-error=maybe-uninitialized"
23 "-Wno-error=misleading-indentation"
26 "-Wno-error=stringop-overflow"
27 "-Wno-error=use-after-free"
28 ]) ++ lib.optional stdenv.cc.isClang "-Wno-error=null-dereference");
30 patchPhase = lib.optionalString stdenv.hostPlatform.isDarwin ''
31 substituteInPlace src/LApack.cc --replace "malloc.h" "malloc/malloc.h"
35 cp -r support-files/ $out/share/doc/
36 find $out/share/doc/support-files -name 'Makefile*' -delete
40 broken = stdenv.hostPlatform.isDarwin;
41 description = "Free interpreter for the APL programming language";
42 homepage = "https://www.gnu.org/software/apl/";
43 license = licenses.gpl3Plus;
44 maintainers = [ maintainers.kovirobi ];
45 platforms = with platforms; linux ++ darwin;
49 GNU APL is a free interpreter for the programming language APL, with an
50 (almost) complete implementation of ISO standard 13751 aka. Programming
51 Language APL, Extended. GNU APL was written and is being maintained by