summaryrefslogtreecommitdiff
path: root/static/unix-v10/man9/mcc.9
blob: 115741bbbe730ee20162277016996b3ab2561203 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
.TH MCC 9.1
.SH NAME
mcc \- MC68000 C compiler
.SH SYNOPSIS
.B mcc
[
.I option
]
... file ...
.SH DESCRIPTION
.I Mcc
is the C compiler for the Motorola 68000.
Its default action is to compile programs to run under the
.IR mpx (1)
environment on a Blit terminal.
.PP
.I Mcc
accepts several types of arguments:
.PP
Arguments whose names end with `.c' are taken to be
C source programs; they are compiled, and
each object program is left on the file
whose name is that of the source with `.o' substituted
for `.c'.
The `.o' file is normally deleted, however, if a single
C program is compiled and loaded all at one go.
.PP
In the same way,
arguments whose names end with `.s' are taken to be assembly source programs
and are assembled, producing a `.o' file.
.PP
Programs using floating-point must be compiled with the
.B \-lf
load-time option
to load the floating-point support package.
.PP
The following options are interpreted by
.IR mcc .
Load time options, described under
.IR mld (1),
are passed to 
.I mld.
.TP 8
.B \-c
Suppress the loading phase of the compilation; force
an object file to be produced even if only one program is compiled.
.TP
.B \-j
Compile the named programs, and load and link them for running stand-alone
on a Blit terminal.
.TP
.B \-m
Compile the named programs for ordinary (non-Blit) environments.
.TP
.B \-w
Suppress warning diagnostics.
.TP
.SM
.B \-O
Invoke an
object-code improver.
.TP
.SM
.B \-S
Compile the named C programs, and leave the
assembler-language output on corresponding files suffixed `.s'.
.TP
.SM
.B \-E
Run only the macro preprocessor
on the named C programs, and send the result to the
standard output.
.TP
.SM
.B \-C
prevent the macro preprocessor from eliding comments.
.TP
.BI \-o " output"
Name the final output file
.IR output .
If this option is used the file `a.out' will be left undisturbed.
.TP
.SM
.BI \-D name=def
.br
.ns
.TP
.SM
.BI \-D \*Sname
Define the
.I name
to the preprocessor,
as if by
`#define'.
If no definition is given, the name is defined as "1".
The symbol
.I mc68000
is predefined.
.TP
.SM
.BI \-U \*Sname
Remove any initial definition of
.IR name .
.TP
.SM
.BI \-I \*Sdir
`#include' files
whose names do not begin with `/' are always
sought first in the directory 
of the
.I file
argument,
then in directories named in 
.B \-I
options,
then in directories on a standard list.
.TP
.SM
.BI \-B \*Sstring
Find substitute compiler passes in the files named
.I string
with the suffixes cpp, ccom and c2.
If 
.I string 
is empty, use a standard backup version.
.TP
.BR \-t [ p012 ]
Find only the designated compiler passes in the
files whose names are constructed by a
.B \-B
option.
In the absence of a
.B \-B 
option, the
.I string
is taken to be `/usr/c/'.
.PP
Other arguments
are taken
to be either loader option arguments, or C-compatible
object programs, typically produced by an earlier
.I mcc
run,
or perhaps libraries of C-compatible routines.
These programs, together with the results of any
compilations specified, are loaded (in the order
given) to produce an executable program with name
.B a.out.
.SH FILES
.ta \w'/usr/jerq/lib/notsolow.o  'u
file.c	input file
.br
file.o	object file
.br
a.out	loaded output
.br
/tmp/ctm?	temporary
.br
/lib/cpp	preprocessor
.br
/usr/jerq/lib/ccom	compiler
.br
/usr/jerq/lib/occom	backup compiler
.br
/usr/jerq/lib/mc2	optimizer
.br
/usr/jerq/lib/l.o	runtime startoff for
.B \-j
.br
/usr/jerq/lib/notsolow.o	runtime startoff for
.B \-m
.br
/usr/jerq/lib/libc.a	standard library
.br
/usr/jerq/lib/libf.a	floating-point library
.br
/usr/jerq/lib/libj.a	graphics library (used in
.BR \-lj ).
.br
/usr/jerq/lib/libsys.a	system and I/O library (used in
.BR \-lj ).
.br
/usr/jerq/include	standard directory for `#include' files
.SH "OTHER PROGRAMS"
The usual array of associated object-code manipulating programs exists,
with specifications identical to the usual Unix programs, and with
names prefixed with an `m.'
These programs include:
.ta \w'mlorder      'u
.br
mas	assembler, see 
.IR as (1)
.br
mlorder	order library,
.IR lorder (1)
(there is no mranlib)
.br
mnm	name list, see
.IR nm (1)
.br
msize	object code size,
.IR size (1)
.br
mstrip	strip symbol table,
.IR strip (1)
.fi
.SH "SEE ALSO"
B. W. Kernighan and D. M. Ritchie,
.I The C Programming Language,
Prentice-Hall,
1978
.br
B. W. Kernighan,
.I
Programming in C\(ema tutorial
.br
D. M. Ritchie,
.I
C Reference Manual
.br
.IR mld (1), 
.IR cc (1)
.SH DIAGNOSTICS
The diagnostics produced by C itself are intended to be
self-explanatory.
Occasional messages may be produced by the assembler
or loader.