2008-12-29  Leo Davis  <ldav1s@users.sourceforge.net>

        * autoopts/test/nested.test: Mac OS/X requires ``-e'' with its sed.
	
2008-12-28  Bruce Korb  <bkorb@gnu.org>
	
	* agen5/defFind.c (hash_name_t): new structure for hashing the looked
	up define names
	(hash_string): new
	(stringAdd): new
	(print_used_defines): new
	* agen5/opts.def (used-defines): new option
	* autoopts/optcode.tpl (plus-marks): obsolete attribute
	* doc: doc this stuff
	* getdefs/gdinit.c (validateOptions): allow a user specified pattern
	to include the '/\*=' characters at the start.  Free some memory
	explicitly instead of with program exit.
	* agen5/agInit.c (initialize): configure the default shell.
	* agen5/autogen.h (pzShellProgram): initialize to configured value
	* configure.in (CONFIG_SHELL): make it an unquoted define
	* autoopts/test/usage.test: play with the --used-defines option a bit

2008-12-20  Leo Davis  <ldav1s@users.sourceforge.net>
            Bruce Korb  <bkorb@gnu.org>
	
	* autoopts/getopt.tpl(more-help): thoroughly expunged
	* autoopts/optcode.tpl(no-libopts): make expunging --more-help possible
	* autoopts/opthead.tpl: ditto
	* autoopts/optlib.tpl: ditto
	* autoopts/test/getopt.test: adjust for altered format
	* autoopts/usage.tpl: specify that libopts is not used.
	* autoopts/agman1-tpl.in: don't doc --more-help if no-libopts spec'd.
	* autoopts/optmain.tpl: eliminate nested external declarations.

2008-12-04  Brian Dessent  <brian@dessent.net>

	* configure.in: require WERROR=yes to enable -Werror on compiles.

2008-12-04  Leo Davis  <ldav1s@users.sourceforge.net>

	* autoopts/getopt.tpl: when using option names as C variables,
	they *must* be passed through "string->c-name!".
	* autoopts/usage.tpl: CFLAGS may contain ``-I'' options with
	relative paths.  Therefore, do the compile from the current dir.

202008-11-16  Bruce Korb  <bkorb@gnu.org>

	* autoopts/Makefile.am (MISC_FILES): until parse-duration.[ch] are
	obtained from gnulib, add them to the extra files for distribution.
	* autoopts/parse-duration.c: new file, pending addition to gnulib.
	* autoopts/parse-duration.h: new file, pending addition to gnulib.

2008-11-16  Bruce Korb  <bkorb@gnu.org>

	5.9.6 release

08-11-02  Bruce Korb  <bkorb@gnu.org>

	* configure.in: old guile headers are not up to all the warnings
	* autoopts/optcode.tpl: older guile cannot handle "substring/shared"
	* autoopts/autoopts.h (arg_types_t): add 'time'.
	* autoopts/options_h.tpl (teOptArgType): add OPARG_TYPE_TIME
	* autoopts/time.c: new module containing optionTimeVal and parse_time
	* agen5/expString.c (ag_scm_time_string_to_number): New: convert a time
	duration string into a number of seconds.
	* autoopts/optlib.tpl (arg-type): handle 'time'
	* autoopts/usage-txt.def (GnuTimeArg)
	(StdTimeArg) handle 'time'
	* autoopts/usage.c (printOneUsage): handle 'time'
	* doc/autogen-texi.txt: describe 'time' argument type

2008-09-28  Alan Pae  <alanpae@ilkda.com>

	* agen5/defDirect.c (leave): label conflicts with system header. Rename.
	* autoopts/aoconf-tpl.in (libs): make sure it is the same as ldflags
	* autoopts/optcode.tpl (stdlib.h): is very often needed, so always incl.
	* autoopts/save.c (compile_getopt): Make a very picky compiler happy
	* autoopts/test/getopt.test (lgen): make sure it is in aolib, if needed

