libtool
[Top][All Lists]
Advanced

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

Re: Trailing slash in directory spec confuses libtool


From: Richard Purdie
Subject: Re: Trailing slash in directory spec confuses libtool
Date: Fri, 12 Aug 2016 23:06:26 +0100

On Fri, 2016-08-12 at 22:06 +0200, Jan Engelhardt wrote:
> Given certain circumstances, libtool 2.4.2 fails to install a
> library. 
> (a) The target directory spec contains a trailing slash
> (b) The library to install is linking to another just-built one in a 
> different path.

FWIW we have this patch:

http://git.yoctoproject.org/cgit.cgi/poky/tree/meta/recipes-devtools/libtool/libtool/trailingslash.patch

which seems to help. We've never been able to clean it up enough to
submit upstream or have a reliable test case for it though :(

Cheers,

Richard

[patch follows below]

A command like /bin/sh ../../i586-poky-linux-libtool   --mode=install 
/usr/bin/install -c   gck-roots-store-standalone.la 
'/media/data1/builds/poky1/tmp/work/core2-poky-linux/gnome-keyring-2.26.1-r1/image/usr/lib/gnome-keyring/standalone/'
 fails (e.g. gnome-keyring or pulseaudio)

This is because libdir has a trailing slash which breaks the comparison.

RP 2/1/10

Merged a patch received from Gary Thomas <address@hidden>

Date: 2010/07/12
Nitin A Kamble <address@hidden>

Updated by: Robert Yang <address@hidden>

diff --git a/build-aux/ltmain.in b/build-aux/ltmain.in
--- a/build-aux/ltmain.in
+++ b/build-aux/ltmain.in
@@ -2356,8 +2356,15 @@ func_mode_install ()
        func_append dir "$objdir"
 
        if test -n "$relink_command"; then
+      # Strip any trailing slash from the destination.
+      func_stripname '' '/' "$libdir"
+      destlibdir=$func_stripname_result
+
+      func_stripname '' '/' "$destdir"
+      s_destdir=$func_stripname_result
+
          # Determine the prefix the user has applied to our future dir.
-         inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"`
+         inst_prefix_dir=`$ECHO "X$s_destdir" | $Xsed -e "s%$destlibdir\$%%"`
 
          # Don't allow the user to place us outside of our expected
          # location b/c this prevents finding dependent libraries that



reply via email to

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