2010-11-04  Bruce Korb  <bkorb@gnu.org>

	* autoopts/configfile.c (aoflags_directive) do not use asprintf().
	It causes problems on some platforms.
	* getdefs/Makefile.am (RUNAG): do not use ":=" assignment 'cuz
	Solaris' make cannot cope.

2010-11-04  Bruce Korb  <bkorb@gnu.org>

	5.11.2 release

2010-11-04  Bruce Korb  <bkorb@gnu.org>

	* autoopts/Makefile.am (GENMAN): derive more of the list
	* autoopts/autogen.map (end-list-entry): new char classification
	* autoopts/configfile.c (handle_directive): handle new directive
	and split into "program" and "aoflags" functions.
	* autoopts/proc-state.def (misuse): new option processing flag
	* autoopts/tpl/aginfo3-tpl: removed (unused).
	* autoopts/tpl/*: move many files here and reorganize
	* autoopts/usage-txt.def (AO_Flags): new translatable string
	* autoopts/usage.c (set_usage_flags): new function for handling
	gnu vs. autoopts and no-misuse-usage vs. misuse-usage
	* autoopts/test/defs.in (compile): allow help text to be sedded.
	* autoopts/test/usage.test: adjust to changes and test new feature
	* autoopts/Makefile.am: clarify distinction between pkgdatadir and
	the *DESTINATION* pkgdatadir.
	* autoopts/install-options-h: use these more distinct names and also
	replace the "bindir" value for the columns executable.

2010-09-04  Bruce Korb  <bkorb@gnu.org>

	* agen5/fmemopen.c: update to current version
	* autoopts/makeshell.c (optionParseShell): ensure output is written
	(openOutput): also
	(genshelloptUsage): also
	* autoopts/optmain.tpl (option-emitter-proc): ensure the emission worked
	* autoopts/usage.c: also
	* autoopts/version.c (printVersion): also

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

	* agen5/bootstrap.dir (set_defaults): some shells require quotes around
	subshell output for "eval".  Dump the subshell output into a variable.
	eval the quoted variable.
	* agen5/directive.tpl (gperf): --null-strings is a relatively new
	option.  Not 10 years old --> too new.  Drop it.
	* agen5/fmemopen.c (fmem_seek): fix BSD funopen argument usage
	* autoopts/nested.c (optionLoadNested): constrain scope of pAL.
	* autoopts/test/nested.test: the ' - reading file ' line contained
	temp directory information.  Strip it out.
	* snprintfv/bootstrap.dir: do not use awk.  Much simpler as shell
	* snprintfv/format.c (print_float): break it up.  Waaaaaay too big.
	* snprintfv/gendoc.awk: obsolete removed
	* snprintfv/genproto: obsolete removed

2010-08-14  Bruce Korb  <bkorb@gnu.org>

	* Makefile.am (SUBDIRS): the "doc" dir cannot be built without libxml2.
	* agen5/expOutput.c: collect static functions at the top.

2010-08-01  Bruce Korb  <bkorb@gnu.org>

	* agen5/autogen.h (SCM_EVAL_CONST): adjust line number
	* agen5/autogen.c (exit_cleanup): clean up cleanup.  Ensure that
	server shell is properly shut down.

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

	* agen5/expState.c (ag_scm_tpl_file_next_line): new function
	(do_ag_file_line): broken out of ag_scm_tpl_file_line().
	* agen5/tpLoad.c (wrap_up_depends): if the target file is different
	from the dependency file, then modify its time, too.
	* agen5/tpProcess.c (open_output): mark "/dev/null" as a temp file
	so we won't list it as an output (derived) file
	* agen5/expOutput.c (ag_scm_output_file_next_line): new function.

2010-07-25  Bruce Korb  <bkorb@gnu.org>

	5.11 release

2010-07-17  Bruce Korb  <bkorb@gnu.org>

	* agen5/autogen.h (zEmpty): new empty string
	* agen5/defParse.x (dp_do_empty_val): Use "zEmpty" for an empty
	string instead of zNil.  zNil is used to indicate "not found".
	* all-over ($ Id): remove more of these lines & remove surpurfluous
	space within parentheses.

2010-07-10  Bruce Korb  <bkorb@gnu.org>

	* agen5/defLoad.c (ready_input): new function.  Make readDefines()
	smaller.
	* agen5/expOutput.c (ag_scm_out_pop) return an empty string when
	there is no output instead of "undefined".  Guile doesn't cope well.
	(ag_scm_out_push_new) Use the temp directory for temp files.
	* agen5/fmemopen.c (fmem_seek): return the seek position
	(fmem_config_user_buf, fmem_alloc_buf) break these out of ag_fmemopen
	* agen5/autogen.c (setup_signals): add a special handler parameter
	for SIGABRT.  Make sure our dying child shell won't shoot us.
	(done_check): make sure we exit-fail when called outside of DONE state.
	Also, call _exit() to bypass all of Guile's broken cleanup.
	* agen5/loadPseudo.c (handle_hash_line): new function to handle
	hash-marked comments -- in case a ``#!/path/to/shell'' comment is found
	* agen5/test/expr.test (DEBUG_ENABLED): export this for testing when
	we are in a debug build environment.
	* agen5/test/opts.test (unstamp): sometimes the template version info
	varies, too.  Remove this, too.
	* autoopts/autogen.map (file-name): we need to scan over characters in
	a file name for the /path/to/shell stuff.
	* autoopts/bootstrap.dir: burn the library version into optlib.tpl
	* */*.c: add many ``/** \file'' marks.

2010-07-03  Bruce Korb  <bkorb@gnu.org>

	* agen5/defFind.c (entryListSearch): rewrite the search children
	loop to simply ignore any text-type nodes that are found.
	* doc/auto-opts.tpl (hello.c): #include unistd.h only if we have it.
	* doc/mk-agen-texi-in (INCLUDES): append to CFLAGS so it is actually used.
	(globally): remove POSIX-isms

2010-06-29  Bruce Korb  <bkorb@gnu.org>

	* agen5/agUtils.c (start_dep_file): new function.  Clean up code.
	* agen5/tpLoad.c (wrap_up_depends): new function.  Clean up code.

2010-06-24  Bruce Korb  <bkorb@gnu.org>

	* agen5/agInit.c (config_dep): implement code to handle --make-dep opt.
	Refactor some code.
	* agen5/agUtils.c: Refactor some code.
	* agen5/autogen.h: add new variables for emitting make-dep text.
	* agen5/defDirect.c (doDir_include): add included file name to source list
	when --make-dep is active
	* agen5/defLoad.c (readDefines): ditto.
	* agen5/expExtract.c (loadExtractData): ditto.
	* agen5/expFormat.c (ag_scm_license): also.
	* agen5/expGuile.c (ag_scm_string_to_camelcase): new scheme function
	* agen5/expOutput.c (open_output_file): print output file names to the
	output dependency file when --make-dep is active.  Add a new flag to
	suppress this output when the file being created is a temporary.
	* agen5/opts.def (make-dep): define and document this new option.
	* agen5/tpLoad.c (append_source_name): new function to add a source file
	name to a string.
	(cleanup): add code to print this accreted string and finish the
	dependency file (when --make-dep is active).
	* agen5/tpProcess.c (processTemplate): create the dependency file when
	--make-dep is active.  Start the target file list entry.
	(closeOutput): make sure our "start time" is one second earlier than
	the earliest target file we create.
	* autoopts/autoopts.c (ao_realloc): make sure it is NULL tolerant.
	* autoopts/bootstrap.dir (source): use "." instead of "source".
	* columns/bootstrap.dir: ditto
	* config/bootstrap: ditto
	* columns/Makefile.am (RUNAG): use new -MF$@ feature for stamp files.
	* config/bootstrap.shlib (run_ag): ditto
	* xml2ag/Makefile.am (run_AG): ditto
	* columns/columns.c (ENDING): implement new option to emit a final
	string at the end of output, but before final newline.
	* columns/opts.def (ending): define and document this option
	* agen5/test/strxform.test: add test for string transform functions

2010-06-23  Bruce Korb  <bkorb@gnu.org>

	* add-on/char-mapper/mk-str2enum.sh: add fallback in case mktemp
	is not available.

	5.10.2 release

2010-06-03  Bruce Korb  <bkorb@gnu.org>

	* agen5/agShell.c (openServer): initialize chId.
	* agen5/bootstrap.dir (set_defaults): some shells do not handle here doc
	input to a subshell very well.
	* agen5/opts.def: use "optArg.argString" in preference to pzLastArg
	* agen5/tpProcess.c (openOutFile): if output is being redirected to "null",
	then be sure to not remove write permissions.  An unwritable /dev/null is bad.
	* columns/opts.def: also
	* xml2ag/xmlopts.def: also
	* autoopts/autoopts.h (DEFAULT_SHELL): Just default to /bin/sh.
	* autoopts/makeshell.c (optionParseShell): ditto -- rest of work
	* autoopts/configfile.c (filePreset): make sure the flags get reset
	on each iteration.

2010-03-03  Bruce Korb  <bkorb@gnu.org>

	5.10.1 release

2010-03-01  Bruce Korb  <bkorb@gnu.org>

	* autoopts/Makefile.am: strip out libguile
	* autoopts/bootstrap.dir: remove guileopt.c processing
	* autoopts/options_h.tpl (teOptArgType): add float, double, long double
	and long long in preparation for future work
	* autoopts/test/Makefile.am: remove libguile testing
	* autoopts/test/defs.in: remove libguile testing
	* config/libopts.def: improve quoting of macro arguments.
	search for inttypes.h before stdint.h.

2010-02-22  Bruce Korb  <bkorb@gnu.org>

	* agen5/autogen.c (doneCheck): flush stdout/stderr before _exit() call
	* agen5/test/html.test: test output content instead of exit code for
	CGI service failure
	* autoopts/test/getopt.test: cope with unexpanded $ Id $
	* config/bootstrap: configure.in renamed to configure.ac
	* agen5/bootstrap.dir: de-duplicate some code
	* columns/bootstrap.dir: ditto
	* config/bootstrap.shlib: common shell library

2010-02-20  Bruce Korb  <bkorb@gnu.org>

	* agen5/agUtils.c (doOptions): clean up coverity issue
	* agen5/tpProcess.c (openOutFile): ditto
	* agen5/bootstrap.dir: remove dependencies on a couple of private
	tools (mk-fwd and allbut).  Use functions to clean up code.
	* autoopts/autoopts.c (longOptionFind): pz_Name may be NULL sometimes
	* autoopts/environment.c (doEnvPresets): ditto
	* autoopts/tokenize.c (alloc_token_list): new function.
	Fix off-by-one bug.
	(ao_string_tokenize): break out the sizing and allocation functions
	into alloc_token_list().

2009-12-12  Bruce Korb  <bkorb@gnu.org>

	* agen5/Makefile.am (EXTRA_DIST): distribute defParse.x
	* agen5/defParse.def (handler-file): new attribute.  Use it.
	* agen5/fsm-macro.tpl:
	* agen5/fsm-trans.tpl:
	* agen5/fsm.tpl: implement "handler-file" attribute, separating
	generated from hand crafted code.

2009-12-06  Bruce Korb  <bkorb@gnu.org>

	* autoopts/options-tpl.in (is-lib-cb-proc): new hash table
	* autoopts/optlib.tpl (is-lib-cb-proc): set it #t if callback proc
	is out of optlib, set it #f if not.
	* autoopts/optmain.tpl (decl-callbacks): always declare all library
	callback functions and never declare or define them to something else.
	* autoopts/test/cond.test: test this stuff.

2009-11-28  Bruce Korb  <bkorb@gnu.org>

	* agen5/agUtils.c (mkstempPat): provide space for copying template
	* agen5/defParse-fsm.c (dp_run_fsm): add __COVERITY__ markers
	* agen5/expOutput.c (open_output_file): common functionality
	(ag_scm_out_push_add): use it
	(ag_scm_out_push_new): use it
	* agen5/tpProcess.c (processTemplate): tweaks to openOutFile call
	(openOutFile): use open_output_file, too.
	* doc/auto_gen.tpl: Use "@include" to suck in generated text.
	* doc/mk-agen-texi-in: clean up the code

2009-11-18  Bruce Korb  <bkorb@gnu.org>

	5.10 release
