steve.langasek at canonical.com
Tue Dec 2 20:11:21 GMT 2008
On Tue, Dec 02, 2008 at 12:08:00PM +0000, James Westby wrote:
> On Mon, 2008-11-17 at 10:13 +0000, Scott James Remnant wrote:
> > I notice a lot of packages updating libtool in a variety of ways, so I'd
> > like to make the following notes:
> > The one, and only, proper and correct way to do this is:
> > autoreconf -f -i
> > That will update all of the tools to the current version, in the right
> > order.
> Hi Scott,
> Thanks for this information. I would like to clarify about what this
> call should replace. I assume it replaces calling autoreconf with any
> other arguments, and indeed calling all the scripts individually, is
> that right? Should we do this instead of just calling libtoolize
> without auto*? What about automake but none of the others?
Calling libtoolize on its own is always wrong because this can result in
version skew between ltmain.sh and (aclocal.m4/configure).
Calling automake on its own is always wrong because this can result in
version skew between **/Makefile.in and (aclocal.m4/configure).
Both of these issues can be addressed by calling "autoreconf" instead.
There are other combinations that are "safe" (libtoolize+aclocal+autoconf
w/o automake; automake+aclocal+autoconf w/o libtoolize), but distinguishing
the safe cases from the unsafe ones requires finer knowledge of autotools
workings than we can probably expect most developers to retain, so as a
general rule, using "autoreconf" is probably best.
> You mention cdbs, is the correct thing to do with that to always
> specify all DEB_AUTO_UPDATE_* or none of them?
That probably depends on whether you have a reason in that package to modify
any of the other autotools input files?
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
slangasek at ubuntu.com vorlon at debian.org
More information about the ubuntu-devel