45 lines
1.8 KiB
Plaintext
45 lines
1.8 KiB
Plaintext
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.
|