These attributes are used to define how and what information is displayed
to the user of the program.
‘copyright’
The copyright is a structured value containing three to five
values. If copyright is used, then the first three are required.
date - the list of applicable dates for the copyright.
owner - the name of the copyright holder.
type - specifies the type of distribution license.
AutoOpts/AutoGen supports the text of the GNU Public License (gpl),
the GNU Lesser General Public License with Library extensions
(lgpl), the Modified Free BSD license (mbsd) and a few others.
Other licenses may be specified, but you must provide your own license file.
The list of license files provided by AutoOpts may be seen by typing:
ls $(autoopts-config pkgdatadir)/*.lic
text - the text of the copyright notice. This must be provided
if type is set to NOTE.
author - in case the author name is to appear in the documentation
and is different from the copyright owner.
eaddr - email address for receiving praises and complaints.
Typically that of the author or copyright holder.
An example of this might be:
copyright = {
date = "1992-2015";
owner = "Bruce Korb";
eaddr = 'bkorb@gnu.org';
type = GPL;
};
‘detail’
This string is added to the usage output when the HELP option is
selected.
‘explain’
Gives additional information whenever the usage routine is invoked.
‘package’
The name of the package the program belongs to. This will appear
parenthetically after the program name in the version and usage output,
e.g.: autogen (GNU autogen) - The Automated Program Generator.
‘preserve-case’
This attribute will not change anything except appearance. Normally, the
option names are all documented in lower case. However, if you specify this
attribute, then they will display in the case used in their specification.
Command line options will still be matched without case sensitivity.
This is useful for specifying option names in camel-case.
‘prog-desc and’
‘opts-ptr’
These define global pointer variables that point to the program
descriptor and the first option descriptor for a library option. This
is intended for use by certain libraries that need command line and/or
initialization file option processing. These definitions have no effect
on the option template output, but are used for creating a library
interface file. Normally, the first "option" for a library will be a
documentation option that cannot be specified on the command line, but
is marked as settable. The library client program will invoke the
SET_OPTION macro which will invoke a handler function that will
finally set these global variables.
‘usage’
Optionally names the usage procedure, if the library routine
optionUsage() does not work for you. If you specify
my_usage as the value of this attribute, for example, you will
use a procedure by that name for displaying usage. Of course, you will
need to provide that procedure and it must conform to this profile:
void my_usage( tOptions* pOptions, int exitCode )
‘gnu-usage’
Normally, the default format produced by the optionUsage procedure
is AutoOpts Standard. By specifying this attribute, the default format
will be GNU-ish style. Either default may be overridden by the user with
the AUTOOPTS_USAGE environment variable. If it is set to gnu
or autoopts, it will alter the style appropriately. This attribute
will conflict with the usage attribute.
‘reorder-args’
Some applications traditionally require that the command operands be
intermixed with the command options. In order to handle that, the arguments
must be reordered. If you are writing such an application, specify this
global option. All of the options (and any associated option arguments)
will be brought to the beginning of the argument list. New applications
should not use this feature, if at all possible. This feature is
disabled if POSIXLY_CORRECT is defined in the environment.