biglybt: 3.5.0.0 -> 3.6.0.0
[NixPkgs.git] / pkgs / development / tools / parsing / lemon / default.nix
blob5e59d7441e7e119a7c3f54cc4fd2d907edaa13e4
1 { lib, stdenv, fetchurl }:
3 let
5   srcs = {
6     lemon = fetchurl {
7       sha256 = "1c5pk2hz7j9hix5mpc38rwnm8dnlr2jqswf4lan6v78ccbyqzkjx";
8       url = "http://www.sqlite.org/src/raw/tool/lemon.c?name=680980c7935bfa1edec20c804c9e5ba4b1dd96f5";
9       name = "lemon.c";
10     };
11     lempar = fetchurl {
12       sha256 = "1ba13a6yh9j2cs1aw2fh4dxqvgf399gxq1gpp4sh8q0f2w6qiw3i";
13       url = "http://www.sqlite.org/src/raw/tool/lempar.c?name=01ca97f87610d1dac6d8cd96ab109ab1130e76dc";
14       name = "lempar.c";
15     };
16   };
18 in stdenv.mkDerivation {
19   pname = "lemon";
20   version = "1.69";
22   dontUnpack = true;
24   buildPhase = ''
25     sh -xc "$CC ${srcs.lemon} -o lemon"
26   '';
28   installPhase = ''
29     install -Dvm755 lemon $out/bin/lemon
30     install -Dvm644 ${srcs.lempar} $out/bin/lempar.c
31   '';
33   meta = with lib; {
34     description = "An LALR(1) parser generator";
35     mainProgram = "lemon";
36     longDescription = ''
37       The Lemon program is an LALR(1) parser generator that takes a
38       context-free grammar and converts it into a subroutine that will parse a
39       file using that grammar. Lemon is similar to the much more famous
40       programs "yacc" and "bison", but is not compatible with either.
41     '';
42     homepage = "http://www.hwaci.com/sw/lemon/";
43     license = licenses.publicDomain;
44     platforms = platforms.unix;
45   };