libtool
[Top][All Lists]
Advanced

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

Re: About libtool supporting parallel "make install"


From: Dan Nicholson
Subject: Re: About libtool supporting parallel "make install"
Date: Tue, 22 Mar 2011 05:34:14 -0700

On Tue, Mar 22, 2011 at 3:44 AM, Pacho Ramos <address@hidden> wrote:
> El vie, 18-03-2011 a las 13:40 -0700, Dan Nicholson escribió:
>> On Thu, Mar 17, 2011 at 11:40 PM, Ralf Wildenhues
>> <address@hidden> wrote:
>> > * Dan Nicholson wrote on Thu, Mar 17, 2011 at 11:47:38PM CET:
>> >> On Thu, Mar 17, 2011 at 3:08 AM, Pacho Ramos <address@hidden> wrote:
>> >>
>> >> > https://bugzilla.gnome.org/show_bug.cgi?id=644896#c2
>> >>
>> >> This seems more legitimate. I looked at the Makefile.am's and they
>> >> look reasonable to me. You have two libraries, one is in
>> >> lib_LTLIBRARIES and the other is in pkglib_LTLIBRARIES. The pkglib one
>> >> depends on the lib one.
>> >>
>> >> It seems that make is running install-libLTLIBRARIES and
>> >> install-pkglibLTLIBRARIES in parallel. Each one of these these rules
>> >> installs the libraries serially in a loop. However, if libtool is
>> >> relinking the libraries, it really needs to wait until the
>> >> prerequisite libraries from _other_ rules are installed. I'd bet if
>> >> you do this:
>> >>
>> >> echo "install-pkglibLTLIBRARIES: install-libLTLIBRARIES" >>
>> >> src/backend/xml/Makefile
>> >>
>> >> it will work again. This seems like a bug in automake's libtool
>> >> support to me, but I don't know how to fix it.
>> >
>> > Yes, it's a bug in Automake/Libtool, but the workaround isn't quite
>> > correct: you'd need something like
>> >
>> > install-pkglibLTLIBRARIES = install-pkglibLTLIBRARIES
>> > $(install-pkglibLTLIBRARIES): install-libLTLIBRARIES
>> >
>> > because your proposed workaround will cause automake to not emit its
>> > install-pkglibLTLIBRARIES rule at all.  Yes, depending on automake not
>> > seeing through variables when determining target names is ugly, I know.
>> > (It's also so widespread by now that we can't easily change that issue.)
>>
>> Oh, I see what you mean. If you add it to the generated Makefile, it
>> would work, though.
>>
>> > I've posted some ideas to fix the original bug before, on an automake or
>> > libtool list; but nothing finished.  :-/
>>
>> I'd never encountered this issue before, but I hope it is something
>> you can fix. I more or less understand how autoconf and libtool work,
>> but I've never deleved into automake.
>>
>> --
>> Dan
>>
>
> Then, as the bug looks to be in automake/libtool, there is no much
> gnucash can do to fix this as they don't provide generated Makefile
> (only Makefile.am and .in), no?

What they can do is split the libgnc-backend-xml-utils.la into it's
own separate subdirectory so that the make rules don't get mixed up
with the libgncmod-backend-xml.la ones. Kludgy, but it would work.

--
Dan



reply via email to

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