On 09/08/2009 01:53, Yaakov (Cygwin/X) wrote:
I'm not sure how you did it, so I just made the attached patch to do
just that. It's a bit of a hack but I don't think it's so horrible.
Chuck, what do you think?

Oops, forgot something, try this patch instead.


Yaakov
2009-08-09  Yaakov Selkowitz  <yselkow...@users.sourceforge.net>

        * libltdl/config/ltmain.m4sh (func_mode_link) [cygwin*]:
        If a shared library is installed into a subdirectory of $prefix/lib,
        install the DLL into $prefix/bin so that it will be in $PATH.

--- origsrc/libtool-2.2.7a/libltdl/config/ltmain.m4sh   2009-08-08 
23:47:33.051542300 -0500
+++ src/libtool-2.2.7a/libltdl/config/ltmain.m4sh       2009-08-09 
01:39:35.688299700 -0500
@@ -7741,7 +7741,21 @@ EOF
          # place dlname in correct position for cygwin
          tdlname=$dlname
          case $host,$output,$installed,$module,$dlname in
-           *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | 
*cegcc*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
+           *cygwin*,*lai,yes,no,*.dll)
+          tdlname=../bin/$dlname
+          case "$install_libdir" in
+            */lib/*)
+              tlibdir="$install_libdir"
+              while :; do
+                func_dirname_and_basename "$tlibdir"
+                test "$func_basename_result" = "lib" && break
+                tlibdir="$func_dirname_result"
+                tdlname=../$tdlname
+              done
+            ;;
+          esac
+        ;;
+           *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) 
tdlname=../bin/$dlname ;;
          esac
          $ECHO > $output "\
 # $outputname - a libtool library file

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

Reply via email to