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 |
.\"
|
6 |
7u83 |
28 |
.\" $Id$
|
|
|
29 |
.\"
|
2 |
7u83 |
30 |
.TH tspec 1
|
|
|
31 |
.SH NAME
|
|
|
32 |
tspec \- An API specification tool
|
|
|
33 |
.SH SYNOPSIS
|
|
|
34 |
\fBtspec\fR [ \fIoptions\fR ] \fIapi\fR
|
|
|
35 |
.PP
|
|
|
36 |
\fBtspec\fR [ \fIoptions\fR ] \fIapi\fR \fIheader\fR
|
|
|
37 |
.PP
|
|
|
38 |
\fBtspec\fR [ \fIoptions\fR ] \fIapi\fR \fIheader\fR \fIsubset\fR
|
|
|
39 |
.PP
|
|
|
40 |
\fBtspec\fR [ \fIoptions\fR ] \fB-l\fR \fIfile\fR
|
|
|
41 |
.\" ----------------------------------------------------------------------
|
|
|
42 |
.SH DESCRIPTION
|
|
|
43 |
\fBtspec\fR is a tool for translating a form of API (Application
|
|
|
44 |
Programming Interface) description into the \fI#pragma\fR headers used
|
|
|
45 |
by \fItcc\fR(1) to represent such APIs. It is more fully documented
|
|
|
46 |
in \fItspec - An API Specification Tool\fR.
|
|
|
47 |
.PP
|
|
|
48 |
There are two basic forms of command-line. The first specifies that
|
|
|
49 |
\fBtspec\fR should process the whole of the API description \fIapi\fR, or
|
|
|
50 |
just one header from it, \fIheader\fR, or just a subset of that header,
|
|
|
51 |
\fIsubset\fR, writing its output to the standard output directory. The
|
|
|
52 |
second (using the \fB-l\fR option) specifies that it should process a
|
|
|
53 |
single file, writing the output to the standard output.
|
|
|
54 |
.\" ----------------------------------------------------------------------
|
|
|
55 |
.SH OPTIONS
|
|
|
56 |
.\" ----------------------------------------------------------------------
|
|
|
57 |
.IP \fB-C\fIfile\fR
|
|
|
58 |
Causes \fBtspec\fR to insert the contents of \fIfile\fR as a copyright
|
|
|
59 |
message at the start of each output file. This can also be specified
|
|
|
60 |
using the \fBTSPEC_COPYRIGHT\fR environmental variable. The order of
|
|
|
61 |
precedence for this and other similar options is, built-in values
|
|
|
62 |
lowest, environmental variables next, and command-line options highest.
|
|
|
63 |
.\" ----------------------------------------------------------------------
|
|
|
64 |
.IP \fB-I\fIdir\fR
|
|
|
65 |
Add the colon-separated list of directories \fIdir\fR to the list of
|
|
|
66 |
directories searched for input files. Input directories can also be
|
|
|
67 |
specified using the \fBTSPEC_INPUT\fR environmental variable.
|
|
|
68 |
.\" ----------------------------------------------------------------------
|
|
|
69 |
.IP \fB-O\fIdir\fR
|
|
|
70 |
Specifies that the directory \fIdir\fR should be used as a base for the
|
|
|
71 |
include output files. This can also be specified using the
|
|
|
72 |
\fBTSPEC_INCL_OUTPUT\fR or the \fBTSPEC_OUTPUT\fR environmental variable.
|
|
|
73 |
In the latter case it is given by \fB${TSPEC_OUTPUT}/include\fR.
|
|
|
74 |
.\" ----------------------------------------------------------------------
|
|
|
75 |
.IP \fB-S\fIdir\fR
|
|
|
76 |
Specifies that the directory \fIdir\fR should be used as a base for the
|
|
|
77 |
source output files. This can also be specified using the
|
|
|
78 |
\fBTSPEC_SRC_OUTPUT\fR or the \fBTSPEC_OUTPUT\fR environmental variable.
|
|
|
79 |
In the latter case it is given by \fB${TSPEC_OUTPUT}/src\fR.
|
|
|
80 |
.\" ----------------------------------------------------------------------
|
6 |
7u83 |
81 |
.IP \fB-V\fR
|
|
|
82 |
Causes \fBtspec\fR to print the program's version, as well as the TenDRA
|
|
|
83 |
release.
|
|
|
84 |
.\" ----------------------------------------------------------------------
|
|
|
85 |
.IP \fB-a\fR
|
|
|
86 |
Causes \fBtspec\fR to check all headers in an API at once, as opposed to
|
|
|
87 |
separately (as with the \fB-s\fR option).
|
|
|
88 |
.\" ----------------------------------------------------------------------
|
2 |
7u83 |
89 |
.IP \fB-c\fR
|
|
|
90 |
Causes \fBtspec\fR to only check the input files, not to generate any
|
|
|
91 |
output files.
|
|
|
92 |
.\" ----------------------------------------------------------------------
|
|
|
93 |
.IP \fB-e\fR
|
|
|
94 |
Causes \fBtspec\fR to only run its preprocessor phase, writing the output
|
|
|
95 |
to the standard output.
|
|
|
96 |
.\" ----------------------------------------------------------------------
|
|
|
97 |
.IP \fB-f\fR
|
|
|
98 |
Causes \fBtspec\fR to ignore date stamps when deciding whether it is
|
|
|
99 |
necessary to update an output file, and to force it to be updated.
|
|
|
100 |
.\" ----------------------------------------------------------------------
|
|
|
101 |
.IP \fB-i\fR
|
|
|
102 |
Causes \fBtspec\fR to print an index of all the objects specified in
|
|
|
103 |
the input files to the standard output. This index is designed to be
|
|
|
104 |
used as a quick guide to the contents of an API.
|
|
|
105 |
.\" ----------------------------------------------------------------------
|
|
|
106 |
.IP \fB-l\fR
|
|
|
107 |
Specifies local input mode (see above).
|
|
|
108 |
.\" ----------------------------------------------------------------------
|
|
|
109 |
.IP \fB-m\fR
|
|
|
110 |
Causes \fBtspec\fR to print an index intended for machine processing of
|
|
|
111 |
all the objects specified in the input files to the standard output.
|
|
|
112 |
This index is suitable for processing with text processing tools such
|
|
|
113 |
as \fIawk\fR(1).
|
|
|
114 |
.\" ----------------------------------------------------------------------
|
|
|
115 |
.IP \fB-n\fR
|
|
|
116 |
Causes \fBtspec\fR to update any output files which are younger than
|
|
|
117 |
the \fBtspec\fR executable. This is useful primarily in development
|
|
|
118 |
work on \fBtspec\fR.
|
|
|
119 |
.\" ----------------------------------------------------------------------
|
|
|
120 |
.IP \fB-p\fR
|
|
|
121 |
Indicates to \fBtspec\fR that its input has already been preprocessed
|
|
|
122 |
(i.e. that it is the output of a previous \fB-e\fR option).
|
|
|
123 |
.\" ----------------------------------------------------------------------
|
|
|
124 |
.IP \fB-r\fR
|
|
|
125 |
Causes \fBtspec\fR to only produce output for implemented, as opposed to
|
|
|
126 |
used, objects.
|
|
|
127 |
.\" ----------------------------------------------------------------------
|
|
|
128 |
.IP \fB-s\fR
|
|
|
129 |
Causes \fBtspec\fR to check each header in an API separately, as opposed
|
6 |
7u83 |
130 |
to all at once (as with the \fB-a\fR option).
|
2 |
7u83 |
131 |
.\" ----------------------------------------------------------------------
|
6 |
7u83 |
132 |
.IP \fB-t\fR
|
|
|
133 |
Causes \fBtspec\fR to allow long long type specifiers.
|
|
|
134 |
.\" ----------------------------------------------------------------------
|
2 |
7u83 |
135 |
.IP \fB-u\fR
|
|
|
136 |
Causes \fBtspec\fR to generate unique token names for the objects in
|
|
|
137 |
its input files.
|
|
|
138 |
.\" ----------------------------------------------------------------------
|
|
|
139 |
.IP \fB-v\fR
|
|
|
140 |
Causes \fBtspec\fR to enter verbose mode, in which it reports on the
|
|
|
141 |
output files it creates. If two \fB-v\fR options are given then
|
|
|
142 |
\fBtspec\fR enters very verbose mode, in which it gives more information
|
|
|
143 |
on its activities.
|
|
|
144 |
.\" ----------------------------------------------------------------------
|
|
|
145 |
.SH SEE ALSO
|
|
|
146 |
\fItcc\fR(1), \fItdfc\fR(1).
|
|
|
147 |
.\" ----------------------------------------------------------------------
|