On Thu, 2002-01-31 at 16:21, Ralf Corsepius wrote:
> Given an autoconf-2.52 and automake-1.5 compatible configure.in:
> ..
> AC_INIT
> ..
> AM_INIT_AUTOMAKE(libXrc, 0.1)
> ..
>
> make dist produces libXrc-0.1.tar.gz, PACKAGE is set to libXrc.
>
> With autoconf-cvs and automake-cvs, now using the new syntax:
> ..
> AC_INIT([libXrc],[0.1])
> ..
> AM_INIT_AUTOMAKE
You didn't translate correctly.
The CVS version of the above is:
AC_INIT([libXrc], [0.1], [libXrc])
AM_INIT_AUTOMAKE
By omitting the thrid arg to AC_INIT, you basically said 'I want the
tarball to have a canonicalized name', resulting in a lowercased name.
> > *If* you don't define the TARNAME, *then* it defaults to
> > lower-case-and-dash of the PACKAGE_ *NAME*!
> This is what I called unnecessarily inventing new standards, not
> justified by any technical reason.
Well, what about
AM_INIT_AUTOMAKE('GNU FooBar', [1.0])
Now make dist is most likely going to break (I doubt it supports spaces
in package names).
autoconf will now provide a default of 'gnu_foobar' as tarball name.
Now it is possible it would be better if autoconf switched the 1st and
3rd arg of AC_INIT around (i.e. making the 'fancy package name' optional
and defaulting to the tarball name). But things aren't broken as they
are now (provided you call the macro's correctly).
> > You want an additional parameter to AC_INIT,
> > that's your point?
> Nope, just leave the decision about lower-casing PACKAGE and
> PACKAGE_TARNAME to the user. Ie. do not implicitly lower-case anything.
It didn't lowercase anything, it _provided a default for a value you
omitted_.
> To give an example: What I want to see, is this:
>
> AC_INIT([libXrc],[0.1])
> AM_INIT_AUTOMAKE
OK, as I noted above, such a thing would work if autoconf switched the
1st and third arg of AC_INIT around. I frankly don';t care either way;
I feel that applications should really use the 3-argument form anyway.