Subject: ANNOUNCE: mtc (Modula-2 -> C) available for LINUX
From: "Dr. Norbert Mueller" <[email-masked]>
Date: Mon, 8 Mar 1993 20:13:26 GMT
Newsgroups: comp.os.linux.announce

Uploaded to tsx-11.mit.edu and nic-funet.fi:

        mtcbin.taz   - binaries of mtc, reuse and makemake
        mtcsrc.taz   - sources of mtc, reuse and makemake 

This is a port of mtc, a program to convert Modula-2 to C. Main parts are:

      mtc:       translates sources in Modula-2 to C, with
      makemake:  creates a Makefile to translate, compile and link a source
      reuse:     library of reusable modules

There are two versions of this port: mtcbin.tpz and mtcsrc.tpz 

(1) Binaries are in mtcbin.tpz (scripts \usr\bin\mtc, \usr\bin\makemake,
    the rest can be found in \usr\local\lib\mtc), compiled with gcc-2.3.3 
    and Linux 99pl4. 

(2) Sources are in mtcsrc.tpz. Just do
        make
        make install
    to create and install the binaries found in mtcbin.tpz.

mtc, makemake and reuse are parts of cocktail, the Compiler Construction Tool 
Box of the Gesellschaft fuer Mathematik and Datenverarbeitung, Forschungsstelle
fuer Programmstrukturen an der Universitaet Karlsruhe (Germany)
--------------------------------------------------------------------------------
Usage:

   makemake [directories]

Makemake inspects the Modula-2 sources in the given directories (default:
working directory) and writes a makefile on stdoutput. The makefile describes
the dependencies of the C sources produced by mtc out of Modula-2 sources.
It also describes the translation of Modula-2 sources to C.

   make sources		: calls mtc to convert all Modula-2 sources to C
   make all		: calls cc to compile and link all C programs
 
So, given correct sources in Modula-2, all you have to do is: 
   
   makemake > Makefile ; make

The Modula-sources for the library can be found in /usr/local/lib/mtc/src 
(no InOut.md, but e.g. StdIO.md). Beware: The extension for definition modules 
is '.md', and implementation modules use '.mi'.

If you want to use own libraries, you should modify 
    /usr/local/lib/mtc/makemake/makemake.awk. 
This file is used as a template by the script /usr/bin/makemake.