libtool-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: serial in branch-1-5 [[and branch-2-0]]


From: Gary V. Vaughan
Subject: Re: serial in branch-1-5 [[and branch-2-0]]
Date: Tue, 01 Feb 2005 17:01:35 +0000
User-agent: Mozilla Thunderbird 0.9 (X11/20041103)

Salut Alexandre!

Alexandre Duret-Lutz wrote:
>>>>"Gary" == Gary V Vaughan <address@hidden> writes:
> 
>  Gary> IIRC Libtoolize greps aclocal.m4 for '#serial [0-9]+
>  Gary> LTDL_INIT' et. al.  and compares matching serial numbers
>  Gary> against installed ltdl.m4 and libtool.m4 to diagnose
>  Gary> ltmain.sh vs. macro version mismatches and (not yet
>  Gary> implemented) only upgrade in-tree libtool.m4 and ltdl.m4
>  Gary> with libtoolize --install when the result will not cause
>  Gary> a mismatch.
> 
> Thanks for explaining, I was about to ask the purpose of this
> macro name.
> 
> But isn't libtoolize intended to be run before aclocal ?  If so
> why does it grep aclocal.m4 ?  It would find the definition of
> the old macro.

Yes, but it is also designed to work with a hand-maintained aclocal.m4
for projects that don't use automake.  The search allows libtoolize to
warn the user that an aclocal.m4 (or a file it m4_includes) needs to be
updated in that case.

>  Gary> One of the outstanding bugs in branch-2-0 that is
>  Gary> preventing a full release from that branch is the problem
>  Gary> with serial numbers.  I'm hoping that we might be able to
>  Gary> defer to aclocal for macro serial number management to
>  Gary> reduce the branch-2-0 release blockers...
> 
> I sincerely hope you won't wait for Automake 1.10 to release
> Libtool 2.0, because Automake 1.10 itself has to wait for
> Autoconf 2.60.

No.  I was just wondering whether released aclocal will work well
enough at installing libtool macros (from $prefix/aclocal) that the
rest of libtoolize's functionality (libltdl maintenance essentially)
can be moved elsewhere, and libtoolize eliminated entirely?  It
looks like I'll have to experiment with aclocal from various old
but supported automaken to find out.  On the other hand, maybe there
is no choice if we are to fully support automakeless projects.

> We had [*] such a dependency chain more than one
> year ago when Libtool 1.6 was waiting for Automake 1.8 which was
> waiting for Autoconf 2.58, and it didn't help Libtool to be
> released (my impression is that instead the wait caused more
> serious changes to be introduced).

Agreed.  That is why I made a release branch, so that the serious
changes could go on HEAD without further disruption to the libtool
release cycle.

>  Gary> My guess is that aclocal already updates in-tree m4 macro files with
>  Gary> respect to serial numbers in the format it understands, 
> 
> The current manual presents it as follows.
> 
> [[...]]

Understood.  Thanks.  Actually my question was ill-formed, since aclocal
obviously doesn't care about automakeless projects, where libtoolize is
working a little harder in order to support that mode.

>  Gary> but how can it compare serial numbers in aclocal.m4 when
>  Gary> out-of-tree macros are used if there is no indication of
>  Gary> source file against the many #serial lines in aclocal.m4?
> 
> It does not.  aclocal writes aclocal.m4 but does not read it and
> never did, this is why we prefer to distribute m4 files
> separately.
> 
> The serial numbers are just used to help people not to update
> their m4/* files by hand (and hopefully simplify future fooize
> scripts).  If you don't use --install, aclocal will not honor
> #serial numbers (but will still diagnose those it doesn't
> understand to sanitize the field).

I think this means automake-1.10 (current CVS) breaks compatibility
with all released libtool macros.  libtoolize needs the additional
syntax to continue its support of automakeless projects.  See my
previous post to this list.

Worst case, I guess future releases (including the next branch-1-5
release) of Libtool can start using `#ltsource NNN LT_INIT', and
libtoolize updated to use that, and generate a #serial line for
aclocal at install time.  I'd rather automake relax it's regex to
continue support for existing libtool serial lines though...

Cheers,
        Gary.
-- 
Gary V. Vaughan      ())_.  address@hidden,gnu.org}
Research Scientist   ( '/   http://tkd.kicks-ass.net
GNU Hacker           / )=   http://www.gnu.org/software/libtool
Technical Author   `(_~)_   http://sources.redhat.com/autobook

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]