54 lines
		
	
	
	
		
			2 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
	
		
			2 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
.TH M2MM 1 "$Revision$"
 | 
						|
.ad
 | 
						|
.SH NAME
 | 
						|
m2mm \- Modula-2 makefile generator
 | 
						|
.SH SYNOPSIS
 | 
						|
\fBm2mm\fP [ \fB-I\fPdir \fB-L\fPdir \fB-l\fPlibrary \fB-M\fPflags \fB-C\fPcompiler \fB-S\fPsuffix ] file ...
 | 
						|
.SH DESCRIPTION
 | 
						|
.I M2mm
 | 
						|
is a makefile generator and fast syntax checker for Modula-2 programs.
 | 
						|
The makefile is produced on standard output.
 | 
						|
.I M2mm
 | 
						|
will generate rules to produce an object file
 | 
						|
for every module used in the argument files.
 | 
						|
In addition, it will generate a rule to make a program, for each of the
 | 
						|
program modules given as argument.
 | 
						|
Using 
 | 
						|
.IR make (1)
 | 
						|
without an argument will make all these programs.
 | 
						|
.PP
 | 
						|
In the makefile, the variables \fBMOD\fP, \fBM2FLAGS\fP, \fBIFLAGS\fP, \fBLIBS\fP, and
 | 
						|
\fBSUFFIX\fP will be defined.
 | 
						|
The generated rules have the following form:
 | 
						|
.IP "\fIname\fP.$(SUFFIX): ..."
 | 
						|
.br
 | 
						|
$(MOD) -c $(M2FLAGS) $(IFLAGS) \fIname\fP.mod
 | 
						|
.PP
 | 
						|
.I M2mm
 | 
						|
recognizes the following options:
 | 
						|
.IP \fB-I\fP\fIdir\fP
 | 
						|
Add \fIdir\fP to the list of directories where definition modules are 
 | 
						|
looked for. Also add the flag to \fBIFLAGS\fP.
 | 
						|
The default value for \fBIFLAGS\fP is empty.
 | 
						|
.IP \fB-L\fP\fIdir\fP
 | 
						|
Add \fIdir\fP to the list of directories where definition modules are 
 | 
						|
looked for. Also add the corresponding \fB-I\fP flag to \fBIFLAGS\fP.
 | 
						|
The difference with the \fB-I\fP flag is, that the \fB-L\fP directories are considered
 | 
						|
interfaces to libraries, and thus no rules are generated using or creating
 | 
						|
object files for modules found in these directories. Instead, the user is
 | 
						|
expected to add a library to the \fBLIBS\fP macro, using the \fB-l\fP flag.
 | 
						|
.IP \fB-M\fP\fIflags\fP
 | 
						|
Set \fBM2FLAGS\fP to \fIflags\fP.
 | 
						|
.IP \fB-C\fP\fIcompiler\fP
 | 
						|
Set \fBMOD\fP to \fIcompiler\fP.
 | 
						|
The default value for \fBMOD\fP is "m2".
 | 
						|
.IP \fB-l\fP\fIlibrary\fP
 | 
						|
Add \fIlibrary\fP to the \fBLIBS\fP macro. This macro is initially empty,
 | 
						|
and is passed to the loader.
 | 
						|
.IP \fB-S\fPsuffix
 | 
						|
Set \fBSUFFIX\fP to \fIsuffix\fP.
 | 
						|
The default suffix is "o".
 | 
						|
.SH SEE ALSO
 | 
						|
.IR make "(1), " modula-2 (1)
 | 
						|
.SH DIAGNOSTICS
 | 
						|
Are intended to be self-explanatory.
 |