Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm 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 Message-ID: <4183F264.7070807@cwilson.fastmail.fm> Date: Sat, 30 Oct 2004 15:58:28 -0400 From: Charles Wilson User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040616 MultiZilla/1.6.4.0b MIME-Version: 1.0 To: Libtool Patches Cc: cygwin AT cygwin DOT com Subject: 11-csw-cygwin-wrapper-with-no-deplibs.patch Content-Type: multipart/mixed; boundary="------------090603030501050907040008" --------------090603030501050907040008 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sometimes, a wrapper script is generated for an executable that, itself, does not link against an uninstalled library. It appears that this can happen if you are building a project where (1) there is a library (2) there is an executable that does not, itself, link against that library In this case, notinst_deplibs is empty, and when the wrapper script is loaded by libtool during ./libtool mode=install, there is a check for "is notinst_deplibs empty". In this case, it is, so libtool reports an error. I don't think it is wrong to have a wrapper script for an exe that *technically* doesn't need it. But instead of checking for notinst_deplib nonempty as a proxy for "did wrapper script get sourced into my environment properly" a different var should be used. For more info, see http://www.cygwin.com/ml/cygwin/2004-10/msg01321.html and http://www.cygwin.com/ml/cygwin/2004-10/msg01347.html Attached patch (by Peter Ekberg) has no regressions on cygwin. -- Chuck --------------090603030501050907040008 Content-Type: text/plain; name="11-csw-cygwin-wrapper-with-no-deplibs.changelog" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="11-csw-cygwin-wrapper-with-no-deplibs.changelog" 2004-10-30 Peter Ekberg * config/ltmain.m4sh (func_mode_install): set new variable 'generated_by_libtool_version' in wrapper script when libtool_install_magic. When verifying that wrapper script was properly sourced, check that generated_by_libtool_version is nonempty, instead of notinst_deplibs. --------------090603030501050907040008 Content-Type: text/plain; name="11-csw-cygwin-wrapper-with-no-deplibs.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="11-csw-cygwin-wrapper-with-no-deplibs.patch" Index: config/ltmain.m4sh =================================================================== RCS file: /cvsroot/libtool/libtool/config/ltmain.m4sh,v retrieving revision 1.1.2.12 diff -u -r1.1.2.12 ltmain.m4sh --- config/ltmain.m4sh 20 Oct 2004 08:41:34 -0000 1.1.2.12 +++ config/ltmain.m4sh 30 Oct 2004 18:35:50 -0000 @@ -1957,7 +1967,7 @@ esac # Check the variables that should have been set. - test -z "$notinst_deplibs" && \ + test -z "$generated_by_libtool_version" && \ func_fatal_error "invalid libtool wrapper script \`$wrapper'" finalize=yes @@ -5993,7 +6004,8 @@ # This environment variable determines our operation mode. if test \"\$libtool_install_magic\" = \"$magic\"; then - # install mode needs the following variable: + # install mode needs the following variables: + generated_by_libtool_version='$macro_version' notinst_deplibs='$notinst_deplibs' else # When we are sourced in execute mode, \$file and \$ECHO are already set. --------------090603030501050907040008 Content-Type: text/plain; charset=us-ascii -- 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/ --------------090603030501050907040008--