| Hello!
| Run this:
| 
| TMPDIR=. autoupdate --debug /dev/null
| echo AC_INIT >configure.in
| grep -v ^_ au*/au.txt >>configure.in
| autoupdate

Brilliant!

| The result is truly scary. There are two AC_INIT's, four AC_DIAGNOSE's,
| one AC_REQUIRE outside macro definition, even one AC_C_CROSS!

There are two AC_INIT in the source, so thanks to the gigo principle,
there are two in the output.  The AC_DIAGNOSE are OK to me.  I agree
the AC_REQUIRE is a problem, and AC_C_CROSS should not be here, but
that's because it's defined with

AC_DEFUN([AC_C_CROSS],
[AC_OBSOLETE([$0], [; it has been merged into AC_PROG_CC])])

instead of AU_DEFUN ---Geez, I really thought I had removed all the
AC_OBSOLETE :(.


| Macros that don't require argument are called with one empty argument here
| and there.

This is arguably inelegant, but I don't want to fight against this.
All the macros which are produced will have parens.


| The worst thing - autoupdate replaces configure.in, as opposed to autoscan
| that creates autoconf.scan. This means that autoconf pretends to do the
| right thing without user intervention.

I think this is the right thing.  Note it also backs up the previous
configure.in.

| I'm not an expert in everything. It takes time to fix other people's code.  
| If you ever wrote an AU_DEFUN or AU_ALIAS, please make sure that your
| AU_DEFUN or AU_ALIAS does the right thing.

Yes, I have to write tests for autoupdate.  Thanks Pavel!

Reply via email to