Dear libtoolers, Some patch-work. Stress-tested with GTK-2.0 :-)
Please please please - pretty please with (optional) cherries on top - people test this/these patch/es on other operating systems and architectures, because I would really like to stop maintaining my own personal libtool... Regards, Frank Francis James Franklin [EMAIL PROTECTED] ============================================================================== Patch: [ltcvs-20020308-1.patch] There's a bug with building static archives that occurs when building libltdl.a (and this occurs w/ or w/o my patch) - where ltdl.o is added to the archive twice: ar cru .libs/libltdl.a .libs/ltdl.o ltdl.o where ".libs/ltdl.o" and "ltdl.o", the shared and static targets respectively, are identical. I have attached a mini-patch which appears to fix this - certainly it doesn't cause any tests to fail on darwin but I haven't tested on other systems. ============================================================================== Patch: [ltcvs-20020308-2.patch] The attached patch, and the use of bash rather than zsh, reduces the number of failed tests to one - the last failure being hardcode.test, which I haven't really looked at in any detail. A fix for everybody's favourite darwin bug (the convenience lib. thingy) is included. It's improved from my original submission in June and doesn't seem to break anything. We even have the latest CVS glib & gtk+ building now! The module loader is derived from Dan Winship's gmodule-dyld. I've reworked it as a dlopen/dlclose/etc. interface for direct inclusion in ltdl.c but also as a standalone file in case anybody wants to use it elsewhere. (I'm very new to modules and there are still some issues to be addressed, so to speak...) The only things with this patch I'm really uncertain about are: (1) the 'fix' (\\\"\1\\\" -> \"\1\") for lt_cv_sys_global_symbol_to_c_name_address where I have changed the two instances but perhaps it would be better to add a third darwin-specific case? (2) The following line makes no sense to me: ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no) since AC_PROVIDE_AC_LIBTOOL_DLOPEN is *never*, as far as I can tell, defined and therefore enable_dlopen is always "no", and one consequence of this is that mdemo tries to link to "foo1.a" using "-lfoo1" which fails... Anyway, I'd be grateful if people could test the patch. Here's a sample ChangeLog entry: 2002-03-08 Francis James Franklin <[EMAIL PROTECTED]> darwin updates: * libltdl/Makefile.am: add ltdyld.c & ltdyld.h * libltdl/README: add note on MacOSX support * libltdl/ltdl.c: include ltdyld.c & ltdyld.h if HAVE_DYLD * libltdl/ltdyld.c: libdl-equiv. wrapper round NeXT module interface * libltdl/ltdyld.h: header, with LTDYLD_REPLACE_DLFCN option * libtool.m4: - always enable_dlopen=yes - check for NSLinkModule - copy darwin linker characteristics to CXX config section - lt_cv_sys_global_symbol_to_c_name_address fix (\\\"\1\\\" -> \"\1\") * ltdl.m4: check for NSLinkModule * ltmain.in: - fix infamous conv. library bug (a.k.a. Appalling Patch, Version 0.3) - don't add nothing after piecewise linking * tests/Makefile.am: propagate $(SHELL) to tests ============================================================================== Patch: [ltcvs-20020308-3.patch] This is a bit of fun, for whoever's interested, lets you add "-rpath @executable_path[/path]" to _la_LDFLAGS in Makefile.am to build relocatable libraries. I use this with my Crazy Wormhole stuff (http://www.crazy-wormhole.com/) ==============================================================================
diff -Naur libtool/ltmain.in libtool.mod/ltmain.in --- libtool/ltmain.in Sun Mar 3 03:19:54 2002 +++ libtool.mod/ltmain.in Sat Mar 9 10:40:31 2002 @@ -4284,7 +4284,7 @@ oldobjs="$libobjs_save" build_libtool_libs=no else - oldobjs="$oldobjs$old_deplibs $non_pic_objects" + oldobjs="$old_deplibs $non_pic_objects" fi addlibs="$old_convenience" fi
diff -Naur libtool/libltdl/Makefile.am libtool.mod/libltdl/Makefile.am --- libtool/libltdl/Makefile.am Tue Sep 11 02:26:44 2001 +++ libtool.mod/libltdl/Makefile.am Sat Mar 9 08:00:30 2002 @@ -3,10 +3,10 @@ AUTOMAKE_OPTIONS = no-dependencies foreign if INSTALL_LTDL -include_HEADERS = ltdl.h +include_HEADERS = ltdl.h ltdyld.h lib_LTLIBRARIES = libltdl.la else -noinst_HEADERS = ltdl.h +noinst_HEADERS = ltdl.h ltdyld.h endif if CONVENIENCE_LTDL @@ -25,7 +25,7 @@ libltdlc_la_LIBADD = $(LIBADD_DL) ## Because we do not have automatic dependency tracking: -ltdl.lo: ltdl.h config.h +ltdl.lo: ltdl.h config.h ltdyld.h ltdyld.c $(libltdl_la_OBJECTS) $(libltdlc_la_OBJECTS): libtool libtool: $(LIBTOOL_DEPS) diff -Naur libtool/libltdl/README libtool.mod/libltdl/README --- libtool/libltdl/README Sat Jul 17 10:00:53 1999 +++ libtool.mod/libltdl/README Sat Mar 9 08:18:30 2002 @@ -7,3 +7,5 @@ * load_add_on (BeOS) * GNU DLD (emulates dynamic linking for static libraries) * libtool's dlpreopen +* some support for darwin's NSLinkModule - fink's dlcompat could probably + be used instead (I haven't tested, though) \ No newline at end of file diff -Naur libtool/libltdl/ltdl.c libtool.mod/libltdl/ltdl.c --- libtool/libltdl/ltdl.c Sun Mar 3 03:19:55 2002 +++ libtool.mod/libltdl/ltdl.c Sat Mar 9 08:00:30 2002 @@ -92,6 +92,7 @@ # define assert(arg) ((void) 0) #endif +#include "ltdyld.h" #include "ltdl.h" #if WITH_DMALLOC @@ -809,6 +810,21 @@ return errors; } + + +/* --- DARWIN SUPPORT --- */ + +/* "ltdyld.c" provides a dl* so-style interface/wrapper around darwin's NexT-style + * module load/lookup functions. + * + * I can't figure out how to modify the underscore-detection properly, so I'm just + * going to specify the need for it here - for the moment, anyway... + */ + +#if HAVE_DYLD +# include "ltdyld.c" +# define NEED_USCORE 1 +#endif diff -Naur libtool/libltdl/ltdyld.c libtool.mod/libltdl/ltdyld.c --- libtool/libltdl/ltdyld.c Thu Jan 1 01:00:00 1970 +++ libtool.mod/libltdl/ltdyld.c Sat Mar 9 08:15:40 2002 @@ -0,0 +1,161 @@ +/* ltdyld.c -- dlopen wrapper for darwin's NSLinkModule + Copyright (C) 2001 Free Software Foundation, Inc. + Originally by Francis James Franklin <[EMAIL PROTECTED]> + This file is part of GNU Libtool. + + ChangeLog: + 3rd November 2001 + o Creation of ltdyld.c & ltdyld.h (fjf) + + Notes & TODO: + (1) Distinguish the load-self case? + (2) I haven't a clue either about what to do with dlctl (), so the +'implementation' + is officially *broken*. (Not that the rest necessarily works, but...) + + Handy References: + 1. glib/gmodule/gmodule-dyld.c + 2. Python/dynload_next.c + +This library is free software; you can redistribute it and/or +modify it under the terms of the GNU Lesser General Public +License as published by the Free Software Foundation; either +version 2 of the License, or (at your option) any later version. + +As a special exception to the GNU Lesser General Public License, +if you distribute this file as part of a program or library that +is built using GNU libtool, you may include it under the same +distribution terms that you use for the rest of that program. + +This library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Lesser General Public License for more details. + +You should have received a copy of the GNU Lesser General Public +License along with this library; if not, write to the Free Software +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +02111-1307 USA + +*/ + +/* ltdyld.c + * + * This file is designed to be included from ltdl.c, but I'll try to make it +standalone + * so that other applications can use it if they want. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include <stdlib.h> + +#include <mach-o/dyld.h> + +#include "ltdyld.h" + +#ifndef LT_STMT_START +#define LT_STMT_START do +#endif + +#ifndef LT_STMT_END +#define LT_STMT_END while (0) +#endif + +#ifndef LT_DLMALLOC +#define LT_DLMALLOC(tp, n) ((tp *) malloc ((n) * sizeof(tp))) +#endif + +#ifndef LT_DLFREE +#define LT_DLFREE(p) LT_STMT_START { if (p) free ((void *) p); (p) = 0; } +LT_STMT_END +#endif + +typedef struct _ltdyld_handle ltdyld_handle; + +struct _ltdyld_handle +{ + NSModule module; +}; + +void * ltdyld_dlopen (const char * path, int mode) +{ + ltdyld_handle * handle = LT_DLMALLOC (ltdyld_handle,1); + if (handle) + { + NSObjectFileImage image; + if (NSCreateObjectFileImageFromFile (path, &image) == NSObjectFileImageSuccess) + { + unsigned long options = (mode == DL_LAZY) ? 0 : NSLINKMODULE_OPTION_BINDNOW; + options |= NSLINKMODULE_OPTION_RETURN_ON_ERROR; + options |= NSLINKMODULE_OPTION_PRIVATE; + + handle->module = NSLinkModule (image, path, options); + if (handle->module == 0) + { + LT_DLFREE (handle); + handle = 0; + } + NSDestroyObjectFileImage (image); + } + else + { + LT_DLFREE (handle); + handle = 0; + } + } + return (void *) handle; +} + +int ltdyld_dlclose (void * v_handle) +{ + int ret = 1; /* assume failure */ + + ltdyld_handle * handle = (ltdyld_handle *) v_handle; + if (handle ? handle->module : 0) + { + if (NSUnLinkModule (handle->module, 0)) ret = 0; + + LT_DLFREE (handle); /* Is this correct? - or only if unlinking succeeds? */ + } + return ret; +} + +void * ltdyld_dlsym (void * v_handle, const char * symbol) +{ + void * address = 0; + + ltdyld_handle * handle = (ltdyld_handle *) v_handle; + if (handle ? handle->module : 0) + { + NSSymbol sym = NSLookupSymbolInModule (handle->module, symbol); + if (sym) + { + address = NSAddressOfSymbol (sym); + } + } + return address; +} + +int ltdyld_dlctl (void * v_handle, int cmd, void * data) +{ + ltdyld_handle * handle = (ltdyld_handle *) v_handle; + if (handle ? handle->module : 0) + { + /* */ + } + return 0; /* What is the proper return value? */ +} + +char * ltdyld_dlerror (void) +{ + NSLinkEditErrors c; + + int error_number; + + char * file = 0; + char * error = 0; + + NSLinkEditError (&c, &error_number, &file, &error); + + return error; +} diff -Naur libtool/libltdl/ltdyld.h libtool.mod/libltdl/ltdyld.h --- libtool/libltdl/ltdyld.h Thu Jan 1 01:00:00 1970 +++ libtool.mod/libltdl/ltdyld.h Sat Mar 9 08:12:35 2002 @@ -0,0 +1,58 @@ +/* ltdyld.h -- dlopen wrapper for darwin's NSLinkModule + Copyright (C) 2001 Free Software Foundation, Inc. + Originally by Francis James Franklin <[EMAIL PROTECTED]> + This file is part of GNU Libtool. + +This library is free software; you can redistribute it and/or +modify it under the terms of the GNU Lesser General Public +License as published by the Free Software Foundation; either +version 2 of the License, or (at your option) any later version. + +As a special exception to the GNU Lesser General Public License, +if you distribute this file as part of a program or library that +is built using GNU libtool, you may include it under the same +distribution terms that you use for the rest of that program. + +This library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Lesser General Public License for more details. + +You should have received a copy of the GNU Lesser General Public +License along with this library; if not, write to the Free Software +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +02111-1307 USA + +*/ + +#ifndef LTDYLD_H +#define LTDYLD_H + +#ifdef DL_LAZY +#undef DL_LAZY +#endif +#define DL_LAZY 0 /* What is the usual value? */ + +#ifdef __cplusplus +extern "C" { +#endif /* __cplusplus */ + +extern void * ltdyld_dlopen (const char * path, int mode); +extern int ltdyld_dlclose (void * handle); +extern void * ltdyld_dlsym (void * handle, const char * symbol); +extern int ltdyld_dlctl (void * handle, int cmd, void * data); +extern char * ltdyld_dlerror (void); + +#ifdef __cplusplus +} +#endif /* __cplusplus */ + +#ifdef LTDYLD_REPLACE_DLFCN +#define dlopen ltdyld_dlopen +#define dlclose ltdyld_dlclose +#define dlsym ltdyld_dlsym +#define dlctl ltdyld_dlctl +#define dlerror ltdyld_dlerror +#endif /* LTDYLD_REPLACE_DLFCN */ + +#endif /* ! LTDYLD_H */ diff -Naur libtool/libtool.m4 libtool.mod/libtool.m4 --- libtool/libtool.m4 Sun Mar 3 03:19:54 2002 +++ libtool.mod/libtool.m4 Sat Mar 9 08:00:30 2002 @@ -192,7 +192,7 @@ ;; esac -ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no) +enable_dlopen=yes ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], enable_win32_dll=yes, enable_win32_dll=no) @@ -754,7 +754,10 @@ [AC_CHECK_LIB([svld], [dlopen], [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], [AC_CHECK_LIB([dld], [dld_link], - [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"]) + [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"], + [AC_CHECK_FUNC([NSLinkModule], + [lt_cv_dlopen="NSLinkModule"]) + ]) ]) ]) ]) @@ -2569,6 +2572,28 @@ _LT_AC_TAGVAR(ld_shlibs, $1)=no ;; + darwin* | rhapsody*) + case "$host_os" in + rhapsody* | darwin1.[[012]]) + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined suppress' + ;; + *) # Darwin 1.3 on + _LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress' + ;; + esac + + # FIXME: Relying on posixy $() will cause problems for + # cross-compilation, but unfortunately the echo tests do not + # yet detect zsh echo's removal of \ escapes. Also zsh mangles + # `"' quotes if we put them in here... so don't! + _LT_AC_TAGVAR(archive_cmds, $1)='$CC $(test .$module = .yes && echo -bundle || +echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs$linker_flags +-install_name $rpath/$soname $verstring' + # We need to add '_' to the symbols in $export_symbols first + #_LT_AC_TAGVAR(archive_expsym_cmds, $1)="$_LT_AC_TAGVAR(archive_cmds, $1)"' && +strip -s $export_symbols' + _LT_AC_TAGVAR(hardcode_direct, $1)=yes + _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience' + ;; + dgux*) case $cc_basename in ec++) @@ -3759,7 +3784,7 @@ lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern int \1;/p'" # Transform an extracted symbol line into symbol name and symbol address -lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" +lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\"\1\", +(lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) +\&\2},/p'" # Define system-specific variables. case $host_os in @@ -3774,7 +3799,7 @@ symcode='[[ABCDEGRST]]' fi lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" - lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" + lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\"\1\", +(lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) +\&\2},/p'" ;; irix* | nonstopux*) symcode='[[BCDEGRST]]' diff -Naur libtool/ltdl.m4 libtool.mod/ltdl.m4 --- libtool/ltdl.m4 Sun Oct 28 01:00:00 2001 +++ libtool.mod/ltdl.m4 Sat Mar 9 08:00:30 2002 @@ -324,7 +324,17 @@ [AC_CHECK_LIB([dld], [dld_link], [AC_DEFINE([HAVE_DLD], [1], [Define if you have the GNU dld library.]) - LIBADD_DL="$LIBADD_DL -ldld" + LIBADD_DL="$LIBADD_DL -ldld"], + [AC_CHECK_FUNC([NSLinkModule], + [AC_DEFINE([HAVE_LIBDL], [1], + [Define if you have the libdl library or equivalent.]) + AC_DEFINE([HAVE_DYLD], [1], + [Define for darwin/NeXT dyld.]) + AC_DEFINE([LTDYLD_REPLACE_DLFCN], [1], + [Define to replace libdl names with ltdyld equivalents.]) + AC_DEFINE([HAVE_DLERROR], [1], + [Define if you have the `dlerror' function.]) + ]) ]) ]) ]) diff -Naur libtool/ltmain.in libtool.mod/ltmain.in --- libtool/ltmain.in Sun Mar 3 03:19:54 2002 +++ libtool.mod/ltmain.in Sat Mar 9 08:00:30 2002 @@ -1907,7 +1907,13 @@ if test "$pass" = conv; then # Only check for convenience libraries - deplibs="$lib $deplibs" + if test "$linkmode" = "lib"; then + if test "$libdir"; then + deplibs="$lib $deplibs" + fi + else + deplibs="$lib $deplibs" + fi if test -z "$libdir"; then if test -z "$old_library"; then $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 @@ -4361,7 +4367,10 @@ done RANLIB=$save_RANLIB oldobjs=$objlist + save_AR=$AR + AR=: eval cmds=\"\$concat_cmds~$old_archive_cmds\" + AR=$save_AR fi fi save_ifs="$IFS"; IFS='~' diff -Naur libtool/tests/Makefile.am libtool.mod/tests/Makefile.am --- libtool/tests/Makefile.am Fri Jun 29 18:09:04 2001 +++ libtool.mod/tests/Makefile.am Sat Mar 9 08:00:30 2002 @@ -58,10 +58,14 @@ LIBS = @LIBS@ # Be sure to reexport important environment variables. +# The tests are shell scripts; run them using $(SHELL) rather than +# letting them default to /bin/sh - do this by appending $(SHELL) +# to TESTS_ENVIRONMENT: TESTS_ENVIRONMENT = MAKE="$(MAKE)" CC="$(CC)" CFLAGS="$(CFLAGS)" \ CPPFLAGS="$(CPPFLAGS)" LD="$(LD)" LDFLAGS="$(LDFLAGS)" \ LIBS="$(LIBS)" LN_S="$(LN_S)" NM="$(NM)" RANLIB="$(RANLIB)" \ - OBJEXT="$(OBJEXT)" EXEEXT="$(EXEEXT)" + OBJEXT="$(OBJEXT)" EXEEXT="$(EXEEXT)" SHELL="$(SHELL)" \ + $(SHELL) EXTRA_DIST = defs $(COMMON_TESTS) $(CXX_TESTS)
diff -Naur libtool/libtool.m4 libtool.mod/libtool.m4 --- libtool/libtool.m4 Sat Mar 9 12:53:33 2002 +++ libtool.mod/libtool.m4 Sat Mar 9 12:53:19 2002 @@ -2586,7 +2586,7 @@ # cross-compilation, but unfortunately the echo tests do not # yet detect zsh echo's removal of \ escapes. Also zsh mangles # `"' quotes if we put them in here... so don't! - _LT_AC_TAGVAR(archive_cmds, $1)='$CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs$linker_flags -install_name $rpath/$soname $verstring' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC $(test .$module = .yes && echo -bundle || +echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs$linker_flags +-install_name $install_libdir/$soname $verstring' # We need to add '_' to the symbols in $export_symbols first #_LT_AC_TAGVAR(archive_expsym_cmds, $1)="$_LT_AC_TAGVAR(archive_cmds, $1)"' && strip -s $export_symbols' _LT_AC_TAGVAR(hardcode_direct, $1)=yes @@ -4812,7 +4812,7 @@ # cross-compilation, but unfortunately the echo tests do not # yet detect zsh echo's removal of \ escapes. Also zsh mangles # `"' quotes if we put them in here... so don't! - _LT_AC_TAGVAR(archive_cmds, $1)='$CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs$linker_flags -install_name $rpath/$soname $verstring' + _LT_AC_TAGVAR(archive_cmds, $1)='$CC $(test .$module = .yes && echo -bundle || +echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs$linker_flags +-install_name $install_libdir/$soname $verstring' # We need to add '_' to the symbols in $export_symbols first #_LT_AC_TAGVAR(archive_expsym_cmds, $1)="$_LT_AC_TAGVAR(archive_cmds, $1)"' && strip -s $export_symbols' _LT_AC_TAGVAR(hardcode_direct, $1)=yes diff -Naur libtool/ltmain.in libtool.mod/ltmain.in --- libtool/ltmain.in Sat Mar 9 12:53:33 2002 +++ libtool.mod/ltmain.in Sat Mar 9 12:55:24 2002 @@ -1080,6 +1080,9 @@ # We need an absolute path. case $arg in [\\/]* | [A-Za-z]:[\\/]*) ;; + @executable_path | @executable_path[\\/]*) + $echo "$modename: warning: @executable_path support is experimental" 1>&2 + ;; *) $echo "$modename: only absolute run-paths are allowed" 1>&2 exit 1 @@ -2587,7 +2590,8 @@ set dummy $rpath if test "$#" -gt 2; then - $echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2 + $echo "$modename: warning: multiple \`-rpath's - using last-specified" 1>&2 + while test "$#" -gt 2; do shift; done fi install_libdir="$2" @@ -4463,6 +4467,7 @@ case $host,$output,$installed,$module,$dlname in *cygwin*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;; esac + dependency_libs_noepath=`$echo "X$dependency_libs" | $Xsed -e +'s#@executable_path.*/lib\([^/]*\)\.la#-l\1#g'` $echo > $output "\ # $outputname - a libtool library file # Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP @@ -4480,7 +4485,7 @@ old_library='$old_library' # Libraries that this one depends upon. -dependency_libs='$dependency_libs' +dependency_libs='$dependency_libs_noepath' # Version information for $libname. current=$current