Quick Search:

View

Revision:
Expand:  
Changeset: MAIN:plunky:20140620073314

Diff

Diff from 1.41 to:

Annotations

Annotate by Age | Author | Mixed | None
/fisheye/browse/pcc/pcc/cc/cc/cc.1

Annotated File View

plunky
1.41
1 .\"     $Id: cc.1,v 1.41 2014/06/20 07:33:14 plunky Exp $
reed
1.8
2 .\"
ragge
1.1
3 .\" Copyright (c) 2007 Jeremy C. Reed <reed@reedmedia.net>
reed
1.12
4 .\"
5 .\" Permission to use, copy, modify, and/or distribute this software for any
6 .\" purpose with or without fee is hereby granted, provided that the above
ragge
1.1
7 .\" copyright notice and this permission notice appear in all copies.
reed
1.12
8 .\"
9 .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR AND CONTRIBUTORS DISCLAIM
10 .\" ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
11 .\" WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL AUTHOR AND
12 .\" CONTRIBUTORS BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
13 .\" DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
14 .\" PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS
15 .\" ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
ragge
1.1
16 .\" THIS SOFTWARE.
17 .\"
plunky
1.38
18 .Dd September 12, 2012
reed
1.12
19 .Dt CC 1
ragge
1.1
20 .Os
21 .Sh NAME
22 .Nm cc
23 .Nd front-end to the C compiler
24 .Sh SYNOPSIS
25 .Nm
plunky
1.39
26 .Op Fl cEgkMPStvX
plunky
1.29
27 .Op Fl B Ns Ar prefix
plunky
1.27
28 .Op Fl D Ar macro Ns Oo = Ns Ar value Oc
plunky
1.41
29 .Op Fl d Ns Ar flags
plunky
1.35
30 .Op Fl f Ns Ar feature
plunky
1.27
31 .Op Fl I Ar path
plunky
1.28
32 .Op Fl include Ar file
plunky
1.26
33 .Op Fl isystem Ar path
plunky
1.39
34 .Op Fl L Ns Ar path
gmcgarry
1.11
35 .Op Fl m Ns Ar option
plunky
1.20
36 .Op Fl nodefaultlibs
reed
1.7
37 .Op Fl nostartfiles
ragge
1.2
38 .Op Fl nostdinc
39 .Op Fl nostdlib
plunky
1.24
40 .Op Fl O Ns Oo Ar level Oc
plunky
1.26
41 .Op Fl o Ar outfile
ragge
1.2
42 .Op Fl pg
43 .Op Fl pthread
plunky
1.25
44 .Op Fl shared
ragge
1.2
45 .Op Fl static
plunky
1.27
46 .Op Fl U Ar macro
plunky
1.36
47 .Op Fl Wa Ns , Ns Ar options
48 .Op Fl Wc Ns , Ns Ar options
49 .Op Fl Wl Ns , Ns Ar options
50 .Op Fl Wp Ns , Ns Ar options
plunky
1.30
51 .Op Fl x Ar language
reed
1.7
52 .Op Ar
ragge
1.1
53 .Sh DESCRIPTION
54 The
55 .Nm
ragge
1.3
56 utility provides a front-end to the
reed
1.12
57 .Dq portable C compiler .
ragge
1.1
58 Multiple files may be given on the command line.
59 Unrecognized options are all sent directly to
60 .Xr ld 1 .
61 .Pp
62 .\" Brief description of its syntax:
63 Filenames that end with
reed
1.8
64 .Sy \&.c
ragge
1.1
65 are passed via
reed
1.16
66 .Xr cpp 1
67 \(->
68 .Xr ccom 1
69 \(->
70 .Xr as 1
71 \(->
ragge
1.1
72 .Xr ld 1 .
73 .Pp
74 Filenames that end with
reed
1.8
75 .Sy \&.i
ragge
1.4
76 are passed via
reed
1.16
77 .Xr ccom 1
78 \(->
79 .Xr as 1
80 \(->
ragge
1.4
81 .Xr ld 1 .
82 .Pp
83 Filenames that end with
reed
1.8
84 .Sy \&.s
ragge
1.1
85 are passed via
reed
1.16
86 .Xr as 1
87 \(->
ragge
1.1
88 .Xr ld 1 .
89 .Pp
90 Filenames that end with
ragge
1.14
91 .Sy \&.S
92 are passed via
reed
1.16
93 .Xr cpp 1
94 \(->
95 .Xr as 1
96 \(->
ragge
1.14
97 .Xr ld 1 .
98 .Pp
99 Filenames that end with
reed
1.8
100 .Sy \&.o
ragge
1.1
101 are passed directly to
102 .Xr ld 1 .
103 .Pp
104 .\"
105 The options are as follows:
106 .Bl -tag -width Ds
plunky
1.29
107 .It Fl B Ns Ar prefix
ragge
1.1
108 Define alternate prefix path for
109 .Xr cpp 1 ,
110 .Xr ccom 1 ,
111 .Xr as 1 ,
112 or
113 .Xr ld 1
114 executables.
115 .\" TODO: provide an example of -B
reed
1.6
116 .It Fl C
117 Passed to the
118 .Xr cpp 1
119 preprocessor to not discard comments.
ragge
1.1
120 .It Fl c
plunky
1.33
121 Stop after generating object code with
122 .Xr as 1 .
ragge
1.1
123 Do not link.
ragge
1.4
124 The resulting object output is saved
125 as a filename with a
reed
1.10
126 .Dq \&.o
ragge
1.4
127 suffix unless
128 .Fl o
129 option is used.
ragge
1.1
130 Note: cannot be combined with
131 .Fl o
132 if multiple files are given.
plunky
1.27
133 .It Fl D Ar macro Ns Oo = Ns Ar value Oc
reed
1.7
134 Passed to the
135 .Xr cpp 1
136 preprocessor to define
plunky
1.27
137 .Ar macro
138 with an optional
139 .Ar value .
plunky
1.41
140 .It Fl d Ns Ar flags
141 Debug options.
142 .Ar flags
143 is a string of characters, which signify the following actions.
144 .Bl -tag -width ".Sy M"
145 .It Sy M
146 Cause the preprocessor to output a list of macro definitions.
147 .El
148 .Lp
149 any unknown flags are ignored.
ragge
1.1
150 .It Fl E
151 Stop after preprocessing with
152 .Xr cpp 1 .
153 Do not compile, assemble, or link.
reed
1.6
154 Output is sent to standard output unless the
155 .Fl o
156 option is used.
plunky
1.34
157 .It Fl ffreestanding
158 Assume a freestanding environment.
reed
1.7
159 .It Fl fPIC
160 Generate PIC code.
161 .\" TODO: document about avoiding machine-specific maximum size?
ragge
1.4
162 .It Fl fpic
163 Tells C compiler to generate PIC code
164 and tells assembler that PIC code has been generated.
165 .\" TODO: document difference between PIC and pic
ragge
1.1
166 .\" other -f GCC compatibility flags are ignored for now
167 .It Fl g
168 Send
169 .Fl g
170 flag to
171 .Xr ccom 1
172 to create debug output.
ragge
1.17
173 Debug information output can be disabled with
174 .Fl g0 .
reed
1.7
175 .It Fl I Ar path
176 Passed to the
177 .Xr cpp 1
178 preprocessor to add header search directory to override system defaults.
reed
1.6
179 .It Fl include Ar file
180 Tells the
reed
1.12
181 .Xr cpp 1
reed
1.6
182 preprocessor to include the
183 .Ar file
184 during preprocessing.
ragge
1.1
185 .It Fl isystem Ar path
reed
1.6
186 Defines
187 .Ar path
188 as a system header directory for the
189 .Xr cpp 1
190 preprocessor.
ragge
1.1
191 .It Fl k
ragge
1.4
192 Generate PIC code.
193 See
194 .Fl fpic
195 option.
plunky
1.39
196 .It Fl L Ns Ar path
197 Passed to the linker, to add
198 .Ar path
199 to the list of directories searched for shared libraries.
ragge
1.1
200 .It Fl M
201 Pass
202 .Fl M
203 flag to
204 .Xr cpp 1
205 to generate dependencies for
206 .Xr make 1 .
plunky
1.21
207 .It Fl m Ns Ar option
208 Target-dependent options.
209 Multiple
210 .Fl m
211 options can be given, the following are supported:
gmcgarry
1.13
212 .Bl -tag -width PowerPC
213 .It ARM
reed
1.16
214 \-mlittle-endian \-mbig-endian \-mfpe=fpa \-mfpe=vpf \-msoft-float \-march=armv1 \-march=armv2 \-march=armv2a \-march=armv3 \-march=armv4 \-march=armv4t \-march=armv4tej \-march=armv5 \-march=armv6 \-march=armv6t2 \-march=armv6kz \-march=armv6k \-march=armv7
gmcgarry
1.13
215 .It HPPA
216 .It i386
217 .It MIPS
reed
1.16
218 \-mlittle-endian \-mbig-endian \-mhard-float \-msoft-float
gmcgarry
1.13
219 .It PDP-10
220 .It PowerPC
221 .It Sparc64
222 .It VAX
223 .El
plunky
1.20
224 .It Fl nodefaultlibs
225 Do not link with the system default libraries (libc, etc.)
reed
1.7
226 .It Fl nostartfiles
reed
1.12
227 Do not link with the system startup files (crt0.c, etc.)
ragge
1.1
228 .It Fl nostdinc
reed
1.12
229 Do not use the system include paths (/usr/include, etc.)
ragge
1.1
230 .It Fl nostdlib
plunky
1.20
231 Do not link with the system default libraries or startup files.
plunky
1.24
232 .It Fl O Ns Oo Ar level Oc
233 Enable compiler optimizations.
234 Currently, for levels higher than zero,
235 this defines
236 .Dv __OPTIMIZE__
237 in the
238 .Xr cpp 1
239 preprocessor, and passes
plunky
1.38
240 .Fl xdce ,
ragge
1.17
241 .Fl xdeljumps ,
242 .Fl xtemps
reed
1.6
243 and
ragge
1.17
244 .Fl xinline
ragge
1.3
245 to
246 .Xr ccom 1 .
plunky
1.24
247 If no level is given the optimization level is increased, or
248 optimizations can be disabled using
ragge
1.17
249 .Fl O0 .
reed
1.7
250 .It Fl o Ar outfile
251 Save result to
252 .Ar outfile .
253 .It Fl P
plunky
1.39
254 Inhibit generation of line markers in preprocessor output.
255 This is sometimes useful when running the preprocessor on something other than C code.
reed
1.7
256 .It Fl pg
gmcgarry
1.13
257 Enable profiling on the generated executable.
ragge
1.1
258 .It Fl pthread
plunky
1.23
259 Defines the
260 .Dv _PTHREADS
261 preprocessor identifier for
262 .Xr cpp 1 , and
263 adds
264 .Fl lpthread
265 to the
reed
1.12
266 .Xr ld 1
plunky
1.23
267 linker arguments.
ragge
1.1
268 .It Fl S
269 Stop after compilation by
270 .Xr ccom 1 .
271 Do not assemble and do not link.
ragge
1.3
272 The resulting assembler-language output is saved
ragge
1.4
273 as a filename with a
reed
1.10
274 .Dq \&.s
ragge
1.4
275 suffix unless the
276 .Fl o
277 option is used.
ragge
1.1
278 Note: cannot be combined with
279 .Fl o
280 if multiple files are given.
plunky
1.25
281 .It Fl shared
282 Create a shared object of the result.
283 Tells the linker not to generate an executable.
reed
1.7
284 .It Fl static
285 Do not use dynamic linkage.
286 By default, it will link using the dynamic linker options
287 and/or shared objects for the platform.
ragge
1.1
288 .It Fl t
plunky
1.31
289 Passed to
ragge
1.1
290 .Xr cpp 1
plunky
1.31
291 to suppress some default macro definitions and enable use
292 of traditional C preprocessor syntax.
ragge
1.3
293 .It Fl U Ar macro
reed
1.12
294 Passes to the
ragge
1.3
295 .Xr cpp 1
296 preprocessor to remove the initial macro definition.
ragge
1.1
297 .It Fl v
298 Outputs the version of
299 .Nm
reed
1.12
300 and shows what commands will be run with their command line arguments.
plunky
1.36
301 .It Fl Wa Ns , Ns Ar options
302 Comma separated list of options for the assembler.
303 .It Fl Wc Ns , Ns Ar options
304 Comma separated list of options for the compiler.
305 .It Fl Wl Ns , Ns Ar options
306 Comma separated list of options for the linker.
307 .It Fl Wp Ns , Ns Ar options
308 Comma separated list of options for the preprocessor.
reed
1.7
309 .It Fl X
stefan
1.9
310 Don't remove temporary files on exit.
plunky
1.30
311 .It Fl x Ar language
312 GCC compatibility option; specify the language in use rather than
313 interpreting the filename extension.
314 Currently known language values are
plunky
1.40
315 .Sy none ,
plunky
1.30
316 .Sy c ,
plunky
1.37
317 .Sy c++ ,
318 .Sy assembler
plunky
1.30
319 and
320 .Sy assembler-with-cpp .
321 Any unknown
322 .Fl x
323 options are passed to
324 .Xr ccom 1 .
ragge
1.1
325 .El
reed
1.12
326 .Ss Predefined Macros
ragge
1.2
327 A few
328 macros are predefined by
329 .Nm
reed
1.8
330 when sent to
ragge
1.2
331 .Xr cpp 1 .
332 .Bl -diag
333 .It __PCC__
334 Set to the major version of
335 .Xr pcc 1 .
336 These macros can be used to select code based on
337 .Xr pcc 1
338 compatibility.
reed
1.12
339 See the
ragge
1.2
340 .Fl v
341 option.
342 .It __PCC_MINOR__
343 Set to the minor version.
344 .It __PCC_MINORMINOR__
reed
1.16
345 Set to the minor-minor version \(em the number after the minor version.
ragge
1.2
346 .It _PTHREADS
347 Defined when
348 .Fl pthread
349 switch is used.
plunky
1.40
350 .It __ASSEMBLER__
351 Defined when input files have a .S suffix, or if the
352 .Fl x Ns assembler-with-cpp
353 option is specified.
ragge
1.2
354 .El
ragge
1.3
355 .Pp
ragge
1.4
356 Also system- and/or machine-dependent macros may also be predefined;
357 for example:
358 .Dv __NetBSD__ ,
359 .Dv __ELF__ ,
ragge
1.3
360 and
361 .Dv __i386__ .
ragge
1.1
362 .Sh SEE ALSO
363 .Xr as 1 ,
364 .Xr ccom 1 ,
ragge
1.2
365 .Xr cpp 1 ,
366 .Xr ld 1
ragge
1.1
367 .Sh HISTORY
368 The
369 .Nm
plunky
1.32
370 command comes from the original Portable C Compiler by
371 .An "S. C. Johnson" ,
reed
1.12
372 written in the late 70's.
ragge
1.1
373 .Pp
374 This product includes software developed or owned by Caldera
375 International, Inc.
FishEye: Open Source License registered to PCC.
Your maintenance has expired. You can renew your license at http://www.atlassian.com/fisheye/renew
Atlassian FishEye, CVS analysis. (Version:1.6.3 Build:build-336 2008-11-04) - Administration - Page generated 2014-09-01 23:14 +0200