Implement new command-line argument parser.
glibc has two option parsers, but neither one of them feels quite
right:
- getopt_long is simple, but not modular, in that there is no
easy way to make it accept multiple collections of options
supported by different modules.
- argp is more sophisticated and more complete, and hence more
complex. It still lacks one important feature for
modularity: there is no straightforward way for option groups
that are implemented independently to have separate auxiliary
data,
The parser implemented in this commit is meant to be simple and
modular. It is based internally on getopt_long.
The initial use for this option parser is for an upcoming commit of a test
program that has some of its own options and some from the model checker,
but it should also be appropriate for PSPP and PSPPIRE if anyone wants to
adapt them to use it.