From 2f6eb6594d066a2f9458660db196d633703ec2a0 Mon Sep 17 00:00:00 2001 From: AndersonTorres Date: Thu, 29 Jul 2021 04:20:48 -0300 Subject: [PATCH] marst: init at 2.7 MARST is an Algol-to-C translator. --- pkgs/development/compilers/marst/default.nix | 54 ++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 56 insertions(+) create mode 100644 pkgs/development/compilers/marst/default.nix diff --git a/pkgs/development/compilers/marst/default.nix b/pkgs/development/compilers/marst/default.nix new file mode 100644 index 00000000000..8412c149c23 --- /dev/null +++ b/pkgs/development/compilers/marst/default.nix @@ -0,0 +1,54 @@ +{ lib +, stdenv +, fetchurl +, texinfo +}: + +stdenv.mkDerivation rec { + pname = "marst"; + version = "2.7"; + + src = fetchurl { + url = "mirror://gnu/gnu/${pname}/${pname}-${version}.tar.gz"; + hash = "sha256-Pue50cvjzZ+19iJxfae7VQbxpto7MPgS4jhLh7zk2lA="; + }; + + nativeBuildInputs = [ + texinfo + ]; + + postBuild = '' + makeinfo doc/marst.texi -o doc/marst.info + ''; + + postInstall = '' + install -m644 doc/marst.info -Dt $out/share/info/ + install -m644 doc/marst.pdf -Dt $out/share/doc/${pname}/ + ''; + + meta = with lib; { + homepage = "https://www.gnu.org/software/marst/"; + description = "An Algol-60-to-C translator"; + longDescription = '' + MARST is an Algol-to-C translator. It automatically translates programs + written on the algorithmic language Algol 60 to the C programming + language. + + The MARST package includes three main components: + + - the translator, MARST, that translates Algol 60 programs to the C + programming language. + + - the library, ALGLIB, that contains precompiled standard Algol 60 + procedures and other necessary library routines. This library is to be + used at linking stage. (In the distribution the name libalgol.a is used + for this library.) + + - the converter, MACVT, that allows to convert existing Algol 60 programs + from some other representations to MARST representation. + ''; + license = licenses.gpl3Plus; + maintainers = with maintainers; [ AndersonTorres ]; + platforms = platforms.unix; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8e97207f277..2945cc384f1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11842,6 +11842,8 @@ in manticore = callPackage ../development/compilers/manticore { }; + marst = callPackage ../development/compilers/marst { }; + mercury = callPackage ../development/compilers/mercury { jdk = openjdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 };