diff options
author | skrll <skrll> | 2001-02-27 08:20:23 +0000 |
---|---|---|
committer | skrll <skrll> | 2001-02-27 08:20:23 +0000 |
commit | 9698f6055b3a851f397a4642a14b27b5b9b3d3f1 (patch) | |
tree | 31876350654b4ad2b95104766e43093187eddbb4 /devel | |
parent | 3ad95f8365551365c1eddc5192b3788b8c7ddb18 (diff) | |
download | pkgsrc-9698f6055b3a851f397a4642a14b27b5b9b3d3f1.tar.gz |
Update libtool to be based on a CVS snapshot of the multi-language branch
Diffstat (limited to 'devel')
-rw-r--r-- | devel/libtool-base/Makefile | 6 | ||||
-rw-r--r-- | devel/libtool-base/pkg/PLIST | 10 | ||||
-rw-r--r-- | devel/libtool-info/Makefile | 5 | ||||
-rw-r--r-- | devel/libtool/Makefile | 10 | ||||
-rw-r--r-- | devel/libtool/Makefile.common | 12 | ||||
-rw-r--r-- | devel/libtool/files/md5 | 4 | ||||
-rw-r--r-- | devel/libtool/files/patch-sum | 13 | ||||
-rw-r--r-- | devel/libtool/patches/patch-aa | 118 | ||||
-rw-r--r-- | devel/libtool/patches/patch-ab | 108 | ||||
-rw-r--r-- | devel/libtool/patches/patch-ac | 8 | ||||
-rw-r--r-- | devel/libtool/patches/patch-ad | 7 | ||||
-rw-r--r-- | devel/libtool/patches/patch-ae | 13 | ||||
-rw-r--r-- | devel/libtool/patches/patch-af | 22 | ||||
-rw-r--r-- | devel/libtool/patches/patch-ag | 54 |
14 files changed, 160 insertions, 230 deletions
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 |