initial commit
This commit is contained in:
parent
8af6b69b44
commit
49d31eaeff
5
fast_misc/man/.distr
Normal file
5
fast_misc/man/.distr
Normal file
|
@ -0,0 +1,5 @@
|
|||
afcc.1
|
||||
afm2.1.src
|
||||
fcc.1
|
||||
fm2.1.src
|
||||
fpc.1
|
157
fast_misc/man/afcc.1
Normal file
157
fast_misc/man/afcc.1
Normal file
|
@ -0,0 +1,157 @@
|
|||
.TH AFCC 1
|
||||
.SH NAME
|
||||
afcc \- fast ACK compatible C compiler
|
||||
.SH SYNOPSIS
|
||||
.B afcc
|
||||
[
|
||||
.B \-c
|
||||
]
|
||||
[
|
||||
.B \-O
|
||||
]
|
||||
[
|
||||
.B \-v
|
||||
]
|
||||
[
|
||||
.B \-vn
|
||||
]
|
||||
[ \fB\-D\fIname\fR ]
|
||||
[ \fB\-D\fIname\fB=\fIdef\fR ]
|
||||
[
|
||||
.BI \-I pathname
|
||||
]
|
||||
[
|
||||
.B \-w
|
||||
]
|
||||
[
|
||||
.B \-o
|
||||
.I outfile
|
||||
]
|
||||
[
|
||||
.B \-R
|
||||
]
|
||||
[
|
||||
.BI \-U name
|
||||
]
|
||||
[
|
||||
.BI -M compiler
|
||||
]
|
||||
.I sourcefile ...
|
||||
.SH DESCRIPTION
|
||||
.LP
|
||||
.I Afcc
|
||||
is a fast
|
||||
.B C
|
||||
compiler. It translates
|
||||
.B C
|
||||
programs
|
||||
into ack(1ACK)-compatible relocatable object modules, and does so in one pass.
|
||||
Then, if the \fB\-c\fP flag is not given,
|
||||
.I afcc
|
||||
offers the object modules to a link-editor,
|
||||
to create an executable binary.
|
||||
.LP
|
||||
.I Afcc
|
||||
accepts several types of filename arguments. Files with
|
||||
names ending in
|
||||
.B .c
|
||||
are taken to be
|
||||
.B C
|
||||
source programs.
|
||||
They are compiled, and the resulting object module is placed in the current
|
||||
directory.
|
||||
The object module is named after its source file, the suffix
|
||||
.B .o
|
||||
replacing
|
||||
.BR .c
|
||||
in the name of the object.
|
||||
.LP
|
||||
Other arguments refer to loader options,
|
||||
object modules, or object libraries.
|
||||
Unless the
|
||||
.B \-c
|
||||
flag is given, these modules and libraries, together with the results of any
|
||||
specified compilations, are passed (in the order given) to the
|
||||
link-editor to produce
|
||||
an output file named
|
||||
.IR a.out .
|
||||
You can specify a name for the executable by using the
|
||||
.B \-o
|
||||
option.
|
||||
.SH OPTIONS
|
||||
.LP
|
||||
The \fB\-l\fIlib\fR, \fB\-d\fP, \fB\-n\fP, \fB\-N\fP,
|
||||
\fB\-r\fP, \fB\-s\fP, \fB\-S\fP, \fB\-i\fP, and \fB\-u\fP options are
|
||||
passed to the link-editor program.
|
||||
The \fB\-u\fP option takes an extra argument.
|
||||
.IP \fB\-c\fP
|
||||
.br
|
||||
Suppress the loading phase of the compilation, and force an object module to
|
||||
be produced, even if only one program is compiled.
|
||||
A single object module can be named explicitly using the
|
||||
.B \-o
|
||||
option.
|
||||
.IP \fB\-D\fIname\fR\fB=\fIdef\fR
|
||||
Define a symbol
|
||||
.I name
|
||||
to the
|
||||
preprocessor, as if by "#define".
|
||||
.IP \fB\-D\fIname\fR
|
||||
.br
|
||||
same as \fB\-D\fIname\fB=1\fR.
|
||||
.IP \fB\-I\fIpathname\fR
|
||||
.br
|
||||
Add
|
||||
.I pathname
|
||||
to the list of directories in which to search for
|
||||
.B #include
|
||||
files with filenames not beginning with slash.
|
||||
The compiler first searches for
|
||||
.B #include
|
||||
files in the directory containing
|
||||
.I sourcefile,
|
||||
then in directories in
|
||||
.B \-I
|
||||
options, then in the ACK include directory,
|
||||
and finally, in
|
||||
.I /usr/include.
|
||||
.IP "\fB\-o \fIoutput\fR"
|
||||
Name the final output file
|
||||
.I output.
|
||||
.IP \fB\-O\fP
|
||||
.br
|
||||
Use a version of the compiler that is just a bit slower, but produces
|
||||
better code.
|
||||
.IP \fB\-U\fIname\fR
|
||||
.br
|
||||
Remove any initial definition of
|
||||
.I name.
|
||||
.IP \fB\-v\fP
|
||||
.br
|
||||
Verbose. Print the commands as they are executed.
|
||||
.IP \fB\-vn\fP
|
||||
.br
|
||||
Verbose, no execute. Only print the commands, do not execute them.
|
||||
.IP \fB\-w\fP
|
||||
suppress warning messages.
|
||||
.IP \fB\-R\fP
|
||||
.br
|
||||
test for more compatibility with Kernighan & Ritchie C [1].
|
||||
.IP \fB\-M\fIcompiler\fR
|
||||
.br
|
||||
use \fIcompiler\fR as C-2 compiler instead of the default.
|
||||
.LP
|
||||
Object modules produced by ack(1ACK) and
|
||||
.I afcc
|
||||
can be freely mixed.
|
||||
.SH "SEE ALSO"
|
||||
.IP [1]
|
||||
B.W. Kernighan, D. Ritchie, "\fIThe C programming Language\fP", Prentice-Hall Inc., 1978
|
||||
.IP [2]
|
||||
E.H. Baalbergen, "\fIThe ACK CEM compiler\fP".
|
||||
.IP [3]
|
||||
ack(1ACK) manual page.
|
||||
.SH DIAGNOSTICS
|
||||
Diagnostics are intended to be self-explanatory.
|
||||
.SH REMARKS
|
||||
You need the 4th ACK distribution to be able to use this program.
|
214
fast_misc/man/afm2.1.src
Normal file
214
fast_misc/man/afm2.1.src
Normal file
|
@ -0,0 +1,214 @@
|
|||
.TH FM2 1
|
||||
.SH NAME
|
||||
afm2 \- fast ACK compatible Modula-2 compiler
|
||||
.SH SYNOPSIS
|
||||
.B afm2
|
||||
[
|
||||
.B \-c
|
||||
]
|
||||
[
|
||||
.B \-O
|
||||
]
|
||||
[
|
||||
.B \-v
|
||||
]
|
||||
[
|
||||
.B \-vn
|
||||
]
|
||||
[ \fB\-D\fIname\fR ]
|
||||
[ \fB\-D\fIname\fB=\fIdef\fR ]
|
||||
[
|
||||
.BI \-I pathname
|
||||
]
|
||||
[
|
||||
.BI \-w classes
|
||||
]
|
||||
[
|
||||
.BI \-W classes
|
||||
]
|
||||
[
|
||||
.B \-L
|
||||
]
|
||||
[
|
||||
.B \-o
|
||||
.I outfile
|
||||
]
|
||||
[
|
||||
.B \-R
|
||||
]
|
||||
[
|
||||
.B \-A
|
||||
]
|
||||
[
|
||||
.B \-3
|
||||
]
|
||||
[
|
||||
.B \-_
|
||||
]
|
||||
[
|
||||
.BI \-U name
|
||||
]
|
||||
[
|
||||
.BI -M compiler
|
||||
]
|
||||
.I sourcefile ...
|
||||
.SH DESCRIPTION
|
||||
.LP
|
||||
.I afm2
|
||||
is a fast
|
||||
.B Modula-2
|
||||
compiler. It translates
|
||||
.B Modula-2
|
||||
programs
|
||||
into ack(1ACK)-compatible relocatable object modules, and does so in one pass.
|
||||
Then, if the \fB\-c\fP flag is not given,
|
||||
.I afm2
|
||||
offers the object modules to a link-editor,
|
||||
to create an executable binary.
|
||||
.LP
|
||||
.I Afm2
|
||||
accepts several types of filename arguments. Files with
|
||||
names ending in
|
||||
.B .mod
|
||||
are taken to be
|
||||
.B Modula-2
|
||||
source programs.
|
||||
They are compiled, and the resulting object module is placed in the current
|
||||
directory.
|
||||
The object module is named after its source file, the suffix
|
||||
.B .o
|
||||
replacing
|
||||
.BR .mod
|
||||
in the name of the object.
|
||||
A file with suffix
|
||||
.B .mod
|
||||
is passed through the C preprocessor if it begins with a '#'.
|
||||
.PP
|
||||
Definition modules are not separately compiled. The compiler reads them when
|
||||
it needs them.
|
||||
Definition modules are expected to reside in files with names ending
|
||||
in
|
||||
.BR .def .
|
||||
The name of the file in which a definition module is stored must be the same as
|
||||
the module-name, apart from the extension.
|
||||
Also, in most Unix systems filenames are only 14 characters long.
|
||||
So, given an IMPORT declaration for a module called "LongModulName",
|
||||
the compiler will try to open a file called "LongModulN.def".
|
||||
The requirement does not hold for implementation or program modules,
|
||||
but is certainly recommended.
|
||||
.LP
|
||||
Other arguments refer to loader options,
|
||||
object modules, or object libraries.
|
||||
Unless the
|
||||
.B \-c
|
||||
flag is given, these modules and libraries, together with the results of any
|
||||
specified compilations, are passed (in the order given) to the
|
||||
link-editor to produce
|
||||
an output file named
|
||||
.IR a.out .
|
||||
You can specify a name for the executable by using the
|
||||
.B \-o
|
||||
option.
|
||||
.SH OPTIONS
|
||||
.LP
|
||||
The \fB\-l\fIlib\fR, \fB\-d\fP, \fB\-n\fP, \fB\-N\fP,
|
||||
\fB\-r\fP, \fB\-s\fP, \fB\-S\fP, \fB\-i\fP, and \fB\-u\fP options are
|
||||
passed to the link-editor program.
|
||||
The \fB\-u\fP option takes an extra argument.
|
||||
.IP \fB\-c\fP
|
||||
.br
|
||||
Suppress the loading phase of the compilation, and force an object module to
|
||||
be produced, even if only one program is compiled.
|
||||
A single object module can be named explicitly using the
|
||||
.B \-o
|
||||
option.
|
||||
.IP \fB\-D\fIname\fR\fB=\fIdef\fR
|
||||
Define a symbol
|
||||
.I name
|
||||
to the
|
||||
preprocessor, as if by "#define".
|
||||
.IP \fB\-D\fIname\fR
|
||||
.br
|
||||
same as \fB\-D\fIname\fB=1\fR.
|
||||
.IP \fB\-I\fIpathname\fR
|
||||
.br
|
||||
Add
|
||||
.I pathname
|
||||
to the list of directories in which to search for
|
||||
.B #include
|
||||
files with filenames not beginning with slash.
|
||||
The preprocessor first searches for
|
||||
.B #include
|
||||
files in the directory containing
|
||||
.I sourcefile,
|
||||
then in directories in
|
||||
.B \-I
|
||||
options, then in the ACK include directory,
|
||||
and finally, in
|
||||
.I /usr/include.
|
||||
This flag is also passed to the compiler. When the compiler needs a definition
|
||||
module, it is first searched for in the current directory, then in the
|
||||
directories given to it by the \fB\-I\fP flag, and then in a default directory,
|
||||
.I CHANGE_ME.
|
||||
.I afm2
|
||||
This default directory contains all definition modules of
|
||||
the runtime system.
|
||||
.IP "\fB\-o \fIoutput\fR"
|
||||
Name the final output file
|
||||
.I output.
|
||||
.IP \fB\-O\fP
|
||||
.br
|
||||
Use a version of the compiler that is just a bit slower, but produces
|
||||
better code.
|
||||
.IP \fB\-U\fIname\fR
|
||||
.br
|
||||
Remove any initial definition of
|
||||
.I name.
|
||||
.IP \fB\-v\fP
|
||||
.br
|
||||
Verbose. Print the commands as they are executed.
|
||||
.IP \fB\-vn\fP
|
||||
.br
|
||||
Verbose, no execute. Only print the commands, do not execute them.
|
||||
.IP \fB\-L\fR
|
||||
do not generate code to keep track of
|
||||
the current location in the source code.
|
||||
.IP \fB\-w\fR\fIclasses\fR
|
||||
suppress warning messages whose class is a member of \fIclasses\fR.
|
||||
Currently, there are three classes: \fBO\fR, indicating old-flashioned use,
|
||||
\fBW\fR, indicating "ordinary" warnings, and \fBR\fR, indicating
|
||||
restricted Modula-2.
|
||||
If no \fIclasses\fR are given, all warnings are suppressed.
|
||||
By default, warnings in class \fBO\fR and \fBW\fR are given.
|
||||
.IP \fB\-W\fR\fIclasses\fR
|
||||
allow for warning messages whose class is a member of \fIclasses\fR.
|
||||
.IP \fB\-R\fP
|
||||
.br
|
||||
disable all range-checks.
|
||||
.IP \fB\-A\fP
|
||||
.br
|
||||
enable extra array bound checks. Unfortunately, the back-end used for this
|
||||
compiler is a bit sloppy, so extra array bound checks are needed if you want
|
||||
detection of array bound errors.
|
||||
.IP \fB\-3\fP
|
||||
.br
|
||||
Only accept Modula-2 programs that strictly conform to the 3rd Edition of
|
||||
[1].
|
||||
.IP \fB\-_\fP
|
||||
.br
|
||||
allow for underscores within identifiers. Identifiers may not start or end
|
||||
with an underscore, even if this flag is given.
|
||||
.IP \fB\-M\fIcompiler\fR
|
||||
.br
|
||||
use \fIcompiler\fR as Modula-2 compiler instead of the default.
|
||||
.SH "SEE ALSO"
|
||||
.IP [1]
|
||||
N. Wirth, \fIProgramming in Modula-2\fP, 3rd edition, Springer Verlag.
|
||||
.IP [2]
|
||||
C.J.H. Jacobs, \fIThe ACK Modula-2 Compiler\fP.
|
||||
.IP [3]
|
||||
ack(1ACK) unix manual page.
|
||||
.SH DIAGNOSTICS
|
||||
Diagnostics are intended to be self-explanatory.
|
||||
.SH REMARKS
|
||||
You need the 4th ACK distribution to be able to use this program.
|
160
fast_misc/man/fcc.1
Normal file
160
fast_misc/man/fcc.1
Normal file
|
@ -0,0 +1,160 @@
|
|||
.TH FCC 1
|
||||
.SH NAME
|
||||
fcc \- fast CC-compatible C compiler
|
||||
.SH SYNOPSIS
|
||||
.B fcc
|
||||
[
|
||||
.B \-c
|
||||
]
|
||||
[
|
||||
.B \-O
|
||||
]
|
||||
[
|
||||
.B \-v
|
||||
]
|
||||
[
|
||||
.B \-vn
|
||||
]
|
||||
[ \fB\-D\fIname\fR ]
|
||||
[ \fB\-D\fIname\fB=\fIdef\fR ]
|
||||
[
|
||||
.BI \-I pathname
|
||||
]
|
||||
[
|
||||
.B \-w
|
||||
]
|
||||
[
|
||||
.B \-o
|
||||
.I outfile
|
||||
]
|
||||
[
|
||||
.B \-R
|
||||
]
|
||||
[
|
||||
.BI \-U name
|
||||
]
|
||||
[
|
||||
.BI -M compiler
|
||||
]
|
||||
.I sourcefile ...
|
||||
.SH DESCRIPTION
|
||||
.LP
|
||||
.I Fcc
|
||||
is a fast
|
||||
.B C
|
||||
compiler. It translates
|
||||
.B C
|
||||
programs
|
||||
into cc(1)-compatible relocatable object modules, and does so in one pass.
|
||||
Then, if the \fB\-c\fP flag is not given,
|
||||
.I fcc
|
||||
offers the object modules to a link-editor,
|
||||
to create an executable binary.
|
||||
.LP
|
||||
.I Fcc
|
||||
accepts several types of filename arguments. Files with
|
||||
names ending in
|
||||
.B .c
|
||||
are taken to be
|
||||
.B C
|
||||
source programs.
|
||||
They are compiled, and the resulting object module is placed in the current
|
||||
directory.
|
||||
The object module is named after its source file, the suffix
|
||||
.B .o
|
||||
replacing
|
||||
.BR .c
|
||||
in the name of the object.
|
||||
.LP
|
||||
Other arguments refer to loader options,
|
||||
object modules, or object libraries.
|
||||
Unless the
|
||||
.B \-c
|
||||
flag is given, these modules and libraries, together with the results of any
|
||||
specified compilations, are passed (in the order given) to the
|
||||
link-editor to produce
|
||||
an output file named
|
||||
.IR a.out .
|
||||
You can specify a name for the executable by using the
|
||||
.B \-o
|
||||
option.
|
||||
.LP
|
||||
If a single
|
||||
.B C
|
||||
program is compiled and loaded all at once, the object module
|
||||
file is deleted.
|
||||
.SH OPTIONS
|
||||
.LP
|
||||
The \fB\-l\fIlib\fR, \fB\-d\fP, \fB\-n\fP, \fB\-N\fP,
|
||||
\fB\-r\fP, \fB\-s\fP, \fB\-S\fP, \fB\-i\fP, and \fB\-u\fP options are
|
||||
passed to the link-editor program.
|
||||
The \fB\-u\fP option takes an extra argument.
|
||||
.IP \fB\-c\fP
|
||||
.br
|
||||
Suppress the loading phase of the compilation, and force an object module to
|
||||
be produced, even if only one program is compiled.
|
||||
A single object module can be named explicitly using the
|
||||
.B \-o
|
||||
option.
|
||||
.IP \fB\-D\fIname\fR\fB=\fIdef\fR
|
||||
Define a symbol
|
||||
.I name
|
||||
to the
|
||||
preprocessor, as if by "#define".
|
||||
.IP \fB\-D\fIname\fR
|
||||
.br
|
||||
same as \fB\-D\fIname\fB=1\fR.
|
||||
.IP \fB\-I\fIpathname\fR
|
||||
.br
|
||||
Add
|
||||
.I pathname
|
||||
to the list of directories in which to search for
|
||||
.B #include
|
||||
files with filenames not beginning with slash.
|
||||
The compiler first searches for
|
||||
.B #include
|
||||
files in the directory containing
|
||||
.I sourcefile,
|
||||
then in directories in
|
||||
.B \-I
|
||||
options, and finally, in
|
||||
.I /usr/include.
|
||||
.IP "\fB\-o \fIoutput\fR"
|
||||
Name the final output file
|
||||
.I output.
|
||||
.IP \fB\-O\fP
|
||||
.br
|
||||
Use a version of the compiler that is just a bit slower, but produces
|
||||
better code.
|
||||
.IP \fB\-U\fIname\fR
|
||||
.br
|
||||
Remove any initial definition of
|
||||
.I name.
|
||||
.IP \fB\-v\fP
|
||||
.br
|
||||
Verbose. Print the commands as they are executed.
|
||||
.IP \fB\-vn\fP
|
||||
.br
|
||||
Verbose, no execute. Only print the commands, do not execute them.
|
||||
.IP \fB\-w\fP
|
||||
suppress warning messages.
|
||||
.IP \fB\-R\fP
|
||||
.br
|
||||
test for more compatibility with Kernighan & Ritchie C [1].
|
||||
.IP \fB\-M\fIcompiler\fR
|
||||
.br
|
||||
use \fIcompiler\fR as C-2 compiler instead of the default.
|
||||
.LP
|
||||
Object modules produced by cc(1) and
|
||||
.I fcc
|
||||
can be freely mixed, as long as the link-editor is called through
|
||||
.I fcc.
|
||||
.SH "SEE ALSO"
|
||||
.IP [1]
|
||||
B.W. Kernighan, D. Ritchie, "\fIThe C programming Language\fP", Prentice-Hall Inc., 1978
|
||||
.IP [2]
|
||||
E.H. Baalbergen, "\fIThe ACK CEM compiler\fP".
|
||||
.IP [3]
|
||||
cc(1) unix manual page.
|
||||
.SH DIAGNOSTICS
|
||||
Diagnostics are intended to be self-explanatory.
|
230
fast_misc/man/fm2.1.src
Normal file
230
fast_misc/man/fm2.1.src
Normal file
|
@ -0,0 +1,230 @@
|
|||
.TH FM2 1
|
||||
.SH NAME
|
||||
fm2 \- fast CC compatible Modula-2 compiler
|
||||
.SH SYNOPSIS
|
||||
.B fm2
|
||||
[
|
||||
.B \-c
|
||||
]
|
||||
[
|
||||
.B \-O
|
||||
]
|
||||
[
|
||||
.B \-v
|
||||
]
|
||||
[
|
||||
.B \-vn
|
||||
]
|
||||
[ \fB\-D\fIname\fR ]
|
||||
[ \fB\-D\fIname\fB=\fIdef\fR ]
|
||||
[
|
||||
.BI \-I pathname
|
||||
]
|
||||
[
|
||||
.BI \-w classes
|
||||
]
|
||||
[
|
||||
.BI \-W classes
|
||||
]
|
||||
[
|
||||
.B \-L
|
||||
]
|
||||
[
|
||||
.B \-o
|
||||
.I outfile
|
||||
]
|
||||
[
|
||||
.B \-R
|
||||
]
|
||||
[
|
||||
.B \-A
|
||||
]
|
||||
[
|
||||
.B \-3
|
||||
]
|
||||
[
|
||||
.B \-U
|
||||
]
|
||||
[
|
||||
.B \-e
|
||||
]
|
||||
[
|
||||
.BI \-U name
|
||||
]
|
||||
[
|
||||
.BI -M compiler
|
||||
]
|
||||
.I sourcefile ...
|
||||
.SH DESCRIPTION
|
||||
.LP
|
||||
.I fm2
|
||||
is a fast
|
||||
.B Modula-2
|
||||
compiler. It translates
|
||||
.B Modula-2
|
||||
programs
|
||||
into cc(1)-compatible relocatable object modules, and does so in one pass.
|
||||
Then, if the \fB\-c\fP flag is not given,
|
||||
.I fm2
|
||||
offers the object modules to a link-editor,
|
||||
to create an executable binary.
|
||||
.LP
|
||||
.I Fm2
|
||||
accepts several types of filename arguments. Files with
|
||||
names ending in
|
||||
.B .mod
|
||||
are taken to be
|
||||
.B Modula-2
|
||||
source programs.
|
||||
They are compiled, and the resulting object module is placed in the current
|
||||
directory.
|
||||
The object module is named after its source file, the suffix
|
||||
.B .o
|
||||
replacing
|
||||
.BR .mod
|
||||
in the name of the object.
|
||||
A file with suffix
|
||||
.B .mod
|
||||
is passed through the C preprocessor if it begins with a '#'.
|
||||
.PP
|
||||
Definition modules are not separately compiled. The compiler reads them when
|
||||
it needs them.
|
||||
Definition modules are expected to reside in files with names ending
|
||||
in
|
||||
.BR .def .
|
||||
The name of the file in which a definition module is stored must be the same as
|
||||
the module-name, apart from the extension.
|
||||
Also, in most Unix systems filenames are only 14 characters long.
|
||||
So, given an IMPORT declaration for a module called "LongModulName",
|
||||
the compiler will try to open a file called "LongModulN.def".
|
||||
The requirement does not hold for implementation or program modules,
|
||||
but is certainly recommended.
|
||||
.LP
|
||||
Other arguments refer to loader options,
|
||||
object modules, or object libraries.
|
||||
Unless the
|
||||
.B \-c
|
||||
flag is given, these modules and libraries, together with the results of any
|
||||
specified compilations, are passed (in the order given) to the
|
||||
link-editor to produce
|
||||
an output file named
|
||||
.IR a.out .
|
||||
You can specify a name for the executable by using the
|
||||
.B \-o
|
||||
option.
|
||||
.LP
|
||||
If a single
|
||||
.B Modula-2
|
||||
program is compiled and loaded all at once, the object module
|
||||
file is deleted.
|
||||
.SH OPTIONS
|
||||
.LP
|
||||
The \fB\-l\fIlib\fR, \fB\-d\fP, \fB\-n\fP, \fB\-N\fP,
|
||||
\fB\-r\fP, \fB\-s\fP, \fB\-S\fP, \fB\-i\fP, and \fB\-u\fP options are
|
||||
passed to the link-editor program.
|
||||
The \fB\-u\fP option takes an extra argument.
|
||||
.IP \fB\-c\fP
|
||||
.br
|
||||
Suppress the loading phase of the compilation, and force an object module to
|
||||
be produced, even if only one program is compiled.
|
||||
A single object module can be named explicitly using the
|
||||
.B \-o
|
||||
option.
|
||||
.IP \fB\-D\fIname\fR\fB=\fIdef\fR
|
||||
Define a symbol
|
||||
.I name
|
||||
to the
|
||||
preprocessor, as if by "#define".
|
||||
.IP \fB\-D\fIname\fR
|
||||
.br
|
||||
same as \fB\-D\fIname\fB=1\fR.
|
||||
.IP \fB\-I\fIpathname\fR
|
||||
.br
|
||||
Add
|
||||
.I pathname
|
||||
to the list of directories in which to search for
|
||||
.B #include
|
||||
files with filenames not beginning with slash.
|
||||
The preprocessor first searches for
|
||||
.B #include
|
||||
files in the directory containing
|
||||
.I sourcefile,
|
||||
then in directories in
|
||||
.B \-I
|
||||
options, and finally, in
|
||||
.I /usr/include.
|
||||
This flag is also passed to the compiler. When the compiler needs a definition
|
||||
module, it is first searched for in the current directory, then in the
|
||||
directories given to it by the \fB\-I\fP flag, and then in a default directory,
|
||||
.I CHANGE_ME.
|
||||
.I fm2
|
||||
This default directory contains all definition modules of
|
||||
the runtime system.
|
||||
.IP "\fB\-o \fIoutput\fR"
|
||||
Name the final output file
|
||||
.I output.
|
||||
.IP \fB\-O\fP
|
||||
.br
|
||||
Use a version of the compiler that is just a bit slower, but produces
|
||||
better code.
|
||||
.IP \fB\-U\fIname\fR
|
||||
.br
|
||||
Remove any initial definition of
|
||||
.I name.
|
||||
.IP \fB\-v\fP
|
||||
.br
|
||||
Verbose. Print the commands as they are executed.
|
||||
.IP \fB\-vn\fP
|
||||
.br
|
||||
Verbose, no execute. Only print the commands, do not execute them.
|
||||
.IP \fB\-L\fR
|
||||
do not generate code to keep track of
|
||||
the current location in the source code.
|
||||
.IP \fB\-w\fR\fIclasses\fR
|
||||
suppress warning messages whose class is a member of \fIclasses\fR.
|
||||
Currently, there are three classes: \fBO\fR, indicating old-flashioned use,
|
||||
\fBW\fR, indicating "ordinary" warnings, and \fBR\fR, indicating
|
||||
restricted Modula-2.
|
||||
If no \fIclasses\fR are given, all warnings are suppressed.
|
||||
By default, warnings in class \fBO\fR and \fBW\fR are given.
|
||||
.IP \fB\-W\fR\fIclasses\fR
|
||||
allow for warning messages whose class is a member of \fIclasses\fR.
|
||||
.IP \fB\-R\fP
|
||||
.br
|
||||
disable all range-checks.
|
||||
.IP \fB\-A\fP
|
||||
.br
|
||||
enable extra array bound checks. Unfortunately, the back-end used for this
|
||||
compiler is a bit sloppy, so extra array bound checks are needed if you want
|
||||
detection of array bound errors.
|
||||
.IP \fB\-3\fP
|
||||
.br
|
||||
Only accept Modula-2 programs that strictly conform to the 3rd Edition of
|
||||
[1].
|
||||
.IP \fB\-U\fP
|
||||
.br
|
||||
allow for underscores within identifiers. Identifiers may not start or end
|
||||
with an underscore, even if this flag is given.
|
||||
.IP \fB\-e\fP
|
||||
.br
|
||||
allow for local extensions. Currently, the only local extensions are
|
||||
procedure constants.
|
||||
.IP \fB\-M\fIcompiler\fR
|
||||
.br
|
||||
use \fIcompiler\fR as Modula-2 compiler instead of the default.
|
||||
.PP
|
||||
The compiler does not do any version-control. Instead, a makefile
|
||||
generator,
|
||||
.IR m2mm ,
|
||||
is included.
|
||||
.SH "SEE ALSO"
|
||||
.IP [1]
|
||||
N. Wirth, \fIProgramming in Modula-2\fP, 3rd edition, Springer Verlag.
|
||||
.IP [2]
|
||||
C.J.H. Jacobs, \fIThe ACK Modula-2 Compiler\fP.
|
||||
.IP [3]
|
||||
cc(1) unix manual page.
|
||||
.IP [4]
|
||||
m2mm(1) manual page.
|
||||
.SH DIAGNOSTICS
|
||||
Diagnostics are intended to be self-explanatory.
|
230
fast_misc/man/fpc.1
Normal file
230
fast_misc/man/fpc.1
Normal file
|
@ -0,0 +1,230 @@
|
|||
.TH FM2 1
|
||||
.SH NAME
|
||||
fpc \- fast CC compatible Modula-2 compiler
|
||||
.SH SYNOPSIS
|
||||
.B fpc
|
||||
[
|
||||
.B \-c
|
||||
]
|
||||
[
|
||||
.B \-O
|
||||
]
|
||||
[
|
||||
.B \-v
|
||||
]
|
||||
[
|
||||
.B \-vn
|
||||
]
|
||||
[ \fB\-D\fIname\fR ]
|
||||
[ \fB\-D\fIname\fB=\fIdef\fR ]
|
||||
[
|
||||
.BI \-I pathname
|
||||
]
|
||||
[
|
||||
.B \-w
|
||||
]
|
||||
[
|
||||
.B \-L
|
||||
]
|
||||
[
|
||||
.B \-o
|
||||
.I outfile
|
||||
]
|
||||
[
|
||||
.B \-R
|
||||
]
|
||||
[
|
||||
.B \-A
|
||||
]
|
||||
[
|
||||
.B \-a
|
||||
]
|
||||
[
|
||||
.B \-d
|
||||
]
|
||||
[
|
||||
.BI \-i num
|
||||
]
|
||||
[
|
||||
.B \-t
|
||||
]
|
||||
[
|
||||
.B \-C
|
||||
]
|
||||
[
|
||||
.B \-U+
|
||||
]
|
||||
[
|
||||
.B \-u+
|
||||
]
|
||||
[
|
||||
.B \-s+
|
||||
]
|
||||
[
|
||||
.B \-c+
|
||||
]
|
||||
[
|
||||
.BI \-U name
|
||||
]
|
||||
[
|
||||
.BI -M compiler
|
||||
]
|
||||
.I sourcefile ...
|
||||
.SH DESCRIPTION
|
||||
.LP
|
||||
.I fpc
|
||||
is a fast
|
||||
.B Pascal
|
||||
compiler. It translates
|
||||
.B Pascal
|
||||
programs
|
||||
into cc(1)-compatible relocatable object modules, and does so in one pass.
|
||||
Then, if the \fB\-c\fP flag is not given,
|
||||
.I fpc
|
||||
offers the object modules to a link-editor,
|
||||
to create an executable binary.
|
||||
.LP
|
||||
.I Fpc
|
||||
accepts several types of filename arguments. Files with
|
||||
names ending in
|
||||
.B .p
|
||||
are taken to be
|
||||
.B Pascal
|
||||
source programs.
|
||||
They are compiled, and the resulting object module is placed in the current
|
||||
directory.
|
||||
The object module is named after its source file, the suffix
|
||||
.B .o
|
||||
replacing
|
||||
.BR .p
|
||||
in the name of the object.
|
||||
A file with suffix
|
||||
.B .p
|
||||
is passed through the C preprocessor if it begins with a '#'.
|
||||
.LP
|
||||
Other arguments refer to loader options,
|
||||
object modules, or object libraries.
|
||||
Unless the
|
||||
.B \-c
|
||||
flag is given, these modules and libraries, together with the results of any
|
||||
specified compilations, are passed (in the order given) to the
|
||||
link-editor to produce
|
||||
an output file named
|
||||
.IR a.out .
|
||||
You can specify a name for the executable by using the
|
||||
.B \-o
|
||||
option.
|
||||
.LP
|
||||
If a single
|
||||
.B Pascal
|
||||
program is compiled and loaded all at once, the object module
|
||||
file is deleted.
|
||||
.SH OPTIONS
|
||||
.LP
|
||||
The \fB\-l\fIlib\fR, \fB\-d\fP, \fB\-n\fP, \fB\-N\fP,
|
||||
\fB\-r\fP, \fB\-s\fP, \fB\-S\fP, \fB\-i\fP, and \fB\-u\fP options are
|
||||
passed to the link-editor program.
|
||||
The \fB\-u\fP option takes an extra argument.
|
||||
.IP \fB\-c\fP
|
||||
.br
|
||||
Suppress the loading phase of the compilation, and force an object module to
|
||||
be produced, even if only one program is compiled.
|
||||
A single object module can be named explicitly using the
|
||||
.B \-o
|
||||
option.
|
||||
.IP \fB\-D\fIname\fR\fB=\fIdef\fR
|
||||
Define a symbol
|
||||
.I name
|
||||
to the
|
||||
preprocessor, as if by "#define".
|
||||
.IP \fB\-D\fIname\fR
|
||||
.br
|
||||
same as \fB\-D\fIname\fB=1\fR.
|
||||
.IP \fB\-I\fIpathname\fR
|
||||
.br
|
||||
Add
|
||||
.I pathname
|
||||
to the list of directories in which to search for
|
||||
.B #include
|
||||
files with filenames not beginning with slash.
|
||||
The preprocessor first searches for
|
||||
.B #include
|
||||
files in the directory containing
|
||||
.I sourcefile,
|
||||
then in directories in
|
||||
.B \-I
|
||||
options, and finally, in
|
||||
.I /usr/include.
|
||||
.IP "\fB\-o \fIoutput\fR"
|
||||
Name the final output file
|
||||
.I output.
|
||||
.IP \fB\-O\fP
|
||||
.br
|
||||
Use a version of the compiler that is just a bit slower, but produces
|
||||
better code.
|
||||
.IP \fB\-U\fIname\fR
|
||||
.br
|
||||
Remove any initial definition of
|
||||
.I name.
|
||||
.IP \fB\-v\fP
|
||||
.br
|
||||
Verbose. Print the commands as they are executed.
|
||||
.IP \fB\-vn\fP
|
||||
.br
|
||||
Verbose, no execute. Only print the commands, do not execute them.
|
||||
.IP \fB\-L\fP
|
||||
.br
|
||||
do not generate code to keep track of
|
||||
the current location in the source code.
|
||||
.IP \fB\-w\fP
|
||||
.br
|
||||
suppress warning messages.
|
||||
.IP \fB\-d\fP
|
||||
.br
|
||||
allow for "long"s.
|
||||
.IP \fB\-i\fInum\fR
|
||||
.br
|
||||
set size for integer sets. By default, the set size is the word size.
|
||||
.IP \fB\-C\fP
|
||||
.br
|
||||
distinguish between lower case and upper case. Normally, upper case letters
|
||||
are considered equal to their lower case counterpart.
|
||||
.IP \fB\-t\fP
|
||||
.br
|
||||
trace calls and exits of procedures and functions.
|
||||
.IP \fB\-R\fP
|
||||
.br
|
||||
disable all range-checks.
|
||||
.IP \fB\-A\fP
|
||||
.br
|
||||
enable extra array bound checks. Unfortunately, the back-end used for this
|
||||
compiler is a bit sloppy, so extra array bound checks are needed if you want
|
||||
detection of array bound errors.
|
||||
.IP \fB\-a\fP
|
||||
.br
|
||||
disable assertions. Assertions are skipped instead of evaluated.
|
||||
.IP "\fB\-U+\fP, \fB\-u+\fP"
|
||||
.br
|
||||
allow for underscores within identifiers. Identifiers may not start
|
||||
with an underscore, even if this flag is given.
|
||||
.IP \fB-s+\fP
|
||||
.br
|
||||
allow only standard
|
||||
.BR Pascal .
|
||||
This disables the \fB\-c+\fP, \fB\-d\fR, \fB\-u+\fR,
|
||||
\fB\-U+\fR and \fB\-C\fR options.
|
||||
Furthermore, assertions are not recognized at all.
|
||||
.IP \fB-c+\fP
|
||||
.br
|
||||
allow C-like strings. This option is mainly intended for usage with
|
||||
C-functions. This option will cause the type 'string' to be known.
|
||||
.IP \fB\-M\fIcompiler\fR
|
||||
.br
|
||||
use \fIcompiler\fR as Modula-2 compiler instead of the default.
|
||||
.SH "SEE ALSO"
|
||||
.IP [1]
|
||||
J.W. Stevenson, H. v. Eck, \fIAmsterdam Compiler Kit-Pascal reference manual\fP.
|
||||
.IP [2]
|
||||
cc(1) unix manual page.
|
||||
.SH DIAGNOSTICS
|
||||
Diagnostics are intended to be self-explanatory.
|
Loading…
Reference in a new issue