Quick Search:

View

Revision:
Expand:  
Changeset: MAIN:ragge:20070917202642

Diff

Diff from 1.1 to:

Annotations

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

Annotated File View

ragge
1.1
1 .\"     $Id: cpp.1,v 1.1 2007/09/17 20:26:42 ragge Exp $
2 .\" Copyright (c) 2007 Jeremy C. Reed <reed@reedmedia.net>
3 .\" 
4 .\" Permission to use, copy, modify, and/or distribute this software for any 
5 .\" purpose with or without fee is hereby granted, provided that the above 
6 .\" copyright notice and this permission notice appear in all copies.
7 .\" 
8 .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR AND CONTRIBUTORS DISCLAIM 
9 .\" ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED 
10 .\" WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL AUTHOR AND 
11 .\" CONTRIBUTORS BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL 
12 .\" DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR 
13 .\" PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS 
14 .\" ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF 
15 .\" THIS SOFTWARE.
16 .\"
17 .Dd September 17, 2007
18 .Dt cpp 1
19 .Os
20 .Sh NAME
21 .Nm cpp
22 .Nd C preprocessor
23 .Sh SYNOPSIS
24 .Nm
25 .\" TODO also document -Dvar and below without spaces?
26 .Op Fl Cdt
27 .Op Fl D Ar var=val
28 .Op Fl U Ar var
29 .Op Fl I Ar path
30 .Op Fl S Ar path
31 .Op Ar infile | -
32 .Op Ar outfile
33 .Pp
34 .Sh DESCRIPTION
35 The
36 .Nm
37 utility is a macro preprocessor used by the
38 .Xr pcc 1
39 compiler.
40 It used to include header files,
41 expand macro definitions,
42 and perform conditional compilation.
43 .Pp
44 The 
45 .Ar infile
46 input file is optional.
47 If not provided or the file name is
48 .Qq -
49 (dash),
50 .Nm
51 reads its initial file from standard input.
52 The
53 .Ar outfile
54 output file is also optional.
55 It writes by default to standard output.
56 .Pp
57 .\" TODO: document MAXARG  250 args to a macro, limited by char value
58 .\" TODO: Include order:
59 .\" For "..." files, first search "current" dir, then as <...> files.
60 .\" For <...> files, first search -I directories, then system directories.
61 .\"
62 The options are as follows:
63 .Bl -tag -width Ds
64 .It Fl C
65 Do not discard comments.
66 .It Fl dM
67 TODO: No output from ... and 
68 .\" TODO this doesn't show predefined macros
69 .\" other -d options are ignored
70 .It Fl D Ar macro[=value]
71 Fake a definition at the beginning by using
72 .Do #define
73 .Ar macro Dc .
74 .\" TODO: show example
75 .It Fl i Ar file
76 Include a file at the beginning by using
77 .Do #include
78 .Ar file Dc .
79 .\" Note: I did not use the .In macro above
80 .It Fl I Ar directory
81 Add
82 .Ar directory
83 to the list of directories containing needed header files.
84 This may be used to override system include directories.
85 .Fl I
86 may be specified multiple times.
87 .It Fl M
88 Generate dependencies for
89 .Xr make 1 .
90 .\" TODO: explain and show example?
91 .It Fl S Ar directory
92 Add
93 .Ar directory
94 to the list of directories containing needed header files.
95 This may be used to override system include directories.
96 .Fl S
97 may be specified multiple times.
98 .\" TODO: explain difference between -I and -S
99 .It Fl t
100 Traditional cpp syntax.
101 Do not define the
102 .Dv __TIME__ ,
103 .Dv __DATE__,
104 and
105 .Dv __STDC__
106 macros.
107 .\"
108 .It Fl U Ar macro
109 Undefine a macro at the beginning by using
110 .Do #undef
111 .Ar macro Dc .
112 .It Fl v
113 Verbose debugging output.
114 .Fl v
115 can be repeated for further details.
116 .\" -v only available if cpp source built with CPP_DEBUG, which is the default.
117 .It Fl ?
118 Show command line usage for
119 .Nm .
120 .El
121 .Sh Predefined Macros
122 A few macros are predefined by
123 .Nm :
124 .Bl -diag
125 .It __DATE__
126 Expands to the date in abbreviated month, day, and year format from
127 .Xr ctime 3
128 in quotes.
129 .\" TODO: is that ctime(3) format output change according to locale?
130 .It __FILE__
131 Expands to the name of the current input file in quotes.
132 When read from standard input, it expands to:
133 .Qq Ao stdin Ac .
134 .It __LINE__
135 Expands to the line number of the current line containing the macro.
136 .It __STDC__
137 Expands to the constant 1.
138 This means the compiler conforms to ISO Standard C.
139 .It __TIME__
140 Expands to the time in hour, minutes, and seconds from
141 .Xr ctime 3
142 in quotes.
143 .El
144 .Pp
145 Also see the
146 .Fl t option.
147 .Sh EXIT STATUS
148 The
149 .Nm
150 utility exits with one of the following values:
151 .Bl -tag -width Ds
152 .It 0
153 Successfully finished.
154 .It 1
155 An error occurred.
156 .El
157 .Sh SEE ALSO
158 .Xr as 1 ,
159 .Xr ccom 1 ,
160 .Xr pcc 1
161 .\"
162 .Sh HISTORY
163 The
164 .Nm
165 command comes from the original Portable C Compiler by S. C.
166 Johnson, written in the late 70's.
167 The code originates from the V6 preprocessor with some additions
168 from V7 cpp and ansi/c99 support.
169 .Pp
170 A lot of the PCC code was rewritten by Anders Magnusson.
171 .Pp
172 This product includes software developed or owned by Caldera
173 International, Inc.
174
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-10-02 02:20 +0200