Announcement for August, 2014

This Scheme function has "traditionally" included a date and time stamp in
the resulting output and that could be suppressed by providing it a "-d" option.
Due to very reasonable complaints, the new default is to not
include the date and require a "-D" option to enable dates.
However, even that is not completely satisfactory. The user
of the template needs a way to select behavior. Enter the newly recognized
environment variable: AUTOGEN_DNE_DATE
If set, it will override any "-D" option in the template.
If set to the empty string or a string with the first character being
one of 0nNfF (zero or the first letter of "false" or "no"),
then the date will not be emitted. Otherwise, the presence of this
environment variable will cause the date to be emitted.

This is a relatively new function that allows you to leave a
DEFINEd macro from anywhere within it. Well, almost.
Since FOR loops insert definition contexts, these must
be properly unwound, and they were not. It works now.

optionPrintVersionAndReturn()

This is a new option library function. This will allow you to write
a version handling function that prints additional information after
the standard information. Such a function should likely pay attention
to any argument to the option. Please read the source for the
print_ver function for specifics.

mdoc and man pages

A number of noticable improvements incorporated from the NTP project.
(Thank you, Harlan Stenn et al.)

libopts tear-off library

The library needs stdnoreturn.h, so the infrastructure for testing
presence and hacking together a substitute are now included in
the tear-off tarball.

yylex() for definitions

The definition scanner now accepts hexadecimal numbers prefixed
with "0x" without requiring quotes around the value.

tracing improvement

When nested autogen runs are dumping their trace output to the same
file, finding the start and end of the nested run is a little obscure.
The trace output now prefixes the first and last lines with ===
making it easier to spot and correlate.

fixed the m4 macro AG_COMPILE_FORMAT_ARG

The code assumed the main function had an "argc" argument.

Announcement for May, 2014

5.18.3

Guile issues

The auto-edit of Guile headers depends upon configured values.
Most especially it depends upon the configuration of the token noreturn,
and ptrdiff_t. Otherwise, Guile will
do strange and different things, depending on its minor version.

aborting

Abort from the failing function so that stack traces are useful

make sure library option handling code does nothing when the
library is just trying to get information about an option.

perl program options

A new template perlopt.tpl has been added.
It utilizes the Getopt::Long perl package.
It allows perl programs to have generated man pages and texi docs.

i18n and help text

The aoGetsText() emitted i18n helper function needs its argument
to have the "format_arg" attribute. A wrapper macro ATTRIBUTE_FORMAT_ARG
has been added for this purpose. It is set during configure via the
AG_COMPILE_FORMAT_ARG m4 macro.