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