1{ stdenv, fetchurl, readline, gettext, ncurses }:
2
3with stdenv.lib;
4stdenv.mkDerivation rec {
5 name = "gnu-apl-${version}";
6 version = "1.7";
7
8 src = fetchurl {
9 url = "mirror://gnu/apl/apl-${version}.tar.gz";
10 sha256 = "07xq8ddlmz8psvsmwr23gar108ri0lwmw0n6kpxcv8ypas1f5xlg";
11 };
12
13 buildInputs = [ readline gettext ncurses ];
14
15 # Needed with GCC 7
16 NIX_CFLAGS_COMPILE = "-Wno-error=int-in-bool-context";
17
18 patchPhase = optionalString stdenv.isDarwin ''
19 substituteInPlace src/LApack.cc --replace "malloc.h" "malloc/malloc.h"
20 '';
21
22 postInstall = ''
23 cp -r support-files/ $out/share/doc/
24 find $out/share/doc/support-files -name 'Makefile*' -delete
25 '';
26
27 meta = {
28 description = "Free interpreter for the APL programming language";
29 homepage = http://www.gnu.org/software/apl/;
30 license = licenses.gpl3Plus;
31 maintainers = [ maintainers.kovirobi ];
32 platforms = with platforms; linux ++ darwin;
33 inherit version;
34
35 longDescription = ''
36 GNU APL is a free interpreter for the programming language APL, with an
37 (almost) complete implementation of ISO standard 13751 aka. Programming
38 Language APL, Extended. GNU APL was written and is being maintained by
39 Jürgen Sauermann.
40 '';
41 };
42}