summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Packages.txt32
-rw-r--r--devel/libtool-base/Makefile6
-rw-r--r--devel/libtool-base/pkg/PLIST10
-rw-r--r--devel/libtool-info/Makefile5
-rw-r--r--devel/libtool/Makefile10
-rw-r--r--devel/libtool/Makefile.common12
-rw-r--r--devel/libtool/files/md54
-rw-r--r--devel/libtool/files/patch-sum13
-rw-r--r--devel/libtool/patches/patch-aa118
-rw-r--r--devel/libtool/patches/patch-ab108
-rw-r--r--devel/libtool/patches/patch-ac8
-rw-r--r--devel/libtool/patches/patch-ad7
-rw-r--r--devel/libtool/patches/patch-ae13
-rw-r--r--devel/libtool/patches/patch-af22
-rw-r--r--devel/libtool/patches/patch-ag54
-rw-r--r--mk/bsd.pkg.mk10
16 files changed, 194 insertions, 238 deletions
diff --git a/Packages.txt b/Packages.txt
index b4032147a02..d6e85ddae8c 100644
--- a/Packages.txt
+++ b/Packages.txt
@@ -1,4 +1,4 @@
-# $NetBSD: Packages.txt,v 1.141 2001/02/17 15:09:51 skrll Exp $
+# $NetBSD: Packages.txt,v 1.142 2001/02/27 08:20:23 skrll Exp $
###########################################################################
==========================
@@ -874,11 +874,15 @@ Here's how to use libtool in a pkg in seven simple steps:
objects are changed to have a .lo extension. Change OBJS as necessary.
This automatically creates all of the .a, .so.major.minor, and ELF
symlinks (if necessary) in the build directory. Be sure to include
- the -version-info esp. when major and minor are zero, as libtool will
- strip off the shared library version else. Also, any "-release" should
- be removed, as it removes the version info as well.
+ the -version-info especially when major and minor are zero, as libtool
+ will otherwise strip off the shared library version.
- PLIST gets all of the .a, .la and so, .so.major and .so.major.minor
+ The "-release" option has been disabled in the pkgsrc version of libtool
+ as it creates unnecessary differences between ELF and a.out platforms.
+
+ The -rpath argument is the install directory of the library being built.
+
+ PLIST should include all of the .a, .la and so, .so.major and .so.major.minor
entries.
4. When linking shared object (.so) files, i.e. files that are loaded via
@@ -929,6 +933,24 @@ The pkg's own libtool is made by ltconfig script at do-configure target.
If USE_LIBTOOL and LTCONFIG_OVERRIDE are defined, the specified ltconfig is
overridden, using the devel/libtool instead of the pkg's own libtool.
+If your package makes use of the platform independant method of loading
+dynamic shared objects libltdl then you should add USE_LTDL= yes to the
+Makefile.
+
+Some packages use libtool incorrectly so that the package may work or build
+on NetBSD. Some common errors are
+
+ * The inclusion of a shared object (-module) as a dependent library in an
+ executable or library. This in itself isn't a problem if one of two things
+ has been done.
+
+ 1. The shared object is named correctly, i.e. libfoo.la and not foo.la
+
+ 2. The -dlopen option is used when linking an executable.
+
+ * The use of libltdl without the correct calls to initialisation routines.
+ The function lt_dlinit() should be called and the macro
+ LTDL_SET_PRELOADED_SYMBOLS included in executables.
6.4 Gotchas of FreeBSD ports
============================
diff --git a/devel/libtool-base/Makefile b/devel/libtool-base/Makefile
index 1a5fa7caa71..dc11bbacb44 100644
--- a/devel/libtool-base/Makefile
+++ b/devel/libtool-base/Makefile
@@ -1,9 +1,9 @@
-# $NetBSD: Makefile,v 1.3 2001/02/19 17:20:14 hubertf Exp $
+# $NetBSD: Makefile,v 1.4 2001/02/27 08:20:26 skrll Exp $
#
.include "../libtool/Makefile.common"
-PKGNAME= ${DISTNAME:C/-/-base-/}${PKGREV}
+PKGNAME= ${PKGPFX:C/-/-base-/}${PKGREV}
COMMENT= Generic shared library support script (the script itself)
@@ -28,3 +28,5 @@ CONFIGURE_ARGS= --enable-ltdl-install
.endif
.include "../../mk/bsd.pkg.mk"
+
+LDFLAGS= # Blank
diff --git a/devel/libtool-base/pkg/PLIST b/devel/libtool-base/pkg/PLIST
index 5941dc06fc0..f3b92057e60 100644
--- a/devel/libtool-base/pkg/PLIST
+++ b/devel/libtool-base/pkg/PLIST
@@ -1,13 +1,14 @@
-@comment $NetBSD: PLIST,v 1.1.1.1 2001/02/03 05:26:03 hubertf Exp $
+@comment $NetBSD: PLIST,v 1.2 2001/02/27 08:20:26 skrll Exp $
bin/libtool
bin/libtoolize
include/ltdl.h
lib/libltdl.a
lib/libltdl.la
lib/libltdl.so
-lib/libltdl.so.1
-lib/libltdl.so.1.2
+lib/libltdl.so.3
+lib/libltdl.so.3.0
share/aclocal/libtool.m4
+share/aclocal/ltdl.m4
share/libtool/config.guess
share/libtool/config.sub
share/libtool/libltdl/COPYING.LIB
@@ -23,6 +24,9 @@ share/libtool/libltdl/configure.in
share/libtool/libltdl/ltdl.c
share/libtool/libltdl/ltdl.h
share/libtool/libltdl/stamp-h.in
+share/libtool/ltcf-c.sh
+share/libtool/ltcf-cxx.sh
+share/libtool/ltcf-gcj.sh
share/libtool/ltconfig
share/libtool/ltmain.sh
@dirrm share/libtool/libltdl
diff --git a/devel/libtool-info/Makefile b/devel/libtool-info/Makefile
index d6825f6f623..e6812be8611 100644
--- a/devel/libtool-info/Makefile
+++ b/devel/libtool-info/Makefile
@@ -1,9 +1,9 @@
-# $NetBSD: Makefile,v 1.3 2001/02/19 17:20:14 hubertf Exp $
+# $NetBSD: Makefile,v 1.4 2001/02/27 08:20:26 skrll Exp $
#
.include "../libtool/Makefile.common"
-PKGNAME= ${DISTNAME:C/-/-info-/}${PKGREV}
+PKGNAME= ${PKGPFX:C/-/-info-/}${PKGREV}
COMMENT= Generic shared library support script - info pages
@@ -17,6 +17,7 @@ USE_GTEXINFO= yes
# error. Simply making sure the info-files get re-done works here.
post-extract:
${RM} -f ${WRKSRC}/doc/libtool.info*
+ ${CP} ${FILESDIR}/fdl.texi ${WRKSRC}/doc
do-build:
cd ${WRKSRC}/doc ; ${MAKE_PROGRAM}
diff --git a/devel/libtool/Makefile b/devel/libtool/Makefile
index 93b9937cec8..21be7ea9c93 100644
--- a/devel/libtool/Makefile
+++ b/devel/libtool/Makefile
@@ -1,15 +1,15 @@
-# $NetBSD: Makefile,v 1.32 2001/02/16 14:38:40 wiz Exp $
+# $NetBSD: Makefile,v 1.33 2001/02/27 08:20:24 skrll Exp $
#
DISTFILES= # empty
.include "Makefile.common"
-PKGNAME= ${DISTNAME}${PKGREV}
+PKGNAME= ${PKGPFX}${PKGREV}
-COMMENT= Generic shared library support script
+DEPENDS+= ${PKGPFX:C/-/-base-/}${PKGREV}:../libtool-base
+DEPENDS+= ${PKGPFX:C/-/-info-/}${PKGREV}:../libtool-info
-DEPENDS+= ${DISTNAME:C/-/-base-/}${PKGREV}:../libtool-base
-DEPENDS+= ${DISTNAME:C/-/-info-/}${PKGREV}:../libtool-info
+COMMENT= Generic shared library support script
NO_CONFIGURE= yes
NO_PATCH= yes
diff --git a/devel/libtool/Makefile.common b/devel/libtool/Makefile.common
index f1a3d79d50b..a0ae8da4435 100644
--- a/devel/libtool/Makefile.common
+++ b/devel/libtool/Makefile.common
@@ -1,12 +1,14 @@
-# $NetBSD: Makefile.common,v 1.1 2001/02/03 05:34:58 hubertf Exp $
+# $NetBSD: Makefile.common,v 1.2 2001/02/27 08:20:24 skrll Exp $
#
-DISTNAME= libtool-1.3.5
-PKGREV= nb11
+DISTNAME= libtool-ml-20010219
+PKGPFX= ${DISTNAME:C/ml-/1.4./}
+PKGREV= nb1
+WRKSRC= ${WRKDIR}/libtool-ml
CATEGORIES= devel pkgtools
-MASTER_SITES= ${MASTER_SITE_GNU:=libtool/}
+MASTER_SITES= ftp://ftp.ffii.org/pub/libtool/snap/
-MAINTAINER= tv@netbsd.org
+MAINTAINER= packages@netbsd.org
HOMEPAGE= http://www.gnu.org/software/libtool/libtool.html
CONFLICTS= glibtool-*
diff --git a/devel/libtool/files/md5 b/devel/libtool/files/md5
index 38d2a8f3790..89010f1975b 100644
--- a/devel/libtool/files/md5
+++ b/devel/libtool/files/md5
@@ -1,3 +1,3 @@
-$NetBSD: md5,v 1.5 2000/05/31 17:25:55 rh Exp $
+$NetBSD: md5,v 1.6 2001/02/27 08:20:25 skrll Exp $
-MD5 (libtool-1.3.5.tar.gz) = fa26a07c978ad05d1f88ed7a472daa49
+MD5 (libtool-ml-20010219.tar.gz) = 6ace0f37e10a09ad837b3455fadab836
diff --git a/devel/libtool/files/patch-sum b/devel/libtool/files/patch-sum
index a50eca0137b..12a1d11453a 100644
--- a/devel/libtool/files/patch-sum
+++ b/devel/libtool/files/patch-sum
@@ -1,6 +1,9 @@
-$NetBSD: patch-sum,v 1.25 2001/02/11 10:12:04 skrll Exp $
+$NetBSD: patch-sum,v 1.26 2001/02/27 08:20:25 skrll Exp $
-MD5 (patch-aa) = 9d0fe34136ac2f00b71e535049e7ef17
-MD5 (patch-ab) = a20254fd1309b8a4ba0efd4c4ec2221a
-MD5 (patch-ac) = 731e90f373105f60e7b416efd103a52e
-MD5 (patch-ad) = 2ecdc83071188547039793cf7d84cca6
+MD5 (patch-aa) = fb45156202da4751206e36dd0be5dabc
+MD5 (patch-ab) = 23d3086aade5736009530a98014fff59
+MD5 (patch-ac) = a5da475693a57e16bd8462793f87639e
+MD5 (patch-ad) = f715e7126f5dd7fdece8d61045c74100
+MD5 (patch-ae) = 70312d73e1108c7f97ecf56db2e87ad8
+MD5 (patch-af) = cee79627cf58e02ceb2ea483fd3c044c
+MD5 (patch-ag) = abc7ae8960f4b1019a3278fb27d8be23
diff --git a/devel/libtool/patches/patch-aa b/devel/libtool/patches/patch-aa
index c73d8c2a9b9..533ec946638 100644
--- a/devel/libtool/patches/patch-aa
+++ b/devel/libtool/patches/patch-aa
@@ -1,123 +1,13 @@
-$NetBSD: patch-aa,v 1.21 2001/01/15 15:18:24 jlam Exp $
+$NetBSD: patch-aa,v 1.22 2001/02/27 08:20:25 skrll Exp $
---- ltconfig.in.orig Fri May 26 21:58:57 2000
+--- ltconfig.in.orig Sat Feb 3 05:05:03 2001
+++ ltconfig.in
-@@ -1095,6 +1095,13 @@
- # the symbol is explicitly referenced. Since portable code cannot
- # rely on this symbol name, it's probably fine to never include it in
- # preloaded symbol tables.
-+cpprt0=
-+# C++ startup code.
-+cppopts=
-+# option to archive_cmds that causes cpprt0 to be linked in
-+ctor_check_cmd='$NM $libobjs $convenience | grep '\''___[CD]TOR_LIST__'\'' >/dev/null 2>&1'
-+
-+
-
- case "$host_os" in
- cygwin* | mingw*)
-@@ -1194,11 +1201,17 @@
-
- netbsd*)
- if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
-- archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib'
-- archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-+ archive_cmds='$LD -Bshareable -o $lib $cppopts $libobjs $deplibs $linkopts'
-+ wlarc=
-+ # Add in C++ constructor/destructor support
-+ if test -f ${PREFIX}/lib/c++rt0/c++rt0.o.PIC; then
-+ cpprt0="${PREFIX}/lib/c++rt0/c++rt0.o.PIC"
-+ elif test -f /usr/lib/c++rt0.o; then
-+ cpprt0="/usr/lib/c++rt0.o"
-+ fi
- else
-- archive_cmds='$LD -Bshareable $libobjs $deplibs $linkopts -o $lib'
-- # can we support soname and/or expsyms with a.out? -oliva
-+ archive_cmds='$CC -shared $libobjs $wllinkopts $deplibs ${wl}-soname $wl$soname -o $lib'
-+ archive_expsym_cmds='$CC -shared $libobjs $wllinkopts $deplibs ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
- fi
- ;;
-
-@@ -1392,11 +1405,19 @@
-
- netbsd*)
- if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
-- archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts' # a.out
-+ archive_cmds='$LD -Bshareable -o $lib $cppopts $libobjs $deplibs $linkopts'
-+ # Add in C++ constructor/destructor support
-+ if test -f ${PREFIX}/lib/c++rt0/c++rt0.o.PIC; then
-+ cpprt0="${PREFIX}/lib/c++rt0/c++rt0.o.PIC"
-+ elif test -f /usr/lib/c++rt0.o; then
-+ cpprt0="/usr/lib/c++rt0.o"
-+ fi
- else
-+ # I don't think there are any ELF toolchains with non-gnu ld.
-+ # I'm not touching this just in case!
- archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linkopts' # ELF
- fi
-- hardcode_libdir_flag_spec='${wl}-R$libdir'
-+ hardcode_libdir_flag_spec='-R$libdir'
- hardcode_direct=yes
- hardcode_shlibpath_var=no
- ;;
-@@ -2007,14 +2028,23 @@
+@@ -1120,6 +1120,8 @@
netbsd*)
version_type=sunos
+ need_lib_prefix=no
++ need_version=no
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
-+ deplibs_check_method='file_magic NetBSD/[a-z0-9]* demand paged shared library'
-+ file_magic_cmd=/usr/bin/file
-+ file_magic_test_file=`echo /usr/lib/libc.so*`
library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
- dynamic_linker='NetBSD (a.out) ld.so'
-+ need_version=yes
- else
-+ deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object'
-+ file_magic_cmd=/usr/bin/file
-+ file_magic_test_file=`echo /usr/lib/libc.so*`
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so'
- soname_spec='${libname}${release}.so$major'
- dynamic_linker='NetBSD ld.elf_so'
-+ need_version=no
- fi
- shlibpath_var=LD_LIBRARY_PATH
- ;;
-@@ -2069,7 +2099,7 @@
- ;;
-
- solaris*)
-- version_type=linux
-+ version_type=sunos
- need_lib_prefix=no
- need_version=no
- library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-@@ -2706,6 +2736,7 @@
- old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds postuninstall_cmds \
- file_magic_cmd export_symbols_cmds deplibs_check_method allow_undefined_flag no_undefined_flag \
- finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \
-+ ctor_check_cmd \
- hardcode_libdir_flag_spec hardcode_libdir_separator \
- sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
- compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do
-@@ -2715,6 +2746,7 @@
- old_postinstall_cmds | old_postuninstall_cmds | \
- export_symbols_cmds | archive_cmds | archive_expsym_cmds | \
- postinstall_cmds | postuninstall_cmds | \
-+ ctor_check_cmd | \
- finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
- # Double-quote double-evaled strings.
- eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
-@@ -3017,6 +3049,11 @@
-
- # Symbols that must always be exported.
- include_expsyms=$include_expsyms
-+
-+# C++ startup code
-+cpprt0="$cpprt0"
-+cppopts=
-+ctor_check_cmd=$ctor_check_cmd
-
- EOF
-
diff --git a/devel/libtool/patches/patch-ab b/devel/libtool/patches/patch-ab
index 50630974c72..2e0486236ad 100644
--- a/devel/libtool/patches/patch-ab
+++ b/devel/libtool/patches/patch-ab
@@ -1,42 +1,16 @@
-$NetBSD: patch-ab,v 1.15 2001/01/26 16:42:45 skrll Exp $
+$NetBSD: patch-ab,v 1.16 2001/02/27 08:20:25 skrll Exp $
---- ltmain.in.orig Sat May 27 02:53:15 2000
-+++ ltmain.in
-@@ -819,6 +819,7 @@
- old_convenience=
- deplibs=
- linkopts=
-+ wllinkopts=
-
- if test -n "$shlibpath_var"; then
- # get the directories listed in $shlibpath_var
-@@ -1154,6 +1155,25 @@
- continue
- ;;
-
-+ -Wl,*)
-+ args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'`
-+ arg=
-+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=','
-+ for flag in $args; do
-+ IFS="$save_ifs"
-+ case "$flag" in
-+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
-+ flag="\"$flag\""
-+ ;;
-+ esac
-+ arg="$arg $wl$flag"
-+ linkopts="$linkopts $flag"
-+ wllinkopts="$wllinkopts $wl$flag"
-+ done
-+ IFS="$save_ifs"
-+ arg=`$echo "X$arg" | $Xsed -e "s/^ //"`
-+ ;;
-+
- # Some other compiler flag.
- -* | +*)
- # Unknown arguments in both finalize_command and compile_command need
-@@ -1656,7 +1676,7 @@
+--- ltmain.sh.orig Mon Feb 19 05:05:23 2001
++++ ltmain.sh
+@@ -946,7 +946,6 @@
+ continue
+ ;;
+ release)
+- release="-$arg"
+ prev=
+ continue
+ ;;
+@@ -2397,7 +2396,7 @@
# Check that each of the things are valid numbers.
case "$current" in
@@ -45,7 +19,7 @@ $NetBSD: patch-ab,v 1.15 2001/01/26 16:42:45 skrll Exp $
*)
$echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2
$echo "$modename: \`$vinfo' is not valid version information" 1>&2
-@@ -1665,7 +1685,7 @@
+@@ -2406,7 +2405,7 @@
esac
case "$revision" in
@@ -54,7 +28,7 @@ $NetBSD: patch-ab,v 1.15 2001/01/26 16:42:45 skrll Exp $
*)
$echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2
$echo "$modename: \`$vinfo' is not valid version information" 1>&2
-@@ -1674,7 +1694,7 @@
+@@ -2415,7 +2414,7 @@
esac
case "$age" in
@@ -63,47 +37,13 @@ $NetBSD: patch-ab,v 1.15 2001/01/26 16:42:45 skrll Exp $
*)
$echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2
$echo "$modename: \`$vinfo' is not valid version information" 1>&2
-@@ -1772,7 +1792,7 @@
- fi
-
- # Remove version info from name if versioning should be avoided
-- if test "$avoid_version" = yes && test "$need_version" = no; then
-+ if test "$avoid_version" = yes; then
- major=
- versuffix=
- verstring=""
-@@ -1799,6 +1819,9 @@
- # rhapsody is a little odd...
- deplibs="$deplibs -framework System"
- ;;
-+ *-*-netbsd*)
-+ # Don't link with libc until the a.out ld.so is fixed.
-+ ;;
- *)
- # Add libc to deplibs on all other systems.
- deplibs="$deplibs -lc"
-@@ -2103,6 +2126,16 @@
- $run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"'
- fi
-
-+ # Check whether we need to link in c++rt0.o on a.out because of
-+ # constructors/destructors
-+ if test -n "$ctor_check_cmd"; then
-+ eval cmd=\"$ctor_check_cmd\"
-+ #$show "$cmd"
-+ if $run eval "$cmd" ; then
-+ cppopts="$cpprt0"
-+ fi
-+ fi
-+
- if test -n "$convenience"; then
- if test -n "$whole_archive_flag_spec"; then
- eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
-@@ -2146,6 +2179,7 @@
- if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then
- eval flag=\"$thread_safe_flag_spec\"
- linkopts="$linkopts $flag"
-+ wllinkopts="$wllinkopts $wl$flag"
- fi
-
- # Do each of the archive commands.
+@@ -2612,6 +2611,9 @@
+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*)
+ # these systems don't actually have a c library (as such)!
+ ;;
++ *-*-netbsd*)
++ # Don't link with libc until the a.out ld.so is fixed.
++ ;;
+ *)
+ # Add libc to deplibs on all other systems if necessary.
+ if test $build_libtool_need_lc = "yes"; then
diff --git a/devel/libtool/patches/patch-ac b/devel/libtool/patches/patch-ac
index fab528151e2..b91965df514 100644
--- a/devel/libtool/patches/patch-ac
+++ b/devel/libtool/patches/patch-ac
@@ -1,13 +1,13 @@
-$NetBSD: patch-ac,v 1.6 2001/02/11 10:12:04 skrll Exp $
+$NetBSD: patch-ac,v 1.7 2001/02/27 08:20:25 skrll Exp $
---- config.guess.orig Fri May 26 18:30:02 2000
+--- config.guess.orig Mon Aug 28 05:05:02 2000
+++ config.guess
-@@ -76,33 +76,24 @@
+@@ -118,33 +118,24 @@
# compatibility and a consistent mechanism for selecting the
# object file format.
# Determine the machine/vendor (is the vendor relevant).
- case "${UNAME_MACHINE}" in
-- amiga) machine=m68k-cbm ;;
+- amiga) machine=m68k-unknown ;;
- arm32) machine=arm-unknown ;;
- atari*) machine=m68k-atari ;;
- sun3*) machine=m68k-sun ;;
diff --git a/devel/libtool/patches/patch-ad b/devel/libtool/patches/patch-ad
index 29affae5ab4..65338be376d 100644
--- a/devel/libtool/patches/patch-ad
+++ b/devel/libtool/patches/patch-ad
@@ -1,13 +1,12 @@
-$NetBSD: patch-ad,v 1.1 2001/02/03 05:34:58 hubertf Exp $
+$NetBSD: patch-ad,v 1.2 2001/02/27 08:20:25 skrll Exp $
---- Makefile.in.orig Sat May 27 13:23:32 2000
+--- Makefile.in.orig Thu Feb 8 05:07:13 2001
+++ Makefile.in
-@@ -82,7 +82,8 @@
+@@ -93,7 +93,7 @@
AUTOMAKE_OPTIONS = 1.3e gnu
-BUILD_SUBDIRS = . libltdl doc tests
-+# We build the docs in a seperate pkg in NetBSD (etc.):
+BUILD_SUBDIRS = . libltdl tests
SUBDIRS = $(BUILD_SUBDIRS)
DIST_SUBDIRS = $(BUILD_SUBDIRS) $(CONF_SUBDIRS)
diff --git a/devel/libtool/patches/patch-ae b/devel/libtool/patches/patch-ae
new file mode 100644
index 00000000000..eb76ea0a137
--- /dev/null
+++ b/devel/libtool/patches/patch-ae
@@ -0,0 +1,13 @@
+$NetBSD: patch-ae,v 1.1 2001/02/27 08:20:25 skrll Exp $
+
+--- libltdl/ltdl.c.orig Sat Feb 3 05:05:05 2001
++++ libltdl/ltdl.c
+@@ -87,7 +87,7 @@
+
+ /* max. filename length */
+ #ifndef LT_FILENAME_MAX
+-# define LT_FILENAME_MAX 1024
++# define LT_FILENAME_MAX 2048
+ #endif
+
+ /* This is the maximum symbol size that won't require malloc/free */
diff --git a/devel/libtool/patches/patch-af b/devel/libtool/patches/patch-af
new file mode 100644
index 00000000000..136c19832be
--- /dev/null
+++ b/devel/libtool/patches/patch-af
@@ -0,0 +1,22 @@
+$NetBSD: patch-af,v 1.1 2001/02/27 08:20:26 skrll Exp $
+
+--- ltcf-c.sh.orig Sun Jan 28 05:05:02 2001
++++ ltcf-c.sh
+@@ -184,8 +184,15 @@
+ archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
+ wlarc=
+ else
+- archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
++ if $CC -dumpspecs | grep -A1 libgcc | grep shared >/dev/null; then
++ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
++ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
++ else
++ # This causes problems on some platforms because libgcc isn't
++ # available compiled -fPIC
++ archive_cmds='$LD -shared -o $lib /usr/lib/crtbeginS.o $libobjs $deplibs $linker_flags -soname $soname /usr/lib/crtendS.o'
++ wlarc=
++ fi
+ fi
+ ;;
+
diff --git a/devel/libtool/patches/patch-ag b/devel/libtool/patches/patch-ag
new file mode 100644
index 00000000000..b076122d83f
--- /dev/null
+++ b/devel/libtool/patches/patch-ag
@@ -0,0 +1,54 @@
+$NetBSD: patch-ag,v 1.1 2001/02/27 08:20:26 skrll Exp $
+
+--- ltcf-cxx.sh.orig Tue Feb 6 05:05:05 2001
++++ ltcf-cxx.sh
+@@ -290,7 +290,33 @@
+ esac
+ ;;
+ netbsd*)
+- # NetBSD uses g++ - do we need to do anything?
++ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
++ # Surely {pre|post}dep_objects should be added here!
++ archive_cmds='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
++ wlarc=
++ # Determine if we need to override the c++rt0 that is
++ # picked up by analysing output_verbose_link_cmds
++ if test -f ${PREFIX}/lib/c++rt0/c++rt0.o.PIC; then
++ cpprt0_file="${PREFIX}/lib/c++rt0/c++rt0.o.PIC"
++ else
++ cpprt0_file=
++ fi
++ hardcode_direct=yes
++ hardcode_libdir_flag_spec='-R$libdir'
++ hardcode_shlibpathvar_var=no
++ else
++ # Workround pre 1.5 gcc LIBGCC_SPEC problems.
++ if $CC -dumpspecs | grep -A1 libgcc | grep shared >/dev/null; then
++ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
++ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
++ else
++ # This causes problems libgcc isn't available as a shared object.
++ archive_cmds='$LD -shared -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags -soname $soname'
++ wlarc=
++ fi
++ fi
++ # Make sure that we don't add -lgcc back in via postdep.
++ output_verbose_link_cmds='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | egrep "\-L" | sed -e "s/-lgcc -lc -lgcc//"'
+ ;;
+ osf3*)
+ if test "$with_gcc" = yes && test "$with_gnu_ld" = no; then
+@@ -859,6 +885,14 @@
+
+ esac
+ done
++
++ case "$host_os" in
++ netbsd*)
++ if test -n "$cpprt0_file"; then
++ predep_objects=`eval echo $predep_objects | sed -e 's:/usr/lib/c++rt0.o:$cpprt0_file:'`
++ fi
++ ;;
++ esac
+
+ # Clean up.
+ rm -f a.out
diff --git a/mk/bsd.pkg.mk b/mk/bsd.pkg.mk
index 54553955a50..ce7c1533490 100644
--- a/mk/bsd.pkg.mk
+++ b/mk/bsd.pkg.mk
@@ -1,4 +1,4 @@
-# $NetBSD: bsd.pkg.mk,v 1.673 2001/02/26 19:40:19 tron Exp $
+# $NetBSD: bsd.pkg.mk,v 1.674 2001/02/27 08:20:27 skrll Exp $
#
# This file is in the public domain.
#
@@ -225,10 +225,14 @@ CONFIGURE_ENV+= LIBS="${LIBS} -L${LOCALBASE}/lib -lintl"
.if defined(USE_LIBTOOL)
LIBTOOL= ${LOCALBASE}/bin/libtool
-# XXX: actually, here we would need something like
+# XXX Here we really need the following, but BUILD_DEPENDS doesn't
+# XXX support it at the moment.
# BUILD_DEPENDS+=libtool>=1.3.5nb11:../../devel/libtool
.if make(install-run-depends) || make(fetch-list-recursive) || make(show-depends-dirs)
-DEPENDS+= libtool>=1.3.5nb11:../../devel/libtool
+DEPENDS+= libtool>=1.4.20010219nb1:../../devel/libtool
+.endif
+.if defined(USE_LTDL)
+DEPENDS+= libtool>=1.4.20010219nb1:../../devel/libtool
.endif
.endif