NAME
tspec - An API specification tool
SYNOPSIS
tspec [ options ] api
tspec [ options ] api header
tspec [ options ] api header subset
tspec [ options ] -l file
DESCRIPTION
tspec is a tool for translating a form of API (Application Programming
Interface) description into the #pragma headers used by tcc(1) to
represent such APIs. It is more fully documented in tspec - An API
Specification Tool.
There are two basic forms of command-line. The first specifies that
tspec should process the whole of the API description api, or just one
header from it, header, or just a subset of that header, subset,
writing its output to the standard output directory. The second (using
the -l option) specifies that it should process a single file, writing
the output to the standard output.
OPTIONS
-Cfile Causes tspec to insert the contents of file as a copyright
message at the start of each output file. This can also be
specified using the TSPEC_COPYRIGHT environmental variable. The
order of precedence for this and other similar options is,
built-in values lowest, environmental variables next, and
command-line options highest.
-Idir Add the colon-separated list of directories dir to the list of
directories searched for input files. Input directories can
also be specified using the TSPEC_INPUT environmental variable.
-Odir Specifies that the directory dir should be used as a base for
the include output files. This can also be specified using the
TSPEC_INCL_OUTPUT or the TSPEC_OUTPUT environmental variable.
In the latter case it is given by ${TSPEC_OUTPUT}/include.
-Sdir Specifies that the directory dir should be used as a base for
the source output files. This can also be specified using the
TSPEC_SRC_OUTPUT or the TSPEC_OUTPUT environmental variable. In
the latter case it is given by ${TSPEC_OUTPUT}/src.
-c Causes tspec to only check the input files, not to generate any
output files.
-e Causes tspec to only run its preprocessor phase, writing the
output to the standard output.
-f Causes tspec to ignore date stamps when deciding whether it is
necessary to update an output file, and to force it to be
updated.
-i Causes tspec to print an index of all the objects specified in
the input files to the standard output. This index is designed
to be used as a quick guide to the contents of an API.
-l Specifies local input mode (see above).
-m Causes tspec to print an index intended for machine processing
of all the objects specified in the input files to the standard
output. This index is suitable for processing with text
processing tools such as awk(1).
-n Causes tspec to update any output files which are younger than
the tspec executable. This is useful primarily in development
work on tspec.
-p Indicates to tspec that its input has already been preprocessed
(i.e. that it is the output of a previous -e option).
-r Causes tspec to only produce output for implemented, as opposed
to used, objects.
-s Causes tspec to check each header in an API separately, as
opposed to all at once (as with the -c option).
-u Causes tspec to generate unique token names for the objects in
its input files.
-v Causes tspec to enter verbose mode, in which it reports on the
output files it creates. If two -v options are given then tspec
enters very verbose mode, in which it gives more information on
its activities.
SEE ALSO
tcc(1), tdfc(1).
tspec(1)