summaryrefslogtreecommitdiff
path: root/libshouldbeinlibc/argp-parse.c
AgeCommit message (Collapse)Author
1997-07-03[_LIBC] <libc-lock.h> -> <bits/libc-lock.h>.Miles Bader
1997-06-18(parser_parse_opt):Miles Bader
Detect and report unhandled options here. (parser_finalize): Do another pass over the parsers with ARGP_KEY_FINI. (argp_default_options, argp_version_options): Wrap doc strings in N_(). (argp_version_parser): Include `(PROGRAM ERROR)' in the no-version error text to indicate that something's fucked. (parser_parse_arg): Handle ARGP_KEY_ARGS here. Adjust NEXT pointer back if we fail to parse anything. (parser_parse_next): Simplify arg code. Leave state NEXT frobbing to parser_parse_arg. [!_] (N_): New macro.
1997-06-05Sync with libc version (there were minor whitespace differences, etc).Miles Bader
1997-05-26(parser_init):Miles Bader
Replace references to STATE->argp with STATE->root_argp.
1997-05-26(parser_init):Miles Bader
For the special case where no parsing function is supplied for an argp, propagate its input to its first child, if any.
1997-05-09(parser_finalize): Always set *END_INDEX if supplied.Miles Bader
1997-02-20(parser_convert):Miles Bader
Add FLAGS argument back. (parser_init): Once again pass FLAGS argument to parser_convert. Initialize PARSER->state after calling parser_convert.
1997-02-20Merge changes from libc 1997-02-17.Miles Bader
1997-02-19(parser_convert):Miles Bader
Remove FLAGS argument & use PARSER->state.flags. (parser_init): Set PARSER->state.flags. Don't pass FLAGS argument to parser_convert. Make check whether PARSER has the prog name in argv[0] at the proper place.
1997-02-17(parser_parse_next, parser_init):Miles Bader
Remove __ prefixes from references to getopt functions and variables (OPT*). (argp_version_parser, parser_finalize): Use _ instead of gettext. (gettext): Macro removed.
1997-02-16(struct group):Miles Bader
Add argp field. (convert_options): Set it. (__argp_input): New function. (parser_init): Set PARSER->state.pstate.
1997-02-14(parser_finalize, argp_version_parser):Miles Bader
Call gettext in appropriate places.
1997-02-13[HAVE_CONFIG_H] <config.h>: New include.Miles Bader
1997-02-13Update to libc-970212 versions.Miles Bader
1997-02-12(parser_parse_next):Miles Bader
Decrement PARSER->state.next if we consumed an arg we didn't end up parsing. Set ARG_EBADKEY ourselves in all cases. (parser_parse_arg, parser_parse_opt): Get rid of ARG_EBADKEY param.
1997-02-12(__progname, __progname_full):Miles Bader
Decls removed. (argp_default_parser): Use PROGRAM_INVOCATION_NAME & PROGRAM_INVOCATION_SHORT_NAME instead of __PROGNAME_FULL & __PROGNAME.
1997-02-12(__argp_parse): Renamed from argp_parse.Miles Bader
[weak_alias] (argp_parse): New weak alias. (argp_default_parser, parser_finalize): Use __argp_state_help, not argp_state_help. (argp_version_parser): Use __argp_error, not argp_error. (convert_options, calc_sizes): Use __option_is_end, not _option_is_end. (convert_options): Use __option_is_short, not _option_is_short.
1997-02-12Largely rewritten to clean up the code, avoid using nested functions, andMiles Bader
adapt namespace and locking in preparation for moving into libc.
1997-02-11(argp_default_parser):Miles Bader
Use strrchr instead of rindex. (argp_parse): Use strchr instead of index, memset instead of bzero.
1997-02-09(argp_parse):Miles Bader
Support ARGP_LONG_ONLY. Don't parse OPTION_DOC options.
1996-10-24(argp_parse):Miles Bader
Convert to use the new type of argp children vectors.
1996-10-15(argp_parse):Miles Bader
Don't consume non-option arguments that aren't recognized by any parser. Allocate enough space for TOP_ARGP's parent list to include the version parser.
1996-07-10(argp_version_options, argp_version_parser):Miles Bader
Use an uppercase 'V' for short version option.
1996-07-06(argp_version_parser):Miles Bader
Output ARGP_PROGRAM_VERSION to STATE->out_stream, not stdout. Supply that stream and STATE to ARGP_PROGRAM_VERSION_HOOK.
1996-06-27(argp_parse): Zero the CHILD_INPUTS vector.Miles Bader
1996-06-21(argp_parse):Miles Bader
Use group_parse instead of calling group parser directly for long options.
1996-06-17(argp_parse): Handle null streams.Miles Bader
1996-06-17(argp_default_parser): Output to STATE->out_stream.Miles Bader
(argp_parse): Initialize new fields in STATE. Output errors to STATE.err_stream.
1996-05-23(argp_default_parser): Break after --HANG.Miles Bader
1996-05-22(argp_parse): Only print a `Try...' message if the error was a parsing error.Miles Bader
1996-05-11(argp_parse): Turn any EBADKEY that makes it to the end back into EINVAL.Miles Bader
1996-05-11ARGP_ERR_UNKNOWN_KEY --> ARGP_ERR_UNKNOWN.Miles Bader
1996-05-11(EBADKEY): New define.Miles Bader
(argp_default_parser, argp_version_parser, argp_parse): Use EBADKEY instead of EINVAL.
1996-05-02(_argp_hang): New variable.Miles Bader
(OPT_HANG): New macro. (argp_default_options, argp_default_parser): Add hidden --HANG option. (argp_default_parser): New function. (argp_version_options, argp_version_argp): New variables. (argp_parse): Use ARGP_VERSION_ARGP when appropiate.
1996-05-01(argp_parse): Work with ARGP == 0.Miles Bader
1996-04-03(argp_parse):Miles Bader
Change HOOK argument to INPUT. Don't propagate back return values when we're done. (struct group): Rename HOOK & CHILD_HOOKS to INPUT & CHILD_INPUTS. Add HOOK field again. (group_parse): Restore & save value of GROUP's hook field into STATE around calling the parser. Don't save changed value of INPUT.
1996-03-19(struct group): Add PARENT, PARENT_INDEX, HOOK, and CHILD_HOOKS fields.Miles Bader
(argp_parse): Add HOOK argument. Implement passing hook values to parsers, and propagating them between parents and children. When printing `too many arguments', test ARGP_NO_ERRS, not ARGP_NO_HELP. (argp_default_options): Add --usage option. (argp_default_parser): Use argp_state_help, so we don't need to screw with exit options anymore. Add usage option.
1996-02-29(argp_parse): Print an error message if appropiate when we know there are tooMiles Bader
many arguments.
1996-02-15(argp_parse): Correctly deal with errors from getopt, and allow the user toMiles Bader
use '?' as a short option. (KEY_ERR): New macro. (argp_default_options, argp_default_parser): Use -? as the short option for --help.
1996-02-14(argp_parse):Miles Bader
Don't parse args in order by default. Deal correctly when the user turns a non-option arg into an option in re-ordering mode. Honor ARGP_NO_ARGS. Use KEY_END, KEY_ARG, and QUOTE. (KEY_END): New macro, in place of EOF. (KEY_ARG, QUOTE): New macros.
1996-02-09(argp_parse):Miles Bader
When a non-option arg fails to be parsed with EINVAL, set ARG_EINVAL true, and leave ERR as is until just before we return. Put process_arg() in the right scope. Deal with getopt returning EOF early because of `--'. Make STATE.arg_num per-group. (struct group): Renamed process_arg field to args_processed (a count).
1996-02-05(argp_parse): Implement the ARG_NUM field.Miles Bader
1996-02-05(argp_default_options, argp_default_argp, argp_parse, find_long_option):Miles Bader
Add `const' where appropriate.
1996-01-19(argp_default_options, argp_default_parser):Miles Bader
Add --program-name (hidden) option. (OPT_PROGNAME): New macro.
1996-01-03(_argp_unlock_xxx): New function.Miles Bader
1995-12-21(argp_default_options): Put --help in group -1.Miles Bader
1995-12-06(argp_parse): Changes uses of the INDEX field in struct argp_state to use NEXT.Miles Bader
1995-10-13(argp_parse): If an option alias doesn't have a key, use the real key.Miles Bader
1995-10-12(argp_parse): Correctly mark short options as optional.Miles Bader
1995-10-11(argp_parse):Miles Bader
Update STATE.argp when adding a wrapper to implement the --help option. In general, use the version of variables that are in STATE. Update STATE.index in the case where getopt returns EOF. Correctly translate options. (argp_default_parser, argp_parse): Rename uses of argp_usage* to argp_help*. (argp_parse): Deal with null parser or option fields. If an argp has neither a parser or any options, don't put it in GROUPS. Use comparison with EGROUP, rather than testing the parser field, the end test for iteration over GROUPS. (argp_parse): Pass in the right value for GROUPS to convert_options.