solenv/bin/linkoo | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-)
New commits: commit f17c10545fabefd027b278798840706f2dbf4a04 Author: David Tardon <dtar...@redhat.com> Date: Mon Oct 24 13:52:57 2011 +0200 create links to gdb autoloaders in the right dir diff --git a/solenv/bin/linkoo b/solenv/bin/linkoo index 1c22cb0..c39237f 100755 --- a/solenv/bin/linkoo +++ b/solenv/bin/linkoo @@ -341,11 +341,34 @@ sub evilness($) } } +sub do_link_gdb_py($$$) +{ + my $srcdir = shift; + my $libdir = shift; + my $loader = shift; + + my $lib = $loader =~ s/-gdb.py$//r; + my $destdir = $libdir; + # Autoloader for a library is looked for in the same directory the library + # is (the library, not a symlink to it). Therefore it does not help to link + # it from solver into install, because there is only a symlink in install + # anyway. Instead, we must follow the link. + if (-l "$libdir/$lib") { + $destdir = readlink ("$libdir/$lib"); + $destdir =~ s@/[^/]*$@@; + } + + if ($destdir ne $srcdir) { + do_link ($srcdir, $destdir, $loader, $loader, 1); + } +} + sub link_gdb_py() { return if ($TARGET eq 'wntgcci.pro'); print "Special gdb.py helpers case: "; + my $dirh; my @basis; my @ure; @@ -365,10 +388,10 @@ sub link_gdb_py() print STDERR "Warning: missing helpful python debug helpers\n"; } else { for my $c (@basis) { - do_link ($src, "$OOO_INSTALL/program", $c, $c, 1); + do_link_gdb_py ($src, "$OOO_INSTALL/program", $c); } for my $c (@ure) { - do_link ($src, "$OOO_INSTALL/ure/lib", $c, $c, 1); + do_link_gdb_py ($src, "$OOO_INSTALL/ure/lib", $c); } } print "\n"; _______________________________________________ Libreoffice-commits mailing list Libreoffice-commits@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits