I already mentioned this on IRC, but I thought it'd be helpful to send
it here as well.

This patch series (also in the cjwatson/new-autogen git branch)
eliminates the use of Autogen and instead generates Automake input
directly from gentpl.py.

Autogen's definitions files were useful, and I've maintained
compatibility with the relevant subset of them, but the template
language was cumbersome; beyond a certain level of complexity it became
necessary to use the Guile extensions, and the impedance mismatch
between those and the Python template generation was considerable.  It's
simpler, much faster, and very much less confusing to generate
Makefile.*.am directly.

I've checked that this generates almost identical output, even when the
modules from grub-extras are in use.  The differences amount to a few
unimportant things such as removal of trailing newlines, and the
movement of a declarations block for libgnulib.a a bit further up the
file; they are short enough to be easily reviewable and not significant
enough to be worth contorting the generator code to avoid.

Colin Watson (3):
  Generate Makefile.*.am directly from gentpl.py, eliminating the use of
    Autogen.  The Autogen definitions files remain intact as they offer
    a useful abstraction.
  Show file name in error messages from AutogenParser.
  Handle #if/#endif and C-style comments in AutoGen definitions files.

 .gitignore               |    1 -
 ChangeLog                |    6 +
 INSTALL                  |    1 -
 autogen.sh               |   11 +-
 conf/Makefile.common     |   15 +-
 conf/Makefile.extra-dist |    1 -
 gentpl.py                | 1050 ++++++++++++++++++++++++++++------------------
 7 files changed, 651 insertions(+), 434 deletions(-)

-- 
1.8.4.3

_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to