This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Attn: cygport maintainer [was: Re: Libtool 2.2.2]


Yaakov (Cygwin Ports) wrote:
Charles Wilson wrote:
I'm now looking at 2.2, what I mean is instead of (in libtool.m4):

AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])

Do something like the following:

AU_DEFUN([AC_PROG_LIBTOOL], [
LT_INIT
LT_OUTPUT
])
AU_DEFUN([AM_PROG_LIBTOOL], [
LT_INIT
LT_OUTPUT
])

AFAICS that would allow full compatibility with 1.5 behaviour after an
autoreconf.

I'm not so sure. I still think that calling LT_OUTPUT immediately after LT_INIT is not exactly equivalent to 1.5 behavior. I think that is too early...but I don't know how to force a non-local insertion of LT_OUTPUT, and even if I did, I don't know how "far down" in configure.ac that non-local insertion should go.


Of course, if you KNOW of a package that needs libtool before configure is finished (I don't), you could easily test my assertion by manually inserting LT_OUTPUT immediately after A[CM]_PROG_LIBTOOL/LT_INIT, manually running autoreconf with libtool2.2, and see if it works...

But even so, this means that as part of cygport [*] you'd need to run autoupdate, which is not the current behavior.

[*] But again, my recommedation is that cygport should NOT run autoupdate in an automated way. Instead, the package maintainer should run it, inspect the results, and fold those changes into .src.patch. In which case, manually adding LT_OUTPUT before generating .src.patch only when necessary rather than relying on autoupdate to do it automatically always even when unecessary, seems to be the better way to go.

But I see now that this would cause LT_OUTPUT to be added
by autoupdate, which would generally be unnecessary.

That's a drawback, all right.


Is there another
way to do this?

I don't know.


True, but I don't think that's the primary reason to have only one
libtool, and isn't the idea that it shouldn't be necessary to switch
back and forth?

Well, yeah -- in a perfect world.


| Besides, libtool-2.2 compatibility patches are the sort of thing
| upstream maintainers like to see...

There is another case which might be tricky.  Some packages (namely
Berkeley DB and KDE3) ship with libtool.m4 and then cat(1) it into
aclocal.m4 (BDB) or acinclude.m4 (KDE3).  With 1.5, cygport simply
copies the libtool.m4 (and ltmain.sh) over the shipped copy in these cases.

With 2.2, besides the change in location (the /usr/share/libtool/config
subdir didn't exist in 1.5), there are now several libtool m4 macros.
Besides ltdl.m4 and argz.m4 (AFAICS required only by ltdl.m4), are they
all necessary for a working libtool.m4?

Correct. The gcc folks ran into this. FWICT, you need each of: libtool.m4, ltoptions.m4, ltsugar.m4, ltversion.m4, lt-obsolete.m4,


It is recommeded, instead of copying those contents into aclocal.m4, that instead you do:

m4_include([libtool.m4])
m4_include([ltoptions.m4])
m4_include([ltversion.m4])
m4_include([ltsugar.m4])
m4_include([lt~obsolete.m4])

| Well, Ralf seems to agree.  I'd like to hear from a few other
| maintainers before taking that plunge though. (For now, just don't
| install the "new" libtool2.2 package, and you'll be fine).

Please do that ASAP so that I can make the necessary changes in cygport.

Sure...just waiting for more input.


| So, "please remove the libtool1.5 dep from cygport. Full stop."

I don't see another choice for now, but if there becomes only one
libtool package, I would add it back.

I have modified cygport's setup.hint on sources.


--
Chuck

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]