mirror of
https://git.openafs.org/openafs.git
synced 2025-01-19 07:20:11 +00:00
9df43aacab
Add the -emit option to the compile_et command to support parallel make. The -emit option allows make to generate the header and the source files independently, instead of building two files at the some time. This avoids the issue where one command creates two separate files, which is difficult to handle correctly for parallel makes. Change-Id: Ib44a8e358643cf19b4834b3bd4d5b88db6cd0ccf Reviewed-on: http://gerrit.openafs.org/7921 Tested-by: BuildBot <buildbot@rampaginggeek.com> Reviewed-by: Marc Dionne <marc.c.dionne@gmail.com> Reviewed-by: Benjamin Kaduk <kaduk@mit.edu> Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
130 lines
4.2 KiB
Plaintext
130 lines
4.2 KiB
Plaintext
=head1 NAME
|
|
|
|
afs_compile_et - Produce error text tables for compilation
|
|
|
|
=head1 SYNOPSIS
|
|
|
|
=for html
|
|
<div class="synopsis">
|
|
|
|
B<afs_compile_et> [B<-debug>] S<<< [B<-language> <I<lang>>] >>>
|
|
S<<< [B<-prefix> <I<prefix>>] >>> S<<< [B<-v> <I<version>>] >>>
|
|
S<<< [B<-h> <I<include>>] >>> <S<<< [B<-emit> <I<output>>] >>>
|
|
I<error_table>>
|
|
|
|
=for html
|
|
</div>
|
|
|
|
=head1 DESCRIPTION
|
|
|
|
The B<afs_compile_et> command builds the error text tables for compilation.
|
|
This includes both a header file that contains a set of mappings between
|
|
error names and values and a F<.c> (or F<.msf>) file that provides a text
|
|
table of descriptions.
|
|
|
|
The <I<error_table>> argument specifies which error table to generate.
|
|
The error table specification should exist in the current working
|
|
directory or in the directory specified with B<-prefix> and should be
|
|
named F<error_table.et>.
|
|
|
|
By default, B<afs_compile_et> generates two files in one invocation. This is
|
|
problematic for parallel build systems. The B<-emit> option may be used to
|
|
generate the output files independently with two separate invocations of
|
|
B<afs_compile_et> for a given error table. This allows parallel build systems
|
|
to generate the source and header files, and the targets which depend on the
|
|
generated source and headers files, in parallel.
|
|
|
|
=head1 CAUTIONS
|
|
|
|
This command is used internally within the build process for OpenAFS.
|
|
Most users will access this information via L<translate_et(1)> rather than
|
|
via B<afs_compile_et>.
|
|
|
|
This command does not use the standard AFS command-line parsing package.
|
|
|
|
=head1 OPTIONS
|
|
|
|
=over 4
|
|
|
|
=item B<-debug>
|
|
|
|
Does nothing. It neither adds debugging information to the output nor
|
|
provides additional information on its operation.
|
|
|
|
=item B<-language> <I<lang>>
|
|
|
|
Specifies the type of output to generate. Currently, only ANSI C and K&R
|
|
are supported values (via the B<c> and B<k&r-c> values, respectively).
|
|
The default is ANSI C. There is some support for C++ started, but that is
|
|
not yet supported.
|
|
|
|
The B<-lang> <I<lang>> option is a synonym for B<-language> <I<lang>>>.
|
|
|
|
=item B<-prefix> <I<prefix>>
|
|
|
|
Specifies the directory to search for the F<error_table.et> file. Specifies
|
|
the directory to search for the prolog file when the B<-h> option is
|
|
given. The B<-p> <I<prefix>> option is a synonym for B<-prefix> <I<prefix>>.
|
|
|
|
=item B<-h> <I<include>>
|
|
|
|
Specifies an input file, called a prolog file, and modifies the name of the
|
|
header file generated by B<afs_compile_et>.
|
|
|
|
When the B<-h> option is given, B<afs_compile_et> will search for a prolog file
|
|
named <I<include>>F<.p.h>. B<afs_compile_et> will search the current working
|
|
directory for the prolog file, unless the B<-p> option is given. If the prolog
|
|
file is found, B<afs_compile_et> will place a verbatim copy of the prolog
|
|
file contents into the generated header file.
|
|
|
|
When the B<-h> option is given, the name of the header file generated by
|
|
B<afs_compile_et> is <I<include>>F<.h>, instead of <I<error_table>>F<.h>.
|
|
|
|
The B<-h> option does not affect the source file generated by B<afs_compile_et>.
|
|
|
|
=item B<-v> <I<version>>
|
|
|
|
Specified the type of output file: valid values are 1 (the default, for C
|
|
files) or 2, for B<.msf> file generation.
|
|
|
|
=item B<-emit> <I<output>>
|
|
|
|
Specifies which program file to generate; the header file or the source file.
|
|
Specify B<-emit header> (or B<-emit h>) to generate the F<.h> header file.
|
|
Specify B<-emit source> (or B<-emit c>) to generate the F<.c> (or F<.msf>)
|
|
source file.
|
|
|
|
=back
|
|
|
|
=head1 EXAMPLES
|
|
|
|
The following command generates the files F<pterror.h> and F<pterror.c>,
|
|
suitable for use with C programs:
|
|
|
|
% afs_compile_et -p path/to/src/ptserver pterror
|
|
|
|
The following command generates K&R style files instead:
|
|
|
|
% afs_compile_et -p path/to/src/ptserver -lang 'k&r-c' pterror
|
|
|
|
The following command generates the F<pterror.h> file, but not the F<pterror.c>
|
|
file.
|
|
|
|
% afs_compile_et -p path/to/src/ptserver -emit header pterror
|
|
|
|
The following command generates the F<pterror.c> file, but not the F<pterror.h>
|
|
file.
|
|
|
|
% afs_compile_et -p path/to/src/ptserver -emit source pterror
|
|
|
|
=head1 SEE ALSO
|
|
|
|
L<translate_et(1)>
|
|
|
|
=head1 COPYRIGHT
|
|
|
|
Copyright 2009 Steven Jenkins <steven@endpoint.com>
|
|
|
|
This documentation is covered by the IBM Public License Version 1.0. This
|
|
man page was written by Steven Jenkins for OpenAFS.
|