2022-11-21 17:40:18 +00:00
|
|
|
{ lib
|
|
|
|
, stdenv
|
|
|
|
, fetchurl
|
|
|
|
}:
|
2020-04-24 23:36:52 +00:00
|
|
|
|
2022-11-21 17:40:18 +00:00
|
|
|
stdenv.mkDerivation (finalAttrs: {
|
2020-04-24 23:36:52 +00:00
|
|
|
pname = "byacc";
|
2022-11-21 17:40:18 +00:00
|
|
|
version = "20221106";
|
2020-04-24 23:36:52 +00:00
|
|
|
|
|
|
|
src = fetchurl {
|
2022-11-21 17:40:18 +00:00
|
|
|
urls = let
|
|
|
|
inherit (finalAttrs) pname version;
|
|
|
|
in [
|
2020-04-24 23:36:52 +00:00
|
|
|
"https://invisible-mirror.net/archives/byacc/${pname}-${version}.tgz"
|
2022-11-21 17:40:18 +00:00
|
|
|
"ftp://ftp.invisible-island.net/byacc/${pname}-${version}.tgz"
|
2020-04-24 23:36:52 +00:00
|
|
|
];
|
2022-11-21 17:40:18 +00:00
|
|
|
hash = "sha256-qJm+Inu8rJz3cA99u1qElGiPH58GF7UQdi2urOR7nRI=";
|
2020-04-24 23:36:52 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
configureFlags = [
|
|
|
|
"--program-transform-name='s,^,b,'"
|
|
|
|
];
|
|
|
|
|
|
|
|
doCheck = true;
|
|
|
|
|
|
|
|
postInstall = ''
|
|
|
|
ln -s $out/bin/byacc $out/bin/yacc
|
|
|
|
'';
|
|
|
|
|
2021-01-15 22:18:51 +00:00
|
|
|
meta = with lib; {
|
2020-04-24 23:36:52 +00:00
|
|
|
homepage = "https://invisible-island.net/byacc/byacc.html";
|
2022-11-21 17:40:18 +00:00
|
|
|
description = "Berkeley YACC";
|
|
|
|
longDescription = ''
|
|
|
|
Berkeley Yacc (byacc) is generally conceded to be the best yacc variant
|
|
|
|
available. In contrast to bison, it is written to avoid dependencies upon
|
|
|
|
a particular compiler.
|
|
|
|
|
|
|
|
Byacc was written around 1990 by Robert Corbett who is the original author
|
|
|
|
of bison. Byacc is noted in Lex & Yacc by John Levine et al (O'Reilly,
|
|
|
|
1992) for its compatibility with the original yacc program.
|
|
|
|
|
|
|
|
Nowadays byacc is maintained by Thomas E. Dickey.
|
|
|
|
'';
|
|
|
|
changelog = "https://invisible-island.net/byacc/CHANGES.html";
|
2020-04-24 23:36:52 +00:00
|
|
|
license = licenses.publicDomain;
|
2022-11-21 17:40:18 +00:00
|
|
|
maintainers = with maintainers; [ AndersonTorres ];
|
2020-04-24 23:36:52 +00:00
|
|
|
platforms = platforms.unix;
|
|
|
|
};
|
2022-11-21 17:40:18 +00:00
|
|
|
})
|