2008-09-21  Bruce Korb  <bkorb@gnu.org>

	* agen5/expOutput.c (ag_scm_make_header_guard): it is possible to get
	the "leader" string to be empty.  If that happens, use a default.
	* autoopts/install-options-h: let configure script config the templates
	* autoopts/*.tpl: rename several to *-tpl.in and have configure fix 'em
	* autoopts/test/defs.in: avoid features Solaris /bin/sh cannot handle
	* configure.in: make certain CONFIG_SHELL is not empty

2008-08-22  Bruce Korb  <bkorb@gnu.org>

	* agen5/defFind.c (entryListSearch): names must start with a valid
	"first character of a variable" character.
	* autoopts/autoopts.c (findOptDesc): for named option mode,
	if hyphens introduce an argument, then the argument must be an option
	name  and cannot be the option argument to the default option.

2008-08-03  Bruce Korb  <bkorb@gnu.org>

	* autoopts/file.c (optionFileCheck): When opening the file, stash
	the file name in the cookie, so it can be saved in a config file.
	* autoopts/save.c (optionSaveFile): reconfigure function and ensure
	that all option argument types get saved off.
	* autoopts/test/cfg-edit.test: test the three flavors of file argument
	types (do not open, open(2), and fopen(3)).

2008-08-02  Bruce Korb  <bkorb@gnu.org>

	* autoopts/boolean.c (optionBooleanVal): bail out for OPTST_RESET
	* autoopts/stack.c (optionUnstackArg): bail out for OPTST_RESET
	(optionStackArg) special handling for OPTST_RESET
	* autoopts/numeric.c (optionNumericVal): bail out for OPTST_RESET
	(optionShowRange): display "everything above" and "everything below"
	ranges in a little more friendly manner.
	* autoopts/usage-txt.def: add these new messges and improve "between".
	* autoopts/test/cfg-edit.test: new test
	* autoopts/test/*.test: adjust for "between" message change
	* autoopts/optlib.tpl: stacked args require options that accept more
	than one instance.

2008-07-27  Bruce Korb  <bkorb@gnu.org>

	* agen5/agUtils.c (count_nl): new - count newline chars in a string.
	* agen5/defLex.c (scanAgain): defer incrementing line number until we
	are sure we have successfully run the shell command.
	(loadScheme): if the scheme expression has not ended before the end of
	the string, emit an error message.
	* autoopts/autoopts.c (longOptionFind): the option name must be NUL
	terminated, so copy it into a writable buffer.  Constrain to 127 chars.
	* autoopts/*.c: do not do anything in callback procs when the
	"OPTST_RESET" bit is set.
	* autoopts/options_h.tpl: define symbolic names for various special
	operations signified by passing a small-valued pointer to option
	callback procedures.  Use them throughout.
	* autoopts/nested.c (optionNestedVal): this procedure has some work
	to do when the OPTST_RESET bit is set.  Clean out nested values.
	* autoopts/numeric.c (optionShowRange): new.  generated functions that
	handle range-constrained numeric values will now call this procedure
	when the option structure pointer has one of these enumerated special
	values.
	* autoopts/opt*.tpl: these have all been substantially reworked to
	support this new "resettable" functionality.
	* autoopts/options.tpl: has been renamed to:
	* autoopts/options-tpl.in: and is now configured.
	* autoopts/reset.c: new module -- implements resetting the state of
	another option.
	* autoopts/test/cfg-edit.test: new test.
	* autoopts/test/*.test adapted to new functionality

2008-06-21  Bruce Korb  <bkorb@gnu.org>

	* agen5/autogen.c (signalSetup) remove "atexit(3)" call.  This routine
	is called more than once.
	(inner_main): set signals back to default before calling "exit(3)".
	Make the "atexit" call here.
	(signalExit): do not make the siglongjmp when in DONE or ABORTING state.
	(doneCheck): make certain this code executes only once.
	* autoopts/agman1.tpl: "adjust" is spelled ".ad" in nroff-speak
	* autoopts/install-options-h: burn the "${bindir}" into the
	installed templates also.
	* autoopts/options.tpl: use the installation bindir, if necessary,
	to try to find the columns program.
	* autoopts/optlib.tpl: Most "DISABLE_*" macros do not take an argument.
	the nested/hierarchical options are an exception.  The nested values
	provided are to be used to find entries to remove, instead of removing
	them all.
	* agen5/test/error.test: Guile error messages are way too unpredictable
	to be able to know what they are going to look like.  Remove them
	from the compared error text.
	* autoopts/*.tpl: Add a new field to the option structure, and the
	AutoOpts version where it first appears:
	+    optArgBucket_t const * const originalOptArgArray;
	+#define  originalOptArgArray_STRUCT_VERSION  131072
	and fill it in with the initialization values.

2008-06-14  Bruce Korb  <bkorb@gnu.org>

	* agen5/defLex.c (assembleName): keep track of where the here string
	starts, in case of an error.
	* autoopts/configfile.c (handleStructure): when reading in a string
	value in "XML" format, convert %HH byte code formats into the proper
	character value.
	* autoopts/load.c (assembleArgValue): a newline may also separate
	a name from its argument string.
	* autoopts/save.c (print_a_value): print any kind of value, including
	hierarchical values.  If an enumeration or set membership conversion
	function is available, use that.  Otherwise, emit them as numbers.
	(printValueList): print a list of values from an argument array
	(printHierarchyList): The list must come from an option descriptor.
	* autoopts/test/nested.test: augment to test this stuff.
	* compat/compat.h (wchar_t, mode_t, uid_t, gid_t): remove
	* config/libopts.def (AC_CHECK_TYPES): add pid_t
	* configure.in (AC_CHECK_TYPES): remove mode_t, pid_t, uid_t and gid_t

2008-05-24  Bruce Korb  <bkorb@gnu.org>

	5.9.5 release

2008-04-09  Gary V. Vaughan  <gary@gnu.org>

	* snprintfv/snprintfv.m4 (wint_t, wchar_t): Use AC_CHECK_TYPES so
	that autoheader defines entries in config-h.in for wint_t and
	wchar_t, since AC_CHECK_TYPE doesn't automatically call AC_DEFINE
	when autoconf can't find a type.
	Reported by Harlan Stenn <Harlan.Stenn@pfcs.com>

2008-04-06  Bruce Korb  <bkorb@gnu.org>

	* autoopts/Makefile.am: Fix up template handling.
	* autoopts/agman1.tpl: Note that numeric equivalents can be used for
	enums, too.
	* autoopts/aginfo.tpl: ditto
	* autoopts/install-options-h: Adjust for different template collection
	names.
	* autoopts/opthead.tpl (): Move the export definitions higher up
	in the generated header.
	* autoopts/options.tpl: Make the version more readable.
	* autoopts/options_h.tpl: emit the more readable version into
	the header comments
	* config/misc.def: cope with CygWin
	Thanks to: Brian Dessent <brian@dessent.net>
	* doc/autogen-texi.txt: doc the extra-code for keyword options
	* autoopts/enumeration.c (optionSetMembers): Accommodate a failure
	to find a named value.
	* autoopts/install-options-h: burn the config shell name into all
	installed templates.
	* compat/compat.h: add in hackarounds for missing standard int types.

2008-03-11  Brian Dessent  <brian@dessent.net>

	* config/misc.def (do_always): Check for funopen cookie typedefs
	and define FUNOPEN_FLAVOR to 'bsd' or 'newlib'.
	* agen5/fmemopen.c: Don't define typedefs for cookie_*_function_t
	types for newlib systems.

2007-12-23  Bruce Korb  <bkorb@gnu.org>

	5.9.4 release
