[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[1.5.1 PATCHES] Things I would like to merge from HEAD to branch-1-5 for
From: |
Scott James Remnant |
Subject: |
[1.5.1 PATCHES] Things I would like to merge from HEAD to branch-1-5 for a libtool 1.5.1 release |
Date: |
Wed, 21 Jan 2004 22:28:34 +0000 |
All of these are basically "catching up" with the Debian package which
was kept in sync with branch-1-5 and got some things backported from
HEAD. Basically this is the list of patches I submitted to HEAD after
fixing them in Debian for something we needed fixed.
The complete list of attached patches follows, note that the first two
are actually new ones so should gain extra scrutiny. For various bad
reasons, I didn't manage to include the NEWS file in the diff, so the
suggested initial value of that for 1.5.1 is attached as news.txt.
All except the first two are already on CVS HEAD, is it okay to commit
to branch-1-5 too?
n1-libtoolize-echo-cd.patch
2004-01-?? Scott James Remnant <address@hidden>
* libtoolize.in: Fix libtoolize so the cd command run when
AC_CONFIG_AUX_DIR is used is shown when --dry-run is given.
(Debian Bug #153699)
n2-ltmain-exists.patch
2004-01-?? Scott James Remnant <address@hidden>
* libtool.m4 (AC_LIBTOOL_CONFIG): Don't attempt to
make ltmain.sh unless there's an ltmain.in to do it with.
01-precious-files.patch
2004-01-11 Scott James Remnant <address@hidden>
* ltmain.in: new -precious-files-regex link mode option
to prevent removal of matching files from the temporary
output directory.
(Debian Bug #221420)
* doc/libtool.texi: document the new option.
* NEWS: announce the new option.
02-mkdir-remove-p.patch
2004-01-03 Stefan Nordhausen <address@hidden>
Scott James Remnant <address@hidden>
* ltmain.in: Don't use the mkdir -p option when creating a
temporary output directory so a symlink attack can't be used to
arbitrarily chmod other directories on the system if libtool
gets run as root.
03-tagged-config-args.patch
2003-11-15 Scott James Remnant <address@hidden>
* ltmain.in: In compile mode, delay parsing of -shared, -static,
-prefer-pic and -prefer-non-pic until after tagged configuration
has been read. In link mode, read tagged configuration before
parsing any arguments. These arguments will now work when using
a non-C compiler.
04-pthread-deplibs.patch
2003-11-10 Scott James Remnant <address@hidden>
* ltmain.in: Add -pthread and similar to $deplibs ($compile_deplibs
and $finalize_deplibs for programs) when found on the command line
or in a .la file's dependency_libs (but don't place them there) so
they are honoured when linking both programs and libraries.
05-ld-so-conf.patch
2003-11-10 Scott James Remnant <address@hidden>
* m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [linux]: Include
directories found in /etc/ld.so.conf in sys_lib_dlsearch_path_spec.
06-hppa-test-non-pic.patch
2003-11-06 Scott James Remnant <address@hidden>
* tests/demo-nopic.test: Skip test on hppa, which don't like
non-PIC shared libraries.
07-libdir-order.patch
2003-11-01 Scott James Remnant <address@hidden>
* ltmain.in: When relinking, place the -L parameter containing
the installation prefix directory after the intended destination,
so we don't accidentally link against an older installed library.
08-readonly-symbol.patch
2003-11-06 Owen Taylor <address@hidden>
* m4/libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Recognise the
'R' symbol type so read-only symbols can be exported when combining
GCC and Solaris LD.
09-export-symbol.patch
2003-11-06 James Henstridge <address@hidden>,
Scott James Remnant <address@hidden>
* m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [Linux]: Fix the
-export-symbols and -export-symbols-regex options.
10-preserve-args.patch
2003-10-19 Kevin P. Fleming <address@hidden>
Charles Wilson <address@hidden>
* ltmain.in: include --tag options, if specified, in the
relink_command in uninstalled .la files. Also, preserve --silent,
--debug options when libtool re-execs itself.
* NEWS: Updated.
11-lt-dlerror-null.patch
2003-10-08 Scott James Remnant <address@hidden>
* libltdl/ltdl.c (lt_dlerror): change return value when
no error has occured to NULL to match documentation.
(Debian Bug #157229)
12-no-suppress.patch
2003-10-07 Gary V. Vaughan <address@hidden>
* ltmain.in: Don't suppress output of PIC mode compile if
-no-suppress option is given.
* doc/libtool.texi (Invoking libtool): Document it.
* NEWS: Updated.
13-dead-code-removal.patch
2003-10-07 Scott James Remnant <address@hidden>
* m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Remove dead code
for platforms that have been using pass_all for some time now.
14-quote-strip.patch
2003-09-13 Scott James Remnant <address@hidden>
* libtool.m4: allow STRIP to contain spaces and additional
arguments. (Debian Bug #183055)
15-ifs-newline.patch
2003-09-13 Scott James Remnant <address@hidden>
* ltmain.in: include newline in "sensible default" for IFS.
(Debian Bug #98492 and #95447)
Scott
--
Have you ever, ever felt like this?
Had strange things happen? Are you going round the twist?
diff -rup libtool-1.5/libtoolize.in libtool-1.5.1/libtoolize.in
--- libtool-1.5/libtoolize.in 2003-02-23 16:15:49.000000000 +0000
+++ libtool-1.5.1/libtoolize.in 2003-11-02 23:19:58.000000000 +0000
@@ -330,6 +330,7 @@ fi
# Change to the auxiliary directory.
if test "$auxdir" != .; then
test -z "$automake" && echo "Putting files in AC_CONFIG_AUX_DIR, \`$auxdir'."
+ test "x$dry_run" = x"yes" && echo "cd $auxdir"
cd $auxdir || exit 1
fi
diff -rup libtool-1.5/libtool.m4 libtool-1.5.1/libtool.m4
--- libtool-1.5/libtool.m4 2004-01-21 20:51:23.000000000 +0000
+++ libtool-1.5.1/libtool.m4 2004-01-09 14:55:35.000000000 +0000
@@ -4332,7 +4305,10 @@ else
# If there is no Makefile yet, we rely on a make rule to execute
# `config.status --recheck' to rerun these tests and create the
# libtool script then.
- test -f Makefile && make "$ltmain"
+ ltmain_in=`echo $ltmain | sed -e 's/\.sh$/.in/'`
+ if test -f "$ltmain_in"; then
+ test -f Makefile && make "$ltmain"
+ fi
fi
])# AC_LIBTOOL_CONFIG
diff -rup libtool-1.5/doc/libtool.texi libtool-1.5.1/doc/libtool.texi
--- libtool-1.5/doc/libtool.texi 2003-08-05 17:29:48.000000000 +0100
+++ libtool-1.5.1/doc/libtool.texi 2004-01-11 01:32:38.000000000 +0000
@@ -1270,6 +1276,11 @@ libraries (@pxref{Inter-library dependen
@item -o @var{output-file}
Create @var{output-file} from the specified objects and libraries.
address@hidden -precious-files-regex @var{regex}
+Prevents removal of files from the temporary output directory whose
+names match this regular expression. You might specify @samp{\.bbg?$}
+to keep those files created with @code{gcc -ftest-coverage} for example.
+
@item -release @var{release}
Specify that the library was generated by release @var{release} of your
package, so that users can easily tell which versions are newer than
diff -rup libtool-1.5/ltmain.in libtool-1.5.1/ltmain.in
--- libtool-1.5/ltmain.in 2003-07-31 21:46:40.000000000 +0100
+++ libtool-1.5.1/ltmain.in 2004-01-11 01:34:12.000000000 +0000
@@ -867,6 +890,7 @@ EOF
no_install=no
objs=
non_pic_objects=
+ precious_files_regex=
prefer_static_libs=no
preload=no
prev=
@@ -990,6 +1054,11 @@ EOF
prev=
continue
;;
+ precious_regex)
+ precious_files_regex="$arg"
+ prev=
+ continue
+ ;;
release)
release="-$arg"
prev=
@@ -1351,6 +1425,11 @@ EOF
-o) prev=output ;;
+ -precious-files-regex)
+ prev=precious_regex
+ continue
+ ;;
+
-release)
prev=release
continue
@@ -3048,6 +3095,10 @@ EOF
*.$objext)
;;
$output_objdir/$outputname | $output_objdir/$libname.* |
$output_objdir/${libname}${release}.*)
+ if echo $p | $EGREP -e "$precious_files_regex" >/dev/null 2>&1
+ then
+ continue
+ fi
removelist="$removelist $p"
;;
*) ;;
@@ -6245,6 +6296,8 @@ The following components of LINK-COMMAND
-no-undefined declare that a library does not refer to external symbols
-o OUTPUT-FILE create OUTPUT-FILE from the specified objects
-objectlist FILE Use a list of object files found in FILE to specify objects
+ -precious-files-regex REGEX
+ don't remove output files matching REGEX
-release RELEASE specify package release information
-rpath LIBDIR the created library will eventually be installed in LIBDIR
-R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries
diff -rup libtool-1.5/ltmain.in libtool-1.5.1/ltmain.in
--- libtool-1.5/ltmain.in 2003-07-31 21:46:40.000000000 +0100
+++ libtool-1.5.1/ltmain.in 2004-01-11 01:34:12.000000000 +0000
@@ -5601,7 +5652,7 @@ relink_command=\"$relink_command\""
tmpdir="/tmp"
test -n "$TMPDIR" && tmpdir="$TMPDIR"
tmpdir="$tmpdir/libtool-$$"
- if $mkdir -p "$tmpdir" && chmod 700 "$tmpdir"; then :
+ if $mkdir "$tmpdir" && chmod 700 "$tmpdir"; then :
else
$echo "$modename: error: cannot create temporary directory
\`$tmpdir'" 1>&2
continue
diff -rup libtool-1.5/ltmain.in libtool-1.5.1/ltmain.in
--- libtool-1.5/ltmain.in 2003-07-31 21:46:40.000000000 +0100
+++ libtool-1.5.1/ltmain.in 2004-01-11 01:34:12.000000000 +0000
@@ -373,6 +373,7 @@ if test -z "$show_help"; then
suppress_output=
arg_mode=normal
libobj=
+ later=
for arg
do
@@ -400,19 +407,9 @@ if test -z "$show_help"; then
continue
;;
- -static)
- build_old_libs=yes
- continue
- ;;
-
- -prefer-pic)
- pic_mode=yes
+ -static | -prefer-pic | -prefer-non-pic)
+ later="$later $arg"
continue
;;
- -prefer-non-pic)
- pic_mode=no
- continue
- ;;
-
-Xcompiler)
@@ -556,6 +558,25 @@ if test -z "$show_help"; then
esac
fi
+ for arg in $later; do
+ case $arg in
+ -static)
+ build_old_libs=yes
+ continue
+ ;;
+
+ -prefer-pic)
+ pic_mode=yes
+ continue
+ ;;
+
+ -prefer-non-pic)
+ pic_mode=no
+ continue
+ ;;
+ esac
+ done
+
objname=`$echo "X$obj" | $Xsed -e 's%^.*/%%'`
xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'`
if test "X$xdir" = "X$obj"; then
@@ -835,7 +858,7 @@ EOF
;;
esac
libtool_args="$nonopt"
- base_compile="$nonopt"
+ base_compile="$nonopt $@"
compile_command="$nonopt"
finalize_command="$nonopt"
@@ -880,6 +904,47 @@ EOF
vinfo=
vinfo_number=no
+ # Infer tagged configuration to use if any are available and
+ # if one wasn't chosen via the "--tag" command line option.
+ # Only attempt this if the compiler in the base link
+ # command doesn't match the default compiler.
+ if test -n "$available_tags" && test -z "$tagname"; then
+ case $base_compile in
+ # Blanks in the command may have been stripped by the calling shell,
+ # but not from the CC environment variable when configure was run.
+ "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*) ;;
+ # Blanks at the start of $base_compile will cause this to fail
+ # if we don't check for them as well.
+ *)
+ for z in $available_tags; do
+ if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null;
then
+ # Evaluate the configuration.
+ eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^#
### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`"
+ case $base_compile in
+ "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*)
+ # The compiler in $compile_command matches
+ # the one in the tagged configuration.
+ # Assume this is the tagged configuration we want.
+ tagname=$z
+ break
+ ;;
+ esac
+ fi
+ done
+ # If $tagname still isn't set, then no tagged configuration
+ # was found and let the user know that the "--tag" command
+ # line option must be used.
+ if test -z "$tagname"; then
+ $echo "$modename: unable to infer tagged configuration"
+ $echo "$modename: specify a tag with \`--tag'" 1>&2
+ exit 1
+# else
+# $echo "$modename: using $tagname tagged configuration"
+ fi
+ ;;
+ esac
+ fi
+
# We need to know -static, to get the right output filenames.
for arg
do
@@ -911,7 +976,6 @@ EOF
# Go through the arguments, transforming them on the way.
while test "$#" -gt 0; do
arg="$1"
- base_compile="$base_compile $arg"
shift
case $arg in
*[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
@@ -1619,47 +1698,6 @@ EOF
exit 1
fi
- # Infer tagged configuration to use if any are available and
- # if one wasn't chosen via the "--tag" command line option.
- # Only attempt this if the compiler in the base link
- # command doesn't match the default compiler.
- if test -n "$available_tags" && test -z "$tagname"; then
- case $base_compile in
- # Blanks in the command may have been stripped by the calling shell,
- # but not from the CC environment variable when configure was run.
- "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*) ;;
- # Blanks at the start of $base_compile will cause this to fail
- # if we don't check for them as well.
- *)
- for z in $available_tags; do
- if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$0" > /dev/null;
then
- # Evaluate the configuration.
- eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^#
### END LIBTOOL TAG CONFIG: '$z'$/p' < $0`"
- case $base_compile in
- "$CC "* | " $CC "* | "`$echo $CC` "* | " `$echo $CC` "*)
- # The compiler in $compile_command matches
- # the one in the tagged configuration.
- # Assume this is the tagged configuration we want.
- tagname=$z
- break
- ;;
- esac
- fi
- done
- # If $tagname still isn't set, then no tagged configuration
- # was found and let the user know that the "--tag" command
- # line option must be used.
- if test -z "$tagname"; then
- $echo "$modename: unable to infer tagged configuration"
- $echo "$modename: specify a tag with \`--tag'" 1>&2
- exit 1
-# else
-# $echo "$modename: using $tagname tagged configuration"
- fi
- ;;
- esac
- fi
-
if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec";
then
eval arg=\"$export_dynamic_flag_spec\"
compile_command="$compile_command $arg"
diff -rup libtool-1.5/ltmain.in libtool-1.5.1/ltmain.in
--- libtool-1.5/ltmain.in 2003-07-31 21:46:40.000000000 +0100
+++ libtool-1.5.1/ltmain.in 2004-01-11 01:34:12.000000000 +0000
@@ -1287,6 +1356,11 @@ EOF
continue
;;
+ -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe)
+ deplibs="$deplibs $arg"
+ continue
+ ;;
+
-module)
module=yes
continue
@@ -1802,6 +1840,15 @@ EOF
lib=
found=no
case $deplib in
+ -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe)
+ if test "$linkmode,$pass" = "prog,link"; then
+ compile_deplibs="$deplib $compile_deplibs"
+ finalize_deplibs="$deplib $finalize_deplibs"
+ else
+ deplibs="$deplib $deplibs"
+ fi
+ continue
+ ;;
-l*)
if test "$linkmode" != lib && test "$linkmode" != prog; then
$echo "$modename: warning: \`-l' is ignored for archives/objects"
1>&2
diff -rup libtool-1.5/libtool.m4 libtool-1.5.1/libtool.m4
--- libtool-1.5/libtool.m4 2004-01-21 20:51:23.000000000 +0000
+++ libtool-1.5.1/libtool.m4 2004-01-09 14:55:35.000000000 +0000
@@ -1448,6 +1449,12 @@ linux*)
# before this can be enabled.
hardcode_into_libs=yes
+ # Append ld.so.conf contents to the search path
+ if test -f /etc/ld.so.conf; then
+ ld_extra=`$SED -e 's/[:,\t]/ /g;s/=[^=]*$//;s/=[^= ]* / /g'
/etc/ld.so.conf`
+ sys_lib_dlsearch_path_spec="/lib /usr/lib $ld_extra"
+ fi
+
# We used to test for /lib/ld.so.1 and disable shared libraries on
# powerpc, because MkLinux only supported shared libraries with the
# GNU dynamic linker. Since this was broken with cross compilers,
diff -rup libtool-1.5/tests/demo-nopic.test libtool-1.5.1/tests/demo-nopic.test
--- libtool-1.5/tests/demo-nopic.test 2003-06-03 16:43:41.000000000 +0100
+++ libtool-1.5.1/tests/demo-nopic.test 2003-09-26 23:24:41.000000000 +0100
@@ -10,6 +10,14 @@ if test -z "$srcdir"; then
fi
. $srcdir/defs || exit 1
+# This doesn't work on hppa
+HOST=`../config.guess`
+case "$HOST" in
+hppa*)
+ echo "Not running on hppa, it doesn't like non-PIC shared libs" 2>&1
+ exit 77
+esac
+
# Maybe we have a VPATH build, in which case, create a new subdir.
test -d ../demo || mkdir ../demo
diff -rup libtool-1.5/ltmain.in libtool-1.5.1/ltmain.in
--- libtool-1.5/ltmain.in 2003-07-31 21:46:40.000000000 +0100
+++ libtool-1.5.1/ltmain.in 2004-01-11 01:34:12.000000000 +0000
@@ -2358,7 +2405,7 @@ EOF
if test -n "$inst_prefix_dir"; then
case "$libdir" in
[\\/]*)
- add_dir="-L$inst_prefix_dir$libdir $add_dir"
+ add_dir="$add_dir -L$inst_prefix_dir$libdir"
;;
esac
fi
@@ -2430,7 +2477,7 @@ EOF
if test -n "$inst_prefix_dir"; then
case "$libdir" in
[\\/]*)
- add_dir="-L$inst_prefix_dir$libdir $add_dir"
+ add_dir="$add_dir -L$inst_prefix_dir$libdir"
;;
esac
fi
diff -rup libtool-1.5/libtool.m4 libtool-1.5.1/libtool.m4
--- libtool-1.5/libtool.m4 2004-01-21 20:51:23.000000000 +0000
+++ libtool-1.5.1/libtool.m4 2004-01-09 14:55:35.000000000 +0000
@@ -4405,7 +4381,7 @@ osf*)
symcode='[[BCDEGQRST]]'
;;
solaris* | sysv5*)
- symcode='[[BDT]]'
+ symcode='[[BDRT]]'
;;
sysv4)
symcode='[[DFNSTU]]'
@@ -4423,7 +4399,7 @@ esac
# If we're using GNU nm, then use its standard symbol codes.
case `$NM -V 2>&1` in
*GNU* | *'with BFD'*)
- symcode='[[ABCDGISTW]]' ;;
+ symcode='[[ABCDGIRSTW]]' ;;
esac
# Try without a prefix undercore, then with it.
diff -rup libtool-1.5/libtool.m4 libtool-1.5.1/libtool.m4
--- libtool-1.5/libtool.m4 2004-01-21 20:51:23.000000000 +0000
+++ libtool-1.5.1/libtool.m4 2004-01-09 14:55:35.000000000 +0000
@@ -5192,6 +5168,31 @@ EOF
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
;;
+ linux*)
+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
+ tmp_archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags
${wl}-soname $wl$soname -o $lib'
+ _LT_AC_TAGVAR(archive_cmds, $1)="$tmp_archive_cmds"
+ supports_anon_versioning=no
+ case `$LD -v 2>/dev/null` in
+ *\ [01].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
+ *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
+ *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
+ *\ 2.11.*) ;; # other 2.11 versions
+ *) supports_anon_versioning=yes ;;
+ esac
+ if test $supports_anon_versioning = yes; then
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" >
$output_objdir/$libname.ver~
+cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
+$echo "local: *; };" >> $output_objdir/$libname.ver~
+ $CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname
${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+ else
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="$tmp_archive_cmds"
+ fi
+ else
+ _LT_AC_TAGVAR(ld_shlibs, $1)=no
+ fi
+ ;;
+
*)
if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs
$compiler_flags ${wl}-soname $wl$soname -o $lib'
diff -rup libtool-1.5/ltmain.in libtool-1.5.1/ltmain.in
--- libtool-1.5/ltmain.in 2003-07-31 21:46:40.000000000 +0100
+++ libtool-1.5.1/ltmain.in 2004-01-11 01:34:12.000000000 +0000
@@ -176,6 +177,7 @@ do
;;
tag)
tagname="$arg"
+ preserve_args="${preserve_args}=$arg"
# Check whether tagname contains only valid characters
case $tagname in
@@ -238,6 +240,7 @@ do
--debug)
$echo "$progname: enabling shell trace mode"
set -x
+ preserve_args="$preserve_args $arg"
;;
--dry-run | -n)
@@ -268,6 +271,7 @@ do
--quiet | --silent)
show=:
+ preserve_args="$preserve_args $arg"
;;
--tag) prevopt="--tag" prev=tag ;;
@@ -275,6 +279,7 @@ do
set tag "$optarg" ${1+"$@"}
shift
prev=tag
+ preserve_args="$preserve_args --tag"
;;
-dlopen)
@@ -5059,7 +5110,7 @@ fi\
fi
done
# Quote the link command for shipping.
- relink_command="(cd `pwd`; $SHELL $0 --mode=relink $libtool_args
@inst_prefix_dir@)"
+ relink_command="(cd `pwd`; $SHELL $0 $preserve_args --mode=relink
$libtool_args @inst_prefix_dir@)"
relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
if test "$hardcode_automatic" = yes ; then
relink_command=
@@ -5684,7 +5735,7 @@ relink_command=\"$relink_command\""
if test -n "$current_libdirs"; then
# Maybe just do a dry run.
test -n "$run" && current_libdirs=" -n$current_libdirs"
- exec_cmd='$SHELL $0 --finish$current_libdirs'
+ exec_cmd='$SHELL $0 $preserve_args --finish$current_libdirs'
else
exit 0
fi
diff -rup libtool-1.5/libltdl/ltdl.c libtool-1.5.1/libltdl/ltdl.c
--- libtool-1.5/libltdl/ltdl.c 2003-09-29 12:00:57.000000000 +0100
+++ libtool-1.5.1/libltdl/ltdl.c 2003-09-30 23:46:04.000000000 +0100
@@ -3926,7 +3926,7 @@ lt_dlerror ()
LT_DLMUTEX_GETERROR (error);
LT_DLMUTEX_SETERROR (0);
- return error ? error : LT_DLSTRERROR (UNKNOWN);
+ return error ? error : NULL;
}
static int
diff -rup libtool-1.5/doc/libtool.texi libtool-1.5.1/doc/libtool.texi
--- libtool-1.5/doc/libtool.texi 2003-08-05 17:29:48.000000000 +0100
+++ libtool-1.5.1/doc/libtool.texi 2004-01-11 01:32:38.000000000 +0000
@@ -1153,6 +1153,12 @@ linker flags with @samp{-Wl,@var{flag}}
You can also pass compile specific flags using @samp{-Wc,@var{flag}}
and @samp{-Xcompiler @var{flag}}.
+If both PIC and non-PIC objects are being built, libtool will normally
+supress the compiler output for the PIC object compilation to save
+showing very similar, if not identical duplicate output for each
+object. If the @samp{-no-suppress} option is given in compile mode,
+libtool will show the compiler output for both objects.
+
If the @samp{-static} option is given, then a @samp{.o} file is built,
even if libtool was configured with @samp{--disable-static}.
diff -rup libtool-1.5/ltmain.in libtool-1.5.1/ltmain.in
--- libtool-1.5/ltmain.in 2003-07-31 21:46:40.000000000 +0100
+++ libtool-1.5.1/ltmain.in 2004-01-11 01:34:12.000000000 +0000
@@ -374,6 +374,7 @@ if test -z "$show_help"; then
# Get the compilation command and the source file.
base_compile=
srcfile="$nonopt" # always keep a non-empty value in "srcfile"
+ suppress_opt=yes
suppress_output=
arg_mode=normal
libobj=
@@ -407,4 +407,9 @@ if test -z "$show_help"; then
continue
;;
+ -no-suppress)
+ suppress_opt=no
+ continue
+ ;;
+
-Xcompiler)
@@ -722,7 +743,9 @@ pic_object='$objdir/$objname'
EOF
# Allow error messages only from the first compilation.
- suppress_output=' >/dev/null 2>&1'
+ if test "$suppress_opt" = yes; then
+ suppress_output=' >/dev/null 2>&1'
+ fi
else
# No PIC object so indicate it doesn't exist in the libtool
# object file.
diff -rup libtool-1.5/libtool.m4 libtool-1.5.1/libtool.m4
--- libtool-1.5/libtool.m4 2004-01-21 20:51:23.000000000 +0000
+++ libtool-1.5.1/libtool.m4 2004-01-09 14:55:35.000000000 +0000
@@ -2131,17 +2138,6 @@ mingw* | pw32*)
;;
darwin* | rhapsody*)
- # this will be overwritten by pass_all, but leave it in just in case
- lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared
library'
- lt_cv_file_magic_cmd='/usr/bin/file -L'
- case "$host_os" in
- rhapsody* | darwin1.[[012]])
-
lt_cv_file_magic_test_file=`/System/Library/Frameworks/System.framework/System`
- ;;
- *) # Darwin 1.3 on
- lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib'
- ;;
- esac
lt_cv_deplibs_check_method=pass_all
;;
@@ -2184,23 +2180,12 @@ hpux10.20* | hpux11*)
;;
irix5* | irix6* | nonstopux*)
- case $host_os in
- irix5* | nonstopux*)
- # this will be overridden with pass_all, but let us keep it just in case
- lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS -
version 1"
- ;;
- *)
- case $LD in
- *-32|*"-32 ") libmagic=32-bit;;
- *-n32|*"-n32 ") libmagic=N32;;
- *-64|*"-64 ") libmagic=64-bit;;
- *) libmagic=never-match;;
- esac
- # this will be overridden with pass_all, but let us keep it just in case
- lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]]
dynamic lib MIPS - version 1"
- ;;
+ case $LD in
+ *-32|*"-32 ") libmagic=32-bit;;
+ *-n32|*"-n32 ") libmagic=N32;;
+ *-64|*"-64 ") libmagic=64-bit;;
+ *) libmagic=never-match;;
esac
- lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*`
lt_cv_deplibs_check_method=pass_all
;;
@@ -2247,9 +2223,6 @@ openbsd*)
;;
osf3* | osf4* | osf5*)
- # this will be overridden with pass_all, but let us keep it just in case
- lt_cv_deplibs_check_method='file_magic COFF format alpha shared library'
- lt_cv_file_magic_test_file=/shlib/libc.so
lt_cv_deplibs_check_method=pass_all
;;
@@ -2259,7 +2232,6 @@ sco3.2v5*)
solaris*)
lt_cv_deplibs_check_method=pass_all
- lt_cv_file_magic_test_file=/lib/libc.so
;;
sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
diff -rup libtool-1.5/libtool.m4 libtool-1.5.1/libtool.m4
--- libtool-1.5/libtool.m4 2004-01-21 20:51:23.000000000 +0000
+++ libtool-1.5.1/libtool.m4 2004-01-09 14:55:35.000000000 +0000
@@ -3876,7 +3848,8 @@ if test -f "$ltmain"; then
# Now quote all the things that may contain metacharacters while being
# careful not to overquote the AC_SUBSTed values. We take copies of the
# variables and quote the copies for generation of the libtool script.
- for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC NM SED
SHELL \
+ for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC NM \
+ SED SHELL STRIP \
libname_spec library_names_spec soname_spec extract_expsyms_cmds \
old_striplib striplib file_magic_cmd finish_cmds finish_eval \
deplibs_check_method reload_flag reload_cmds need_locks \
@@ -4057,7 +4030,7 @@ LN_S=$lt_LN_S
NM=$lt_NM
# A symbol stripping program
-STRIP=$STRIP
+STRIP=$lt_STRIP
# Used to examine libraries when file_magic_cmd begins "file"
MAGIC_CMD=$MAGIC_CMD
diff -rup libtool-1.5/ltmain.in libtool-1.5.1/ltmain.in
--- libtool-1.5/ltmain.in 2003-07-31 21:46:40.000000000 +0100
+++ libtool-1.5.1/ltmain.in 2004-01-11 01:34:12.000000000 +0000
@@ -94,7 +94,8 @@ if test "${LANG+set}" = set; then
fi
# Make sure IFS has a sensible default
-: ${IFS=" "}
+: ${IFS="
+"}
if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
$echo "$modename: not configured to build any kind of library" 1>&2
New in 1.5.1: 2000-01-??; CVS version 1.5.0a, Libtool team:
* lt_dlrealloc is an official part of the libltdl API.
* --tag, --silent and --debug options are preserved and reused when libtool
calls itself for relinking etc.
* `-pthread' and similar options are honoured when linking shared libraries.
* -no-suppress in compile mode shows compiler output for both PIC and non-PIC
object compilation.
* New link mode option `-precious-files-regex' to prevent accidental removal
of files you want to keep, such as test coverage data, from the temporary
output directory.
* Directories specified in /etc/ld.so.conf are no longer hardcoded on Linux.
* Recognises the 'R' symbol type on Solaris so read-only symbols can be
exported.
* Bug fixes.
signature.asc
Description: This is a digitally signed message part
- [1.5.1 PATCHES] Things I would like to merge from HEAD to branch-1-5 for a libtool 1.5.1 release,
Scott James Remnant <=