X-Recipient: archive-cygwin AT delorie DOT com X-Spam-Check-By: sourceware.org Message-ID: <47F94F88.6050705@cwilson.fastmail.fm> Date: Sun, 06 Apr 2008 18:32:40 -0400 From: Charles Wilson User-Agent: Thunderbird 2.0.0.12 (Windows/20080213) MIME-Version: 1.0 To: cygwin AT cygwin DOT com Subject: Attn: cygport maintainer [was: Re: Libtool 2.2.2] References: <47F6A816 DOT 2010208 AT alice DOT it> <47F73BA6 DOT 6000001 AT alice DOT it> <47F7E1D1 DOT 804DF919 AT dessent DOT net> In-Reply-To: <47F7E1D1.804DF919@dessent.net> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Brian Dessent wrote: > Angelo Graziosi wrote: > >> and if cygport depend on libtool1.5, how can the user who needs >> libtool2.2 install it without uninstalling libtool1.5+cygport+...? I think cygport should remove its requires: libtoolx.y from its setup.hint. It currently lists that because the default src_compile() implementation calls cygautoreconf() which itself checks the to-be-built packages' configure.[in|ac] and checks that various autotools are installed. It doesn't do anything special with regards to libtool, except: if WANT_AUTOCONF=2.1 if configure.[in|ac] contains "A[CM]_PROG_LIBTOOL" issue a warning that libtool1.5 is incompatible with autoconf-2.13 CYGPORT CODE CHANGE: Now, with libtool2.2, that test needs to also check for LT_INIT, as well as the older A[CM]_PROG_LIBTOOL macros. Furthermore, you can still use cygport even without libtoolx.y installed: write your own src_compile() method that doesn't call cygautoreconf "export LIBTOOL=no" before calling cygautoreconf (or "before" calling the default src_compile) So, really, libtoolx.y is not a requirement of *cygport*, per se, but is a build-depends of whatever you are trying to use cygport to build. > They would have to manually override the warning of setup in order to > install libtool2.2+cygport. > >> If one install libtool2.2 without removing anything, it overwrite >> libtool1.5, and I think this is a little confusing. And will break things, as the OP pointed out. > Yes, it's not great but it's the best we can do. Feel free to suggest > something less confusing, subject to the following constraints: > > - Both libtools can't exist on a system at once > - Setup cannot express a mutual exclusivity, nor can it cause any > package to be deselected > > The only thing I can think of is to wrap both libtool packages in a > postinstall wrapper Ugh. No, thanks. > In the short term it would probably make more sense to simply drop > libtool from the cygport 'requires:' and instead document somewhere that > you need one or the other installed. But you don't, really. See above. > Cygport could potentially drop > something in profile.d to do this check and alert the user if > something's wrong, however I dislike the idea of penalizing every > cygport user with yet another task at the start of every login shell. CYGPORT CODE CHANGE: No, instead cygport itself, inside cygautoreconf(), could perform that check. That is, if LIBTOOL != "no", and configure.[ac|in] contains LT_INIT|A[CM]_PROG_LIBTOOL, then if ! check_prog libtool1.5 && !check_prog libtool2.2 issue error message about missing libtool > It could also be possible for a cygport postinstall to check for libtool > and only if not found drop something in profile.d that displays a > warning. No need to mess with profile.d; cygport itself can do the check. That way, only cygport users, when actually using cygport, are "penalized" by checking for libtool presence. > Yet another option would be to fix setup to allow more complex > dependencies to be expressed, but that's even more complicated as a) > SHTDI and b) there's always going to be users not using the latest > setup.exe even months/years after a new version is released. Yep, to both. In any case, there is no need to wait for the various modifications to cygport. We can (and should) remove the libtool1.5 require: from cygport's setup.hint immediately. (Where "immediately" means "give Yaakov a decent interval to chime in on this thread...") -- 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/