2 |
7u83 |
1 |
.\" Crown Copyright (c) 1997
|
|
|
2 |
.\"
|
|
|
3 |
.\" This TenDRA(r) Manual Page is subject to Copyright
|
|
|
4 |
.\" owned by the United Kingdom Secretary of State for Defence
|
|
|
5 |
.\" acting through the Defence Evaluation and Research Agency
|
|
|
6 |
.\" (DERA). It is made available to Recipients with a
|
|
|
7 |
.\" royalty-free licence for its use, reproduction, transfer
|
|
|
8 |
.\" to other parties and amendment for any purpose not excluding
|
|
|
9 |
.\" product development provided that any such use et cetera
|
|
|
10 |
.\" shall be deemed to be acceptance of the following conditions:-
|
|
|
11 |
.\"
|
|
|
12 |
.\" (1) Its Recipients shall ensure that this Notice is
|
|
|
13 |
.\" reproduced upon any copies or amended versions of it;
|
|
|
14 |
.\"
|
|
|
15 |
.\" (2) Any amended version of it shall be clearly marked to
|
|
|
16 |
.\" show both the nature of and the organisation responsible
|
|
|
17 |
.\" for the relevant amendment or amendments;
|
|
|
18 |
.\"
|
|
|
19 |
.\" (3) Its onward transfer from a recipient to another
|
|
|
20 |
.\" party shall be deemed to be that party's acceptance of
|
|
|
21 |
.\" these conditions;
|
|
|
22 |
.\"
|
|
|
23 |
.\" (4) DERA gives no warranty or assurance as to its
|
|
|
24 |
.\" quality or suitability for any purpose and DERA accepts
|
|
|
25 |
.\" no liability whatsoever in relation to any use to which
|
|
|
26 |
.\" it may be put.
|
|
|
27 |
.\"
|
|
|
28 |
.TH tdfc2 1
|
|
|
29 |
.SH NAME
|
|
|
30 |
tdfc2 \- C to TDF/ANDF producer
|
|
|
31 |
.SH SYNOPSIS
|
|
|
32 |
\fBtdfc2\fR [ \fIoptions\fR ] [ \fIinput-file\fR ] [ \fIoutput-file\fR ]
|
|
|
33 |
.\" ----------------------------------------------------------------------
|
|
|
34 |
.SH DESCRIPTION
|
|
|
35 |
In its default action, \fBtdfc2\fR translates the input C source
|
|
|
36 |
file, \fIinput-file\fR, into a TDF/ANDF capsule, \fIoutput-file\fR. If
|
|
|
37 |
the output file name is omitted or is \fB-\fR, the standard output is used.
|
|
|
38 |
If the input file name is omitted or is \fB-\fR, the standard input is
|
|
|
39 |
used.
|
|
|
40 |
.PP
|
|
|
41 |
By use of the \fB-s\fIspec-file\fR option, \fBtdfc2\fR can additionally
|
|
|
42 |
be made to output a C spec file which contains information enabling
|
|
|
43 |
intermodule analysis to be performed. Alternatively usage and error
|
|
|
44 |
information suitable for processing by other tools can be output using
|
|
|
45 |
the \fB-d\fIopt\fB=\fIdump-file\fR option.
|
|
|
46 |
.PP
|
|
|
47 |
\fBtdfc2\fR also has a preprocessing action, when invoked with the
|
|
|
48 |
\fB-E\fR option, in which the input C source file, \fIinput-file\fR,
|
|
|
49 |
is preprocessed to an output file, \fIouput-file\fR.
|
|
|
50 |
.PP
|
|
|
51 |
Finally \fBtdfc2\fR has a spec linker action, when invoked with the
|
|
|
52 |
\fB-S\fR option, in which any number of spec input files, \fIinput-file\fR,
|
|
|
53 |
are combined into a spec output file, which may be specified using the
|
|
|
54 |
\fB-s\fR option. Any extra code generation resulting from this linking
|
|
|
55 |
phase is written to the TDF capsule, \fIoutput-file\fR.
|
|
|
56 |
.PP
|
|
|
57 |
It is recommended that \fBtdfc2\fR is invoked via \fItcc\fR(1).
|
7 |
7u83 |
58 |
The \fB-Yc++\fR option is required to enable the C++ capabilities.
|
2 |
7u83 |
59 |
Files with a \fB.c\fR suffix are recognised as C source files.
|
|
|
60 |
Options can be passed directly to \fBtdfc2\fR using the
|
|
|
61 |
\fB-Wc,\fIopt\fR option to \fItcc\fR.
|
|
|
62 |
.\" ----------------------------------------------------------------------
|
|
|
63 |
.SH OPTIONS
|
|
|
64 |
.PP
|
|
|
65 |
The command-line options can appear in any order and can be interspersed
|
|
|
66 |
with the input and output files. All the multi-part options can be
|
|
|
67 |
given either as one or two command-line arguments, so that \fB-I\fIdir\fR
|
|
|
68 |
and \fB-I\fR \fIdir\fR are equivalent. Most of the option handling
|
|
|
69 |
required is handled by \fItcc\fR(1) when this is being used, but
|
|
|
70 |
options may be passed directly to \fBtdfc2\fR using the \fB-Wc,\fIopt\fR
|
|
|
71 |
option.
|
|
|
72 |
.\" ----------------------------------------------------------------------
|
|
|
73 |
.IP \fB-A\fIpredicate\fB(\fItokens\fB)\fR
|
|
|
74 |
Asserts that the given predicate is true. The special case \fB-A-\fR
|
|
|
75 |
undefines all the built-in predicates (of which there are none).
|
|
|
76 |
.\" ----------------------------------------------------------------------
|
|
|
77 |
.IP \fB-D\fImacro\fR
|
|
|
78 |
Defines the given macro to be 1.
|
|
|
79 |
.\" ----------------------------------------------------------------------
|
|
|
80 |
.IP \fB-D\fImacro\fB=\fItokens\fR
|
|
|
81 |
Defines the given macro to be the given sequence of preprocessing tokens.
|
|
|
82 |
.\" ----------------------------------------------------------------------
|
|
|
83 |
.IP \fB-E\fR
|
|
|
84 |
Enables preprocessing mode in which the input C source file is
|
|
|
85 |
preprocessed into the output file.
|
|
|
86 |
.\" ----------------------------------------------------------------------
|
|
|
87 |
.IP \fB-F\fIfile\fR
|
|
|
88 |
Causes a list of options to be read from \fIfile\fR.
|
|
|
89 |
.\" ----------------------------------------------------------------------
|
|
|
90 |
.IP \fB-H\fR
|
|
|
91 |
Enables verbose inclusion mode in which warnings are printed at the
|
|
|
92 |
start and the end of each included source file.
|
|
|
93 |
.\" ----------------------------------------------------------------------
|
|
|
94 |
.IP \fB-I\fIdirectory\fR
|
|
|
95 |
Adds the given directory to the list searched by \fBtdfc2\fR for
|
|
|
96 |
included source files. No such directories are built into \fBtdfc2\fR.
|
|
|
97 |
.\" ----------------------------------------------------------------------
|
|
|
98 |
.IP \fB-N\fIname\fB:\fIdirectory\fR
|
|
|
99 |
Is identical to \fB-I\fIdirectory\fR except that it also associates the
|
|
|
100 |
given identifier with the directory.
|
|
|
101 |
.\" ----------------------------------------------------------------------
|
|
|
102 |
.IP \fB-S\fR
|
|
|
103 |
Enables spec linker mode in which any number of C spec input files are
|
|
|
104 |
linked into a single C spec output file.
|
|
|
105 |
.\" ----------------------------------------------------------------------
|
|
|
106 |
.IP \fB-U\fImacro\fR
|
|
|
107 |
Undefines the given macro. The special case \fB-U-\fR undefines all the
|
|
|
108 |
built-in macros. These are \fB__FILE__\fR, \fB__LINE__\fR,
|
|
|
109 |
\fB__TIME__\fR, \fB__DATE__\fR, \fB__STDC__\fR and \fB__STDC_VERSION__\fR.
|
|
|
110 |
.\" ----------------------------------------------------------------------
|
|
|
111 |
.IP \fB-V\fR
|
|
|
112 |
Causes \fBtdfc2\fR to print the name of each function to the standard
|
|
|
113 |
output as it is compiled.
|
|
|
114 |
.\" ----------------------------------------------------------------------
|
|
|
115 |
.IP \fB-W\fIoption\fR
|
|
|
116 |
Causes \fBtdfc2\fR to print a warning in the circumstances described
|
|
|
117 |
by \fIoption\fR. The special case \fB-Wall\fR enables a wide range of
|
|
|
118 |
warnings.
|
|
|
119 |
.\" ----------------------------------------------------------------------
|
|
|
120 |
.IP \fB-X\fR
|
|
|
121 |
Disables exception handling. The current implementation can be a large
|
|
|
122 |
run-time overhead if not required. The effect of linking any module
|
|
|
123 |
compiled with this option with a module which throws an exception is
|
|
|
124 |
undefined. This is equivalent to \fB-j-e\fR.
|
|
|
125 |
.\" ----------------------------------------------------------------------
|
|
|
126 |
.IP \fB-Z\fInumber\fR
|
|
|
127 |
Sets the maximum number of errors printed by \fBtdfc2\fR before
|
|
|
128 |
bailing out to be \fInumber\fR. The default is 32.
|
|
|
129 |
.\" ----------------------------------------------------------------------
|
|
|
130 |
.IP \fB-a\fR
|
|
|
131 |
Causes \fBtdfc2\fR to apply complete program analysis to its input
|
|
|
132 |
files. That is it assumes that no other translation units need to be
|
|
|
133 |
linked in order for the program to execute.
|
|
|
134 |
.\" ----------------------------------------------------------------------
|
|
|
135 |
.IP \fB-c\fR
|
|
|
136 |
Disables TDF output. The output file will still be a valid TDF capsule,
|
|
|
137 |
only it will contain no information. This is equivalent to \fB-j-c\fR.
|
|
|
138 |
.\" ----------------------------------------------------------------------
|
|
|
139 |
.IP \fB-d\fIopt\fB=\fIdump-file\fR
|
|
|
140 |
Causes \fBtdfc2\fR to dump information about its input file into
|
|
|
141 |
\fIdump-file\fR. \fIopt\fR is a series of characters describing the
|
|
|
142 |
information to be dumped; \fBc\fR for string literals, \fBe\fR for errors,
|
|
|
143 |
\fBh\fR for header files, \fBk\fR for keywords, \fBl\fR for local variables,
|
|
|
144 |
\fBm\fR for macros, \fBs\fR for scopes, and \fBu\fR for usage. \fBa\fR is
|
|
|
145 |
equivalent to \fBehlmu\fR.
|
|
|
146 |
.\" ----------------------------------------------------------------------
|
|
|
147 |
.IP \fB-e\fIfile\fR
|
|
|
148 |
Specifies the given file as an end-up file. This is equivalent to
|
|
|
149 |
adding a \fB#include\fR directive for this file at the end of the input
|
|
|
150 |
source file.
|
|
|
151 |
.\" ----------------------------------------------------------------------
|
|
|
152 |
.IP \fB-f\fIfile\fR
|
|
|
153 |
Specifies the given file as a start-up file. This is equivalent to
|
|
|
154 |
adding a \fB#include\fR directive for this file at the start of the input
|
|
|
155 |
source file.
|
|
|
156 |
.\" ----------------------------------------------------------------------
|
|
|
157 |
.IP \fB-g\fR
|
|
|
158 |
Specifies that the output TDF capsule should also contain information
|
|
|
159 |
to allow for the generation of run-time debugging directives. This
|
|
|
160 |
is equivalent to \fB-jg\fR.
|
|
|
161 |
.\" ----------------------------------------------------------------------
|
|
|
162 |
.IP \fB-h\fR
|
|
|
163 |
Causes \fBtdfc2\fR to print a full list of its available command-line
|
|
|
164 |
options. This includes a number not documented here which are unlikely
|
|
|
165 |
to prove useful to the normal user.
|
|
|
166 |
.\" ----------------------------------------------------------------------
|
|
|
167 |
.IP \fB-j\fIopt\fR
|
|
|
168 |
Sets the TDF output options given by \fIopt\fR.
|
|
|
169 |
.\" ----------------------------------------------------------------------
|
|
|
170 |
.IP \fB-m\fIopt\fR
|
|
|
171 |
Sets the error formatting options given by \fIopt\fR.
|
|
|
172 |
.\" ----------------------------------------------------------------------
|
|
|
173 |
.IP \fB-n\fIport-table\fR
|
|
|
174 |
Specifies that the given portability table should be used to specify
|
|
|
175 |
the basic configuration parameters.
|
|
|
176 |
.\" ----------------------------------------------------------------------
|
|
|
177 |
.IP \fB-o\fIoutput-file\fR
|
|
|
178 |
Gives an alternative method of specifying the output file.
|
|
|
179 |
.\" ----------------------------------------------------------------------
|
|
|
180 |
.IP \fB-q\fR
|
|
|
181 |
Causes \fBtdfc2\fR to quit immediately without processing its input
|
|
|
182 |
file. This is useful primarily in version and option queries.
|
|
|
183 |
.\" ----------------------------------------------------------------------
|
|
|
184 |
.IP \fB-s\fIspec-file\fR
|
|
|
185 |
Causes \fBtdfc2\fR to write a C spec file describing the input source
|
|
|
186 |
file to \fIspec-file\fR.
|
|
|
187 |
.\" ----------------------------------------------------------------------
|
|
|
188 |
.IP \fB-t\fR
|
|
|
189 |
Specifies that \fBtdfc2\fR should include token declarations in its
|
|
|
190 |
output TDF capsule. While these are strictly unnecessary, they help when
|
|
|
191 |
pretty-printing the output. This is equivalent to \fB-jt\fR.
|
|
|
192 |
.\" ----------------------------------------------------------------------
|
|
|
193 |
.IP \fB-u\fI\ name\ ...\ name\fR
|
|
|
194 |
Causes \fBtdfc2\fR to print the unmangle forms of the given mangled
|
|
|
195 |
identifier names.
|
|
|
196 |
.\" ----------------------------------------------------------------------
|
|
|
197 |
.IP \fB-v\fR
|
|
|
198 |
Causes \fBtdfc2\fR to print its version number.
|
|
|
199 |
.\" ----------------------------------------------------------------------
|
|
|
200 |
.IP \fB-w\fR
|
|
|
201 |
Disables all warning messages. This is equivalent to \fB-mw\fR.
|
|
|
202 |
.\" ----------------------------------------------------------------------
|
|
|
203 |
.IP \fB-z\fR
|
|
|
204 |
Forces \fBtdfc2\fR to produce an output file even if compilation errors
|
|
|
205 |
occur. The effect of installing a TDF capsule produced using this option
|
|
|
206 |
is undefined. This is equivalent to \fB-mz\fR.
|
|
|
207 |
.\" ----------------------------------------------------------------------
|
|
|
208 |
.SH SEE ALSO
|
|
|
209 |
\fItcc\fR(1), \fItcpplus\fR(1).
|
|
|
210 |
.\" ----------------------------------------------------------------------
|