pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc libtool-base-1.5.18nb6:
details: https://anonhg.NetBSD.org/pkgsrc/rev/686fb1923507
branches: trunk
changeset: 502835:686fb1923507
user: tv <tv%pkgsrc.org@localhost>
date: Wed Nov 09 18:05:56 2005 +0000
description:
libtool-base-1.5.18nb6:
Fix major problem brought to the surface by buildlink3 on Interix. For C++
or F77 libraries only, the soname did not always make it into the final
binary, resulting in runtime link failures in some cases and runtime linking
with a missing major version in others.
This is unfortunately a flag day for Interix + pkgsrc. Identifying all the
PKGREVISIONs normally requiring a bump is a little too unwieldy. However,
existing binaries not experiencing the runtime link failure will continue
to run, but will be linking against the unversioned ".so" at runtime until
the binaries have been rebuilt.
While here, fix a couple wrong assumptions in the libtool config for
Interix. shlibvar_overrides_runpath should have been "no", and
hardcode_direct should have been "yes".
diffstat:
devel/libtool-base/Makefile | 4 +-
devel/libtool/distinfo | 6 +-
devel/libtool/patches/manual-libtool.m4 | 38 +++--
devel/libtool/patches/patch-ab | 182 +++++++++++++-----------
devel/libtool/patches/patch-ad | 228 +++++++++++++++++--------------
mk/platform/Interix.mk | 3 +-
6 files changed, 251 insertions(+), 210 deletions(-)
diffs (truncated from 1944 to 300 lines):
diff -r c4e18ef62f2f -r 686fb1923507 devel/libtool-base/Makefile
--- a/devel/libtool-base/Makefile Wed Nov 09 16:24:23 2005 +0000
+++ b/devel/libtool-base/Makefile Wed Nov 09 18:05:56 2005 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.72 2005/09/21 20:31:21 tv Exp $
+# $NetBSD: Makefile,v 1.73 2005/11/09 18:05:57 tv Exp $
###########################################################################
###########################################################################
@@ -26,7 +26,7 @@
.include "../../devel/libtool/Makefile.common"
PKGNAME= ${DISTNAME:S/-/-base-/}
-PKGREVISION= 5
+PKGREVISION= 6
SVR4_PKGNAME= ltoob
COMMENT= Generic shared library support script (the script itself)
diff -r c4e18ef62f2f -r 686fb1923507 devel/libtool/distinfo
--- a/devel/libtool/distinfo Wed Nov 09 16:24:23 2005 +0000
+++ b/devel/libtool/distinfo Wed Nov 09 18:05:56 2005 +0000
@@ -1,9 +1,9 @@
-$NetBSD: distinfo,v 1.63 2005/09/21 20:31:21 tv Exp $
+$NetBSD: distinfo,v 1.64 2005/11/09 18:05:56 tv Exp $
SHA1 (libtool-1.5.18.tar.gz) = 9eae4a25cf386f2dd3937f215368c9cc090009df
RMD160 (libtool-1.5.18.tar.gz) = facff15723bb89b0e260def31354fe437430bf3b
Size (libtool-1.5.18.tar.gz) = 2780846 bytes
SHA1 (patch-aa) = 36f589c09c492bc688bdfbb97f0d375cd04c008d
-SHA1 (patch-ab) = 60ab5ae3874fe13abfd089b0cf544f57517acc2b
+SHA1 (patch-ab) = 1905521a7823883d7628448befb679b6649b8b6c
SHA1 (patch-ac) = 61a5c1ace76beeeb64388726e6a0772e8f1828e0
-SHA1 (patch-ad) = 5cb326bd404762d15b053a99ea8cf041b087dc94
+SHA1 (patch-ad) = a8b1632162e27b74f936f499ae15cc33aef03817
diff -r c4e18ef62f2f -r 686fb1923507 devel/libtool/patches/manual-libtool.m4
--- a/devel/libtool/patches/manual-libtool.m4 Wed Nov 09 16:24:23 2005 +0000
+++ b/devel/libtool/patches/manual-libtool.m4 Wed Nov 09 18:05:56 2005 +0000
@@ -1,4 +1,4 @@
-$NetBSD: manual-libtool.m4,v 1.16 2005/07/03 19:42:14 tv Exp $
+$NetBSD: manual-libtool.m4,v 1.17 2005/11/09 18:05:56 tv Exp $
--- libtool.m4.orig 2005-05-15 09:41:23.000000000 -0400
+++ libtool.m4
@@ -59,7 +59,7 @@
+ soname_spec='${libname}${release}${shared_ext}$major'
+ dynamic_linker='Interix 3.x ld.so'
+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=yes
++ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+
@@ -171,7 +171,7 @@
_LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o
$lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
;;
*)
-@@ -3157,6 +3156,16 @@ case $host_os in
+@@ -3157,6 +3156,20 @@ case $host_os in
;;
esac
;;
@@ -182,13 +182,17 @@
+ # all libraries, leading to runtime relocations -- slow and very
+ # memory consuming. To do this, we pick a random 256KB-aligned
+ # start address between 0x50000000 and 0x6ffc0000 at link time.
-+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}--image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
++ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed s,^,_, $export_symbols >$output_objdir/$soname.exp && $CC -shared $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file
$wl$output_objdir/$soname.exp ${wl}--image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
++ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
++ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
++ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
++ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
irix5* | irix6*)
case $cc_basename in
CC*)
-@@ -3287,14 +3296,29 @@ case $host_os in
+@@ -3287,14 +3300,29 @@ case $host_os in
;;
netbsd*)
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
@@ -220,7 +224,7 @@
;;
openbsd2*)
# C++ shared libraries are fairly broken
-@@ -3734,6 +3758,21 @@ if AC_TRY_EVAL(ac_compile); then
+@@ -3734,6 +3762,21 @@ if AC_TRY_EVAL(ac_compile); then
esac
done
@@ -242,7 +246,7 @@
# Clean up.
rm -f a.out a.exe
else
-@@ -4698,9 +4737,11 @@ AC_MSG_CHECKING([for $compiler option to
+@@ -4698,9 +4741,11 @@ AC_MSG_CHECKING([for $compiler option to
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
;;
darwin* | rhapsody*)
@@ -255,7 +259,7 @@
;;
*djgpp*)
# DJGPP does not support shared libraries at all
-@@ -4722,6 +4763,10 @@ AC_MSG_CHECKING([for $compiler option to
+@@ -4722,6 +4767,10 @@ AC_MSG_CHECKING([for $compiler option to
;;
esac
;;
@@ -266,7 +270,7 @@
*)
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
;;
-@@ -4796,6 +4841,8 @@ AC_MSG_CHECKING([for $compiler option to
+@@ -4796,6 +4845,8 @@ AC_MSG_CHECKING([for $compiler option to
;;
esac
;;
@@ -275,7 +279,7 @@
irix5* | irix6* | nonstopux*)
case $cc_basename in
CC*)
-@@ -4967,9 +5014,11 @@ AC_MSG_CHECKING([for $compiler option to
+@@ -4967,9 +5018,11 @@ AC_MSG_CHECKING([for $compiler option to
;;
darwin* | rhapsody*)
@@ -288,7 +292,7 @@
;;
msdosdjgpp*)
-@@ -4998,6 +5047,11 @@ AC_MSG_CHECKING([for $compiler option to
+@@ -4998,6 +5051,11 @@ AC_MSG_CHECKING([for $compiler option to
esac
;;
@@ -300,7 +304,7 @@
*)
_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
;;
-@@ -5370,6 +5424,17 @@ EOF
+@@ -5370,6 +5428,21 @@ EOF
fi
;;
@@ -313,12 +317,16 @@
+ # start address between 0x50000000 and 0x6ffc0000 at link time.
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed s,^,_, $export_symbols >$output_objdir/$soname.exp && $CC -shared $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file
$wl$output_objdir/$soname.exp ${wl}--image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
++ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
++ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
++ _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
++ _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+ ;;
+
netbsd*)
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
-@@ -5633,7 +5698,7 @@ EOF
+@@ -5633,7 +5706,7 @@ EOF
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
_LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
# Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
@@ -327,7 +335,7 @@
_LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o
$lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
;;
*)
-@@ -5748,6 +5813,21 @@ EOF
+@@ -5748,6 +5821,21 @@ EOF
fi
;;
@@ -338,7 +346,7 @@
+ # all libraries, leading to runtime relocations -- slow and very
+ # memory consuming. To do this, we pick a random 256KB-aligned
+ # start address between 0x50000000 and 0x6ffc0000 at link time.
-+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}--image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
++ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed s,^,_, $export_symbols >$output_objdir/$soname.exp && $CC -shared $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file
$wl$output_objdir/$soname.exp ${wl}--image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
+ _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+ _LT_AC_TAGVAR(hardcode_direct, $1)=yes
diff -r c4e18ef62f2f -r 686fb1923507 devel/libtool/patches/patch-ab
--- a/devel/libtool/patches/patch-ab Wed Nov 09 16:24:23 2005 +0000
+++ b/devel/libtool/patches/patch-ab Wed Nov 09 18:05:56 2005 +0000
@@ -1,6 +1,6 @@
-$NetBSD: patch-ab,v 1.54 2005/07/03 19:42:14 tv Exp $
+$NetBSD: patch-ab,v 1.55 2005/11/09 18:05:56 tv Exp $
---- configure.orig 2005-07-03 15:36:30.000000000 -0400
+--- configure.orig 2005-11-09 12:32:46.000000000 -0500
+++ configure
@@ -322,11 +322,11 @@ else
@@ -244,7 +244,7 @@
*)
lt_prog_compiler_pic='-fPIC'
;;
-@@ -7435,6 +7455,17 @@ EOF
+@@ -7435,6 +7455,21 @@ EOF
fi
;;
@@ -257,12 +257,16 @@
+ # start address between 0x50000000 and 0x6ffc0000 at link time.
+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
+ archive_expsym_cmds='sed s,^,_, $export_symbols >$output_objdir/$soname.exp && $CC -shared $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file
$wl$output_objdir/$soname.exp ${wl}--image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
++ export_dynamic_flag_spec='${wl}-E'
++ hardcode_direct=yes
++ hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
++ hardcode_shlibpath_var=no
+ ;;
+
netbsd*)
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
-@@ -7622,7 +7653,8 @@ if { (eval echo "$as_me:$LINENO: \"$ac_l
+@@ -7622,7 +7657,8 @@ if { (eval echo "$as_me:$LINENO: \"$ac_l
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
@@ -272,7 +276,7 @@
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
-@@ -7682,7 +7714,8 @@ if { (eval echo "$as_me:$LINENO: \"$ac_l
+@@ -7682,7 +7718,8 @@ if { (eval echo "$as_me:$LINENO: \"$ac_l
cat conftest.err >&5
echo "$as_me:$LINENO: \$? = $ac_status" >&5
(exit $ac_status); } &&
@@ -282,7 +286,7 @@
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
(eval $ac_try) 2>&5
ac_status=$?
-@@ -7798,7 +7831,7 @@ if test -z "$aix_libpath"; then aix_libp
+@@ -7798,7 +7835,7 @@ if test -z "$aix_libpath"; then aix_libp
archive_cmds='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
# Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin ld's
@@ -291,7 +295,7 @@
module_expsym_cmds='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs
$deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
;;
*)
-@@ -7913,6 +7946,21 @@ if test -z "$aix_libpath"; then aix_libp
+@@ -7913,6 +7950,21 @@ if test -z "$aix_libpath"; then aix_libp
fi
;;
@@ -302,7 +306,7 @@
+ # all libraries, leading to runtime relocations -- slow and very
+ # memory consuming. To do this, we pick a random 256KB-aligned
+ # start address between 0x50000000 and 0x6ffc0000 at link time.
-+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}--image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
++ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
+ archive_expsym_cmds='sed s,^,_, $export_symbols >$output_objdir/$soname.exp && $CC -shared $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file
$wl$output_objdir/$soname.exp ${wl}--image-base,$(($RANDOM %4096/2*262144+1342177280)) -o $lib'
+ export_dynamic_flag_spec='${wl}-E'
+ hardcode_direct=yes
@@ -313,7 +317,7 @@
irix5* | irix6* | nonstopux*)
if test "$GCC" = yes; then
archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry
${wl}${output_objdir}/so_locations -o $lib'
-@@ -8316,6 +8364,7 @@ beos*)
+@@ -8316,6 +8368,7 @@ beos*)
bsdi[45]*)
version_type=linux
need_version=no
@@ -321,7 +325,7 @@
library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
soname_spec='${libname}${release}${shared_ext}$major'
finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
-@@ -8433,15 +8482,16 @@ freebsd* | dragonfly*)
+@@ -8433,15 +8486,16 @@ freebsd* | dragonfly*)
# DragonFly does not have aout. When/if they implement a new
# versioning mechanism, adjust this.
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
@@ -344,7 +348,7 @@
need_version=yes
;;
esac
-@@ -8517,15 +8567,22 @@ hpux9* | hpux10* | hpux11*)
+@@ -8517,15 +8571,22 @@ hpux9* | hpux10* | hpux11*)
postinstall_cmds='chmod 555 $lib'
;;
@@ -356,7 +360,7 @@
+ soname_spec='${libname}${release}${shared_ext}$major'
+ dynamic_linker='Interix 3.x ld.so'
+ shlibpath_var=LD_LIBRARY_PATH
-+ shlibpath_overrides_runpath=yes
++ shlibpath_overrides_runpath=no
+ hardcode_into_libs=yes
+ ;;
+
@@ -373,7 +377,7 @@
esac
need_lib_prefix=no
need_version=no
-@@ -8602,11 +8659,11 @@ knetbsd*-gnu)
+@@ -8602,11 +8663,11 @@ knetbsd*-gnu)
;;
netbsd*)
Home |
Main Index |
Thread Index |
Old Index