1{lib, stdenv, fetchurl, bison, flex, readline, ncurses, gnused}:
2
3stdenv.mkDerivation rec {
4 pname = "cdecl";
5 version = "2.5";
6 src = fetchurl {
7 url = "https://www.cdecl.org/files/${pname}-blocks-${version}.tar.gz";
8 sha256 = "1b7k0ra30hh8mg8fqv0f0yzkaac6lfg6n376drgbpxg4wwml1rly";
9 };
10
11 patches = [ ./cdecl-2.5-lex.patch ];
12 preBuild = ''
13 ${gnused}/bin/sed 's/getline/cdecl_getline/g' -i cdecl.c;
14 makeFlagsArray=(CFLAGS="-DBSD -DUSE_READLINE -std=gnu89" LIBS=-lreadline);
15 makeFlags="$makeFlags PREFIX=$out BINDIR=$out/bin MANDIR=$out/man1 CATDIR=$out/cat1 CC=$CC";
16 mkdir -p $out/bin;
17 '';
18 buildInputs = [bison flex readline ncurses];
19
20 meta = {
21 description = "Translator English -- C/C++ declarations";
22 license = lib.licenses.publicDomain;
23 maintainers = with lib.maintainers; [ ];
24 platforms = lib.platforms.unix;
25 };
26}