[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
FYI: Bug: With --disable-static, when libtool falls back to producing a
From: |
Ralf Wildenhues |
Subject: |
FYI: Bug: With --disable-static, when libtool falls back to producing a static archive due to undefined symbols, it produces an empty archive. |
Date: |
Thu, 24 Nov 2005 16:23:03 +0100 |
User-agent: |
Mutt/1.5.11 |
Hi Max,
* Max Bowsher wrote on Thu, Nov 24, 2005 at 01:23:41PM CET:
>
> With --disable-static, when libtool falls back to producing a static
> archive due to undefined symbols, it produces an empty archive.
Thank you for the bug report. I have applied the following, very
similar backport from HEAD instead, to branch-1-5.
Cheers,
Ralf
2005-11-24 David Edelsohn <address@hidden>
* ltmain.in (link mode): Use $pic_object as $non_pic_object if
$non_pic_object=none.
* NEWS: Updated.
Missing backport from HEAD 2004-09-03 noted
by Max Bowsher <address@hidden>.
Index: NEWS
===================================================================
RCS file: /cvsroot/libtool/libtool/NEWS,v
retrieving revision 1.109.2.38
diff -u -r1.109.2.38 NEWS
--- NEWS 20 Nov 2005 08:46:48 -0000 1.109.2.38
+++ NEWS 24 Nov 2005 15:20:35 -0000
@@ -5,6 +5,9 @@
link statically against installed libtool libraries, contrary to
documented (and actual 1.4.x) behavior.
* Support for Interix 3 (Windows SFU).
+* If non-pic objects were not compiled, and libtool is called in link mode,
+ libtool no longer silently creates an empty archive, but rather falls
+ back to pic objects.
* Bug Fixes.
New in 1.5.20: 2005-08-31; CVS version 1.5.19a, Libtool team:
Index: ltmain.in
===================================================================
RCS file: /cvsroot/libtool/libtool/Attic/ltmain.in,v
retrieving revision 1.334.2.97
diff -u -r1.334.2.97 ltmain.in
--- ltmain.in 20 Nov 2005 14:09:00 -0000 1.334.2.97
+++ ltmain.in 24 Nov 2005 15:17:52 -0000
@@ -1271,6 +1271,11 @@
if test -z "$pic_object" || test "$pic_object" = none ; then
arg="$non_pic_object"
fi
+ else
+ # If the PIC object exists, use it instead.
+ # $xdir was prepended to $pic_object above.
+ non_pic_object="$pic_object"
+ non_pic_objects="$non_pic_objects $non_pic_object"
fi
else
# Only an error if not doing a dry-run.
@@ -1799,6 +1804,11 @@
if test -z "$pic_object" || test "$pic_object" = none ; then
arg="$non_pic_object"
fi
+ else
+ # If the PIC object exists, use it instead.
+ # $xdir was prepended to $pic_object above.
+ non_pic_object="$pic_object"
+ non_pic_objects="$non_pic_objects $non_pic_object"
fi
else
# Only an error if not doing a dry-run.