nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchurl,
5 texinfo,
6}:
7
8stdenv.mkDerivation rec {
9 pname = "marst";
10 version = "2.8";
11
12 src = fetchurl {
13 url = "mirror://gnu/${pname}/${pname}-${version}.tar.gz";
14 hash = "sha256-139HA7C0S1C+V5CPnVVu5sO+3ZfWOMQpSdauyE+AcLo=";
15 };
16
17 nativeBuildInputs = [
18 texinfo
19 ];
20
21 postBuild = ''
22 makeinfo doc/marst.texi -o doc/marst.info
23 '';
24
25 postInstall = ''
26 install -m644 doc/marst.info -Dt $out/share/info/
27 install -m644 doc/marst.pdf -Dt $out/share/doc/${pname}/
28 '';
29
30 meta = {
31 homepage = "https://www.gnu.org/software/marst/";
32 description = "Algol-60-to-C translator";
33 longDescription = ''
34 MARST is an Algol-to-C translator. It automatically translates programs
35 written on the algorithmic language Algol 60 to the C programming
36 language.
37
38 The MARST package includes three main components:
39
40 - the translator, MARST, that translates Algol 60 programs to the C
41 programming language.
42
43 - the library, ALGLIB, that contains precompiled standard Algol 60
44 procedures and other necessary library routines. This library is to be
45 used at linking stage. (In the distribution the name libalgol.a is used
46 for this library.)
47
48 - the converter, MACVT, that allows to convert existing Algol 60 programs
49 from some other representations to MARST representation.
50 '';
51 license = lib.licenses.gpl3Plus;
52 maintainers = [ ];
53 platforms = lib.platforms.unix;
54 };
55}