Index: libtool/ChangeLog
diff -c libtool/ChangeLog:1.922.2.54 libtool/ChangeLog:1.922.2.111
*** libtool/ChangeLog:1.922.2.54 Mon Sep 10 23:33:37 2001
--- libtool/ChangeLog Tue Oct 22 22:54:36 2002
***************
*** 1,5 ****
--- 1,323 ----
+ 2002-10-22 Robert Boehne <
[email protected]>
+
+ GNU libtool 1.4.3 was released.
+
+ * configure.in: Bumped version to 1.4.3.
+ * config.sub, config.guess: Synchronised from ftp.gnu.org.
+ * NEWS: Updated.
+
+ 2002-10-22 Albert Chin-A-Young <
[email protected]>
+
+ * libltdl/ltdl.c: Init char * to NULL, not 0. And, for
+ some char * values, set *[var] = 0 to *[var] = '\0'.
+
+ 2002-10-22 Brad Smith <
[email protected]>
+
+ * libtool.m4: $linker_flag -> $compiler_flag for OpenBSD
+ archive_cmds entries using $CC.
+
+ 2002-10-22 Alexandre Duret-Lutz <
[email protected]>
+
+ * ltdl.m4 (AC_LIB_LTDL, AC_LTDL_ENABLE_INSTALL,
+ AC_LTDL_SYS_DLOPEN_DEPLIBS, AC_LTDL_SHLIBEXT, AC_LTDL_SHLIBPATH,
+ AC_LTDL_SYSSEARCHPATH, AC_LTDL_OBJDIR, AC_LTDL_DLPREOPEN,
+ AC_LTDL_DLLIB, AC_LTDL_SYMBOL_USCORE, AC_LTDL_DLSYM_USCORE): Quote
+ macro name in definition.
+
+ 2002-10-22 Albert Chin-A-Young <
[email protected]>
+
+ * libtool.m4: When a module is built for AIX, the 'lib'
+ prefix isn't needed, neither is the version. AIX dlopen
+ will honor the RPATH in a library.
+
+ 2002-10-20 Alexandre Duret-Lutz <
[email protected]>
+
+ * libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Honor
+ ac_exeext.
+
+ 2002-10-14 Albert Chin-A-Young <
[email protected]>
+
+ * libtool.m4: If ld is being used on IRIX to embed the
+ runtmie path, use -rpath, not -Wl,-rpath. Embed the runtime
+ path into libraries for AIX (supported on AIX 4.3.2+).
+ Embed the runtime path into Tru64 libraries, even though it
+ doesn't make much sense unless using Tru64 UNIX 5.1 with a
+ specific patch and >5.1.
+
+ 2002-10-11 Albert Chin-A-Young <
[email protected]>
+
+ * libtool.m4 (aix): When LDFLAGS="-Wl,-brtl,[other options]",
+ the "-brtl" special-case code for AIX never gets triggered
+ because were are being too specific about how we search for
+ "-brtl". Use case statement to avoid this. Remove extraneous
+ semicolon.
+ * ltmain.in: Recognize the IBM xlc compiler family.
+
+ 2002-10-11 Christoph Egger <
[email protected]>
+
+ * libtool.m4 (darwin): Add -install_name to the link line only
+ when -dynamiclib is specified for a module.
+ * ltmain.in (darwin): Use -bind_at_load when linking shared
+ libraries.
+
+ 2002-09-09 Albert Chin-A-Young <
[email protected]>
+
+ * libtool.m4: Custom $symcode for Tru64 UNIX to catch 'Q',
+ read-only constants.
+
+ 2002-09-09 Rainer Orth <
[email protected]>
+
+ * libtool.m4 (osf[345]): Append $major to soname_spec.
+ Reflect this in library_names_spec.
+ * ltmain.in (osf): Prefix $major with '.' for use as extension.
+
+ 2002-06-26 Bob Friesenhahn <
[email protected]>
+
+ * libtool.m4 (sys_lib_search_path_spec): Remove extraneous '='
+ character which appears in gcc 3.1 -print-search-dirs output.
+
+ 2002-06-23 Albert Chin-A-Young <
[email protected]>
+
+ * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): HP/UX needs
+ libltdl_cv_sys_dlopen_deplibs set to yes.
+
+ 2002-06-23 Gary V. Vaughan <
[email protected]>
+
+ * libltdl/ltdl.c (argz_insert): Actually, BEFORE can be NULL
+ when *PARGZ_LEN is non-NULL, so the assertion to the contrary was
+ bogus.
+ Reported by Bob Friesenhahn <
[email protected]>
+ and Albert Chin-A-Young <
[email protected]>
+
+ 2002-06-21 Gary V. Vaughan <
[email protected]>
+
+ * libltdl/ltdl.c (foreach_dirinpath): Ensure that filename is '\0'
+ terminated by all code paths.
+ Reported by Lutz M�ller <
[email protected]>
+
+ 2002-06-20 Gary V. Vaughan <
[email protected]>
+
+ From Kevin Ryde <
[email protected]>:
+ * doc/libtool.texi (Platform quirks): s/dependan/dependen/
+ * TODO: Ditto.
+
+ 2002-06-13 Rainer Orth <
[email protected]>
+
+ * ltmain.in (irix, nonstopux): Set major before use.
+
+ 2002-06-11 Daniel Kobras <
[email protected]>
+
+ * libltdl/ltdl.c (try_dlopen): Don't return bogus handle to user
+ if tryall_dlopen() fails.
+
+ 2002-05-06 Paul Eggert <
[email protected]>
+
+ * libtool.m4 (_LT_AC_LTCONFIG_HACK): head -1 -> sed 1q to
+ port to POSIX 1003.1-2001 hosts, like textutils 2.0.21 with
+ _POSIX2_VERSION=200112.
+
+ 2002-05-06 Paul Eggert <
[email protected]>
+
+ * ltmain.in: Don't assume that "sort +2" works, as POSIX
+ 1003.1-2001 says that "sort +2" is supposed to sort the file
+ named "+2". An example host that behaves like this is
+ textutils 2.0.21 with _POSIX2_VERSION=200112.
+
+ 2002-05-02 Dave Vasilevsky <
[email protected]>
+
+ * ltmain.in: Remove convenience libraries from deplibs for Darwin.
+
+ 2002-05-02 Fritz Elfert <
[email protected]>
+
+ * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Modify archive_expsym_cmds
+ to catch properly handle dll alias symbols.
+
+ 2002-04-14 Jean-Frederic Clere <
[email protected]>
+
+ * libtool.m4: Update support for Fujistu-Siemens Computers (FSC).
+ * ltmain.in: Add support for EBCDIC based systems.
+
+ 2002-03-16 Gary V. Vaughan <
[email protected]>
+
+ * TODO: Removed obsolete comments about RMS' package system.
+
+ 2002-03-07 Albert Chin-A-Young <
[email protected]>
+
+ * libtool.m4: Allow LT_AC_PROG_SED to work under autoconf
+ 2.13 and 2.5x with $ECHO_N/$ECHO_C and $ac_n/$ac_c.
+
+ 2002-02-25 Albert Chin-A-Young <
[email protected]>
+
+ * ltmain.in: Quote $pic_mode.
+
+ 2002-02-25 Albert Chin-A-Young <
[email protected]>
+
+ * ltmain.in: Fix version string under IRIX.
+
+ 2002-02-25 Albert Chin-A-Young <
[email protected]>
+
+ * libtool.m4 (LT_AC_PROG_SED): Use $ac_n and $ac_c rather than
+ $ECHO_N and $ECHO_C for new LT_AC_PROG_SED macro.
+ $ECHO_N and $ECHO_C defined for autoconf 2.50 and above only.
+
+ 2002-02-01 Robert Boehne <
[email protected]>
+
+ * libtool.m4 (LT_AC_PROG_SED): New macro tests sed for truncation of
+ output. AC_REQUIRE the new macro.
+ * ltmain.in: Use $SED rather than plan old sed, as set by the new
+ macro LT_AC_PROG_SED.
+
+ 2002-01-14 Ossama Othman <
[email protected]>
+
+ From Roger Leigh <
[email protected]>:
+ * libtoolize.in (auxdirline): Fixed hardcoded value of
+ "configure.in." Instead use "$configure_ac" variable. Corrects
+ AC_CONFIG_AUX_DIR support when using new style `configure.ac.'
+
+ * doc/libtool.texi: Corrected typo. "Safety" not "Saftey".
+
+ 2002-01-14 Robert Boehne <
[email protected]>
+
+ * libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Add mips/mipsel to list of
+ architectures for linux.
+
+ 2002-01-10 Volker Christian <
[email protected]>
+
+ * libltdl/ltdl.c (find_handle_callback): treat the result of a call
+ to access(2) correctly when deciding whether a library can be found
+ in a directory from user_search_path.
+
+ 2001-11-28 Robert Boehne <
[email protected]>
+
+ With help from Michael Matz <
[email protected]>:
+ * ltmain.in: Add a new command line argument
+ --preserve-dup-deps for preserving duplicate
+ dependent libraries.
+ * libtool.texi: Document it.
+
+ 2001-11-28 Gary V. Vaughan <
[email protected]>
+
+ * libtoolize.in: The test for whether AC_PROG_LIBTOOL is defined
+ in aclocal.m4 had bitrotted slightly.
+ Reported by Takahiko Kawasaki <
[email protected]>
+
+ 2001-11-27 Donald D. Anderson <
[email protected]>
+
+ * ltmain.in: Treat freebsd like openbsd, in that -lc/-lc_r should
+ not be explicitly used. ld handles this depending on the presence
+ of the -pthread option.
+
+ 2001-11-15 Guido Draheim <
[email protected]>
+
+ * ltdl.m4: Changed "underscode to underscore".
+
+ 2001-11-15 Gary V. Vaughan <
[email protected]>
+
+ From Joseph S. Myers <
[email protected]>:
+ * ltmain.in: Typo.
+
+ 2001-11-15 Mo DeJong <
[email protected]>
+
+ * ltmain.in: Place parens around a generated relink_command
+ so it is run is a subshell. This avoids an install error
+ where libtool ended up in the wrong directory after
+ relinking a .la file.
+
+ 2001-11-15 Guido Draheim <
[email protected]>
+
+ * ltmain.in: Display better and different error messages when
+ library linkage fails in various ways.
+
+ 2001-10-28 Gary V. Vaughan <
[email protected]>
+
+ From Tom Bates <
[email protected]>:
+ * libtool.m4 [mips-compaq-nonstopux]: New port.
+ * ltmain.in [mips-compaq-nonstopux]: Support
+ $version_type == nonstopux.
+ * NEWS: Updated.
+
+ 2001-10-28 Albert Chin-A-Young <
[email protected]>
+
+ * libltdl/ltdl.c (foreach_dirinpath): change some types to size_t
+ from int because strlen() returns size_t. argz_len changed to
+ size_t because argzize_path() takes 3rd argument as size_t, not
+ int.
+ Based on lint run from Bob Friesenhahn <
[email protected]>
+
+ 2001-10-27 Gary V. Vaughan <
[email protected]>
+
+ * ltdl.m4 (AC_WITH_LTDL): New macro to add `--with-included-ltdl'
+ option to configure, but to find an appropriate ltdl library and
+ append the right options to link it.
+
+ 2001-10-04 Albert Chin-A-Young <
[email protected]>
+
+ * libltdl/ltdl.c: Match function return type with prototype
+ (add static initializer to file_not_found).
+
+ 2001-09-30 Gary V. Vaughan <
[email protected]>
+
+ * libtool.m4 (AC_LIBLTDL_CONVENIENCE): s/INCLTDL/LTDLINCL/ for
+ consistency with gettext's INTLINCL. Keep the old symbol too for
+ backwards compatibility.
+ (AC_LIBLTDL_INSTALLABLE): Ditto.
+ * doc/libtool.texi (Distributing libltdl): Adjust documentation.
+
+ 22001-09-22 Albert Chin-A-Young <
[email protected]>
+
+ * ltdl.m4 (AC_LTDL_DLLIB): Even though HP-UX 10.20 and 11.00
+ support shl_load *and* dlopen, dlopen works correctly only
+ with a patch. Because we want to avoid the situation where we
+ build on a system with the patch but deploy on a system without,
+ use shl_load exclusively if found.
+
+ 2001-09-21 Gary V. Vaughan <
[email protected]>
+
+ From Tor Lillqvist <
[email protected]>:
+ * ltmain.in [cygwin* mingw*]: Take care of the difference between
+ wrapper script name and executable name.
+
+ * libtool.m4 (archive_cmds) [darwin1.[0-2]]: Darwin uses zsh-3.1.6
+ for /bin/sh, and that shell does not handle escaped quotes
+ properly yet.
+ Reported by Christopher Pfisterer <
[email protected]>
+
+ 2001-09-21 Albert Chin-A-Young <
[email protected]>
+
+ * libltdl/ltdl.c: Match function return type with prototype
+ (add static initializer to some functions) to prevent warnings
+ from HP-UX cc.
+
+ 2001-09-21 Gary V. Vaughan <
[email protected]>
+
+ * libltdl/ltdl.c: Added support for dmalloc, and uncovered some
+ memory bugs as a result.
+
+ 2001-09-13 Gary V. Vaughan <
[email protected]>
+
+ * ltmain.in (exec_cmd): Don't overquote or we end up with this:
+ $ libtool --mode=execute echo foo
+ "foo"
+ Reported by Rob Browning <
[email protected]>
+
+ 2001-09-13 Assar Westerlund <
[email protected]>
+
+ * ltdl.m4 (AC_LTDL_DLLIB): call dlopen with arguments so the test
+ does not fail due to a prototype in dlfcn.h
+
2001-09-11 Gary V. Vaughan <
[email protected]>
+ * libltdl/Makefile.am (OBJECTS): In addition to making $(OBJECTS)
+ depend on libtool -- which causes Automake 1.4 to generate the
+ ibtool script in this directory during bootstrap -- also add
+ libltdl_la_OBJECTS and libltdlc_la_OBJECTS, the Automake 1.5
+ equivalents.
+ * NEWS: Updated.
+
+ * bootstrap: Be robust to having no files that need removing.
+
+ * configure.in: Bumped version to 1.4.2a.
+
GNU libtool 1.4.2 was released.
* configure.in: Bumped version to 1.4.2.
***************
*** 48,54 ****
(AC_PROG_LD): Don't forget to AC_REQUIRE it! Be careful not to
set IFS="${IFS}$PATH_SEPARATOR" for PATH splitting, otherwise
spaces in directory names will be lost.
! (AC_PROG_NM): Dittp.
* ltmain.in: Default IFS once, at the start.
Reported by Akim Demaille <
[email protected]>
--- 366,372 ----
(AC_PROG_LD): Don't forget to AC_REQUIRE it! Be careful not to
set IFS="${IFS}$PATH_SEPARATOR" for PATH splitting, otherwise
spaces in directory names will be lost.
! (AC_PROG_NM): Ditto.
* ltmain.in: Default IFS once, at the start.
Reported by Akim Demaille <
[email protected]>
***************
*** 3842,3845 ****
Continued in ChangeLog.0
! $Revision: 1.922.2.54 $ $Date: 2001/09/11 03:33:37 $
--- 4160,4163 ----
Continued in ChangeLog.0
! $Revision: 1.922.2.111 $ $Date: 2002/10/23 02:54:36 $
Index: libtool/NEWS
diff -c libtool/NEWS:1.91.2.7 libtool/NEWS:1.91.2.10
*** libtool/NEWS:1.91.2.7 Mon Sep 10 23:33:37 2001
--- libtool/NEWS Tue Oct 22 22:54:36 2002
***************
*** 1,9 ****
NEWS - list of user-visible changes between releases of GNU Libtool
New in 1.4.2: 2001-09-11; CVS version 1.4.1a, Gary V. Vaughan:
* libltdl now builds on solaris again
* diagnose and warn about not-quite-working combinations of gcc and
! * ld on solaris
* Improved OpenBSD support.
* Improved cygwin support.
* Bugfixes.
--- 1,16 ----
NEWS - list of user-visible changes between releases of GNU Libtool
+ New in 1.4.3: 2002-10-13; CVS version 1.4.2a, Robert Boehne:
+ * The libltdl subdirectory now bootstraps correctly with Automake 1.5.
+ * srcdir != builddir builds with Automake 1.5 work correctly.
+ * Support for mips-compaq-nonstopux.
+ * New command line argument, --preserve-dup-deps prevents removal of
+ duplicate dependent libraries.
+
New in 1.4.2: 2001-09-11; CVS version 1.4.1a, Gary V. Vaughan:
* libltdl now builds on solaris again
* diagnose and warn about not-quite-working combinations of gcc and
! ld on solaris.
* Improved OpenBSD support.
* Improved cygwin support.
* Bugfixes.
Index: libtool/TODO
diff -c libtool/TODO:1.46.2.1 libtool/TODO:1.46.2.3
*** libtool/TODO:1.46.2.1 Sun Sep 2 21:48:29 2001
--- libtool/TODO Thu Jun 20 03:06:29 2002
***************
*** 7,13 ****
* Fix the following bugs in libltdl:
- Report dlerror() for dlclose and dlsym if available
- Make sure that the dependency_libs of a dlpreopened module won't be loaded.
!
* Check whether the version of libtool.m4 is compatible with
ltconfig/ltmain.sh. Meanwhile, the recommended approach for
developers using automake is to insert libtool.m4 in acinclude.m4.
--- 7,13 ----
* Fix the following bugs in libltdl:
- Report dlerror() for dlclose and dlsym if available
- Make sure that the dependency_libs of a dlpreopened module won't be loaded.
!
* Check whether the version of libtool.m4 is compatible with
ltconfig/ltmain.sh. Meanwhile, the recommended approach for
developers using automake is to insert libtool.m4 in acinclude.m4.
***************
*** 55,62 ****
* Godmar Back writes:
libltdl uses such stdio functions as fopen, fgets, feof, fclose, and others.
! These functions are not async-signal-safe. While this does not make
! libltdl unusable, it restricts its usefulness and puts an
unnecessary burden on the user.
As a remedy, I'd recommend to replace those functions with functions
--- 55,62 ----
* Godmar Back writes:
libltdl uses such stdio functions as fopen, fgets, feof, fclose, and others.
! These functions are not async-signal-safe. While this does not make
! libltdl unusable, it restricts its usefulness and puts an
unnecessary burden on the user.
As a remedy, I'd recommend to replace those functions with functions
***************
*** 66,72 ****
out from which you can steal the latter.
I believe relying on async-signal-safe functions to the greatest extent
! possible would greatly improve libltdl's ability to be embedded in and
used by other systems.
* Arrange that EXEEXT suffixes are stripped from wrapper script names
--- 66,72 ----
out from which you can steal the latter.
I believe relying on async-signal-safe functions to the greatest extent
! possible would greatly improve libltdl's ability to be embedded in and
used by other systems.
* Arrange that EXEEXT suffixes are stripped from wrapper script names
***************
*** 81,87 ****
each object compilation line.
*
[email protected] writes
! all you need to do for mutually dependant
.dll's is to create an implib from a .def file
so it appears that we might need to detect and handle mutual dependencies
specially on win32 =(O|
--- 81,87 ----
each object compilation line.
*
[email protected] writes
! all you need to do for mutually dependent
.dll's is to create an implib from a .def file
so it appears that we might need to detect and handle mutual dependencies
specially on win32 =(O|
***************
*** 145,157 ****
Things to think about:
**********************
-
- * Talk with RMS about his so-called `automatic package generation
- tool.' This is probably what Thomas has been murmuring about for the
- Hurd. We'll need to integrate package-supplied programs such as
- libtool into that scheme, since it manages some of the preinstall and
- postinstall commands, but isn't installed itself. Probably, things
- like libtool should be distributed as part of such a binary package.
* Maybe implement full support for other orthogonal library types
(libhello_g, libhello_p, 64 vs 32-bit ABI's, etc). Make these types
--- 145,150 ----
Index: libtool/bootstrap
diff -c libtool/bootstrap:1.16.2.3 libtool/bootstrap:1.16.2.4
*** libtool/bootstrap:1.16.2.3 Mon Sep 10 18:25:55 2001
--- libtool/bootstrap Tue Sep 11 15:09:39 2001
***************
*** 3,9 ****
# helps bootstrapping libtool, when checked out from CVS
# requires GNU autoconf and GNU automake
! find . \( -name autom4te.cache -o -name libtool \) -print | xargs rm -r
file=Makefile.in
--- 3,9 ----
# helps bootstrapping libtool, when checked out from CVS
# requires GNU autoconf and GNU automake
! find . \( -name autom4te.cache -o -name libtool \) -exec rm -r {} \;
file=Makefile.in
Index: libtool/config.guess
diff -c libtool/config.guess:1.9.2.2 libtool/config.guess:1.9.2.3
*** libtool/config.guess:1.9.2.2 Mon Sep 10 23:33:37 2001
--- libtool/config.guess Tue Oct 22 22:54:36 2002
***************
*** 1,9 ****
#! /bin/sh
# Attempt to guess a canonical system name.
! # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
! # Free Software Foundation, Inc.
! timestamp='2001-09-04'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
--- 1,9 ----
#! /bin/sh
# Attempt to guess a canonical system name.
! # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
! # 2000, 2001, 2002 Free Software Foundation, Inc.
! timestamp='2002-10-21'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
***************
*** 24,31 ****
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
! # Written by Per Bothner <
[email protected]>.
! # Please send patches to <
[email protected]>.
#
# This script attempts to guess a canonical system name similar to
# config.sub. If it succeeds, it prints the system name on stdout, and
--- 24,32 ----
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
! # Originally written by Per Bothner <
[email protected]>.
! # Please send patches to <
[email protected]>. Submit a context
! # diff and a properly formatted ChangeLog entry.
#
# This script attempts to guess a canonical system name similar to
# config.sub. If it succeeds, it prints the system name on stdout, and
***************
*** 87,116 ****
exit 1
fi
! dummy=dummy-$$
! trap 'rm -f $dummy.c $dummy.o $dummy.rel $dummy; exit 1' 1 2 15
- # CC_FOR_BUILD -- compiler used by this script.
# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
# use `HOST_CC' if defined, but it is deprecated.
! set_cc_for_build='case $CC_FOR_BUILD,$HOST_CC,$CC in
! ,,) echo "int dummy(){}" > $dummy.c ;
! for c in cc gcc c89 ; do
! ($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1 ;
! if test $? = 0 ; then
CC_FOR_BUILD="$c"; break ;
fi ;
done ;
! rm -f $dummy.c $dummy.o $dummy.rel ;
if test x"$CC_FOR_BUILD" = x ; then
CC_FOR_BUILD=no_compiler_found ;
fi
;;
,,*) CC_FOR_BUILD=$CC ;;
,*,*) CC_FOR_BUILD=$HOST_CC ;;
! esac'
# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
# (
[email protected] 1994-08-24)
--- 88,127 ----
exit 1
fi
+ trap 'exit 1' 1 2 15
! # CC_FOR_BUILD -- compiler used by this script. Note that the use of a
! # compiler to aid in system detection is discouraged as it requires
! # temporary files to be created and, as you can see below, it is a
! # headache to deal with in a portable fashion.
# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
# use `HOST_CC' if defined, but it is deprecated.
! # This shell variable is my proudest work .. or something. --bje
!
! set_cc_for_build='tmpdir=${TMPDIR-/tmp}/config-guess-$$ ;
! (old=`umask` && umask 077 && mkdir $tmpdir && umask $old && unset old)
! || (echo "$me: cannot create $tmpdir" >&2 && exit 1) ;
! dummy=$tmpdir/dummy ;
! files="$dummy.c $dummy.o $dummy.rel $dummy" ;
! trap '"'"'rm -f $files; rmdir $tmpdir; exit 1'"'"' 1 2 15 ;
! case $CC_FOR_BUILD,$HOST_CC,$CC in
! ,,) echo "int x;" > $dummy.c ;
! for c in cc gcc c89 c99 ; do
! if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
CC_FOR_BUILD="$c"; break ;
fi ;
done ;
! rm -f $files ;
if test x"$CC_FOR_BUILD" = x ; then
CC_FOR_BUILD=no_compiler_found ;
fi
;;
,,*) CC_FOR_BUILD=$CC ;;
,*,*) CC_FOR_BUILD=$HOST_CC ;;
! esac ;
! unset files'
# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
# (
[email protected] 1994-08-24)
***************
*** 127,155 ****
case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
*:NetBSD:*:*)
! # Netbsd (nbsd) targets should (where applicable) match one or
# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
# *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
# switched to ELF, *-*-netbsd* would select the old
# object file format. This provides both forward
# 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-unknown ;;
! arm32) machine=arm-unknown ;;
! atari*) machine=m68k-atari ;;
! sun3*) machine=m68k-sun ;;
! mac68k) machine=m68k-apple ;;
! macppc) machine=powerpc-apple ;;
! hp3[0-9][05]) machine=m68k-hp ;;
! ibmrt|romp-ibm) machine=romp-ibm ;;
! *) machine=${UNAME_MACHINE}-unknown ;;
esac
# The Operating System including object format, if it has switched
# to ELF recently, or will in the future.
! case "${UNAME_MACHINE}" in
! i386|sparc|amiga|arm*|hp300|mvme68k|vax|atari|luna68k|mac68k|news68k|next68k|pc532|sun3*|x68k)
eval $set_cc_for_build
if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
| grep __ELF__ >/dev/null
--- 138,167 ----
case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
*:NetBSD:*:*)
! # NetBSD (nbsd) targets should (where applicable) match one or
# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
# *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
# switched to ELF, *-*-netbsd* would select the old
# object file format. This provides both forward
# compatibility and a consistent mechanism for selecting the
# object file format.
! #
! # Note: NetBSD doesn't particularly care about the vendor
! # portion of the name. We always set it to "unknown".
! sysctl="sysctl -n hw.machine_arch"
! UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
! /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
! case "${UNAME_MACHINE_ARCH}" in
! armeb) machine=armeb-unknown ;;
! arm*) machine=arm-unknown ;;
! sh3el) machine=shl-unknown ;;
! sh3eb) machine=sh-unknown ;;
! *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
esac
# The Operating System including object format, if it has switched
# to ELF recently, or will in the future.
! case "${UNAME_MACHINE_ARCH}" in
! arm*|i386|m68k|ns32k|sh3*|sparc|vax)
eval $set_cc_for_build
if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
| grep __ELF__ >/dev/null
***************
*** 172,177 ****
--- 184,228 ----
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
echo "${machine}-${os}${release}"
exit 0 ;;
+ amiga:OpenBSD:*:*)
+ echo m68k-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ arc:OpenBSD:*:*)
+ echo mipsel-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ hp300:OpenBSD:*:*)
+ echo m68k-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ mac68k:OpenBSD:*:*)
+ echo m68k-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ macppc:OpenBSD:*:*)
+ echo powerpc-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ mvme68k:OpenBSD:*:*)
+ echo m68k-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ mvme88k:OpenBSD:*:*)
+ echo m88k-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ mvmeppc:OpenBSD:*:*)
+ echo powerpc-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ pmax:OpenBSD:*:*)
+ echo mipsel-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ sgi:OpenBSD:*:*)
+ echo mipseb-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ sun3:OpenBSD:*:*)
+ echo m68k-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ wgrisc:OpenBSD:*:*)
+ echo mipsel-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
+ *:OpenBSD:*:*)
+ echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
+ exit 0 ;;
alpha:OSF1:*:*)
if test $UNAME_RELEASE = "V4.0"; then
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
***************
*** 180,185 ****
--- 231,237 ----
# A Tn.n version is a released field test version.
# A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r.
+ eval $set_cc_for_build
cat <<EOF >$dummy.s
.data
\$Lformat:
***************
*** 205,214 ****
jsr \$26,exit
.end main
EOF
! eval $set_cc_for_build
! $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
if test "$?" = 0 ; then
! case `./$dummy` in
0-0)
UNAME_MACHINE="alpha"
;;
--- 257,265 ----
jsr \$26,exit
.end main
EOF
! $CC_FOR_BUILD -o $dummy $dummy.s 2>/dev/null
if test "$?" = 0 ; then
! case `$dummy` in
0-0)
UNAME_MACHINE="alpha"
;;
***************
*** 230,238 ****
2-1307)
UNAME_MACHINE="alphaev68"
;;
esac
fi
! rm -f $dummy.s $dummy
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
exit 0 ;;
Alpha\ *:Windows_NT*:*)
--- 281,292 ----
2-1307)
UNAME_MACHINE="alphaev68"
;;
+ 3-1307)
+ UNAME_MACHINE="alphaev7"
+ ;;
esac
fi
! rm -f $dummy.s $dummy && rmdir $tmpdir
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
exit 0 ;;
Alpha\ *:Windows_NT*:*)
***************
*** 247,275 ****
Amiga*:UNIX_System_V:4.0:*)
echo m68k-unknown-sysv4
exit 0;;
- amiga:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
*:[Aa]miga[Oo][Ss]:*:*)
echo ${UNAME_MACHINE}-unknown-amigaos
exit 0 ;;
! arc64:OpenBSD:*:*)
! echo mips64el-unknown-openbsd${UNAME_RELEASE}
! exit 0 ;;
! arc:OpenBSD:*:*)
! echo mipsel-unknown-openbsd${UNAME_RELEASE}
! exit 0 ;;
! hkmips:OpenBSD:*:*)
! echo mips-unknown-openbsd${UNAME_RELEASE}
! exit 0 ;;
! pmax:OpenBSD:*:*)
! echo mipsel-unknown-openbsd${UNAME_RELEASE}
! exit 0 ;;
! sgi:OpenBSD:*:*)
! echo mips-unknown-openbsd${UNAME_RELEASE}
! exit 0 ;;
! wgrisc:OpenBSD:*:*)
! echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
*:OS/390:*:*)
echo i370-ibm-openedition
--- 301,311 ----
Amiga*:UNIX_System_V:4.0:*)
echo m68k-unknown-sysv4
exit 0;;
*:[Aa]miga[Oo][Ss]:*:*)
echo ${UNAME_MACHINE}-unknown-amigaos
exit 0 ;;
! *:[Mm]orph[Oo][Ss]:*:*)
! echo ${UNAME_MACHINE}-unknown-morphos
exit 0 ;;
*:OS/390:*:*)
echo i370-ibm-openedition
***************
*** 291,296 ****
--- 327,336 ----
NILE*:*:*:dcosx)
echo pyramid-pyramid-svr4
exit 0 ;;
+ DRS?6000:UNIX_SV:4.2*:7*)
+ case `/usr/bin/uname -p` in
+ sparc) echo sparc-icl-nx7 && exit 0 ;;
+ esac ;;
sun4H:SunOS:5.*:*)
echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
***************
*** 319,325 ****
echo m68k-sun-sunos${UNAME_RELEASE}
exit 0 ;;
sun*:*:4.2BSD:*)
! UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
case "`/bin/arch`" in
sun3)
--- 359,365 ----
echo m68k-sun-sunos${UNAME_RELEASE}
exit 0 ;;
sun*:*:4.2BSD:*)
! UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
case "`/bin/arch`" in
sun3)
***************
*** 333,344 ****
aushp:SunOS:*:*)
echo sparc-auspex-sunos${UNAME_RELEASE}
exit 0 ;;
- sparc*:NetBSD:*)
- echo `uname -p`-unknown-netbsd${UNAME_RELEASE}
- exit 0 ;;
- atari*:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
# The situation for MiNT is a little confusing. The machine name
# can be virtually everything (everything which is not
# "atarist" or "atariste" at least should have a processor
--- 373,378 ----
***************
*** 365,382 ****
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
echo m68k-unknown-mint${UNAME_RELEASE}
exit 0 ;;
- sun3*:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- mac68k:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- mvme68k:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
- mvme88k:OpenBSD:*:*)
- echo m88k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
powerpc:machten:*:*)
echo powerpc-apple-machten${UNAME_RELEASE}
exit 0 ;;
--- 399,404 ----
***************
*** 415,429 ****
exit (-1);
}
EOF
! $CC_FOR_BUILD $dummy.c -o $dummy \
! && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
! && rm -f $dummy.c $dummy && exit 0
! rm -f $dummy.c $dummy
echo mips-mips-riscos${UNAME_RELEASE}
exit 0 ;;
Motorola:PowerMAX_OS:*:*)
echo powerpc-motorola-powermax
exit 0 ;;
Night_Hawk:Power_UNIX:*:*)
echo powerpc-harris-powerunix
exit 0 ;;
--- 437,457 ----
exit (-1);
}
EOF
! $CC_FOR_BUILD -o $dummy $dummy.c \
! && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
! && rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
! rm -f $dummy.c $dummy && rmdir $tmpdir
echo mips-mips-riscos${UNAME_RELEASE}
exit 0 ;;
Motorola:PowerMAX_OS:*:*)
echo powerpc-motorola-powermax
exit 0 ;;
+ Motorola:*:4.3:PL8-*)
+ echo powerpc-harris-powermax
+ exit 0 ;;
+ Night_Hawk:*:*:PowerMAX_OS)
+ echo powerpc-harris-powermax
+ exit 0 ;;
Night_Hawk:Power_UNIX:*:*)
echo powerpc-harris-powerunix
exit 0 ;;
***************
*** 496,503 ****
exit(0);
}
EOF
! $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
! rm -f $dummy.c $dummy
echo rs6000-ibm-aix3.2.5
elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
echo rs6000-ibm-aix3.2.4
--- 524,531 ----
exit(0);
}
EOF
! $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
! rm -f $dummy.c $dummy && rmdir $tmpdir
echo rs6000-ibm-aix3.2.5
elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
echo rs6000-ibm-aix3.2.4
***************
*** 506,512 ****
fi
exit 0 ;;
*:AIX:*:[45])
! IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'`
if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
IBM_ARCH=rs6000
else
--- 534,540 ----
fi
exit 0 ;;
*:AIX:*:[45])
! IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
IBM_ARCH=rs6000
else
***************
*** 546,555 ****
9000/31? ) HP_ARCH=m68000 ;;
9000/[34]?? ) HP_ARCH=m68k ;;
9000/[678][0-9][0-9])
! case "${HPUX_REV}" in
! 11.[0-9][0-9])
! if [ -x /usr/bin/getconf ]; then
! sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
case "${sc_cpu_version}" in
523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
--- 574,581 ----
9000/31? ) HP_ARCH=m68000 ;;
9000/[34]?? ) HP_ARCH=m68k ;;
9000/[678][0-9][0-9])
! if [ -x /usr/bin/getconf ]; then
! sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
case "${sc_cpu_version}" in
523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
***************
*** 558,570 ****
case "${sc_kernel_bits}" in
32) HP_ARCH="hppa2.0n" ;;
64) HP_ARCH="hppa2.0w" ;;
esac ;;
esac
! fi ;;
! esac
! if [ "${HP_ARCH}" = "" ]; then
! eval $set_cc_for_build
! sed 's/^ //' << EOF >$dummy.c
#define _HPUX_SOURCE
#include <stdlib.h>
--- 584,596 ----
case "${sc_kernel_bits}" in
32) HP_ARCH="hppa2.0n" ;;
64) HP_ARCH="hppa2.0w" ;;
+ '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
esac ;;
esac
! fi
! if [ "${HP_ARCH}" = "" ]; then
! eval $set_cc_for_build
! sed 's/^ //' << EOF >$dummy.c
#define _HPUX_SOURCE
#include <stdlib.h>
***************
*** 597,606 ****
exit (0);
}
EOF
! (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
! if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi
! rm -f $dummy.c $dummy
! fi ;;
esac
echo ${HP_ARCH}-hp-hpux${HPUX_REV}
exit 0 ;;
--- 623,632 ----
exit (0);
}
EOF
! (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
! if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi
! rm -f $dummy.c $dummy && rmdir $tmpdir
! fi ;;
esac
echo ${HP_ARCH}-hp-hpux${HPUX_REV}
exit 0 ;;
***************
*** 635,642 ****
exit (0);
}
EOF
! $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
! rm -f $dummy.c $dummy
echo unknown-hitachi-hiuxwe2
exit 0 ;;
9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
--- 661,668 ----
exit (0);
}
EOF
! $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
! rm -f $dummy.c $dummy && rmdir $tmpdir
echo unknown-hitachi-hiuxwe2
exit 0 ;;
9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
***************
*** 664,672 ****
parisc*:Lites*:*:*)
echo hppa1.1-hp-lites
exit 0 ;;
- hppa*:OpenBSD:*:*)
- echo hppa-unknown-openbsd
- exit 0 ;;
C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
echo c1-convex-bsd
exit 0 ;;
--- 690,695 ----
***************
*** 685,693 ****
C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
echo c4-convex-bsd
exit 0 ;;
- CRAY*X-MP:*:*:*)
- echo xmp-cray-unicos
- exit 0 ;;
CRAY*Y-MP:*:*:*)
echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
--- 708,713 ----
***************
*** 709,726 ****
CRAY*SV1:*:*:*)
echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;;
- CRAY-2:*:*:*)
- echo cray2-cray-unicos
- exit 0 ;;
F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
exit 0 ;;
- hp300:OpenBSD:*:*)
- echo m68k-unknown-openbsd${UNAME_RELEASE}
- exit 0 ;;
i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
exit 0 ;;
--- 729,740 ----
***************
*** 731,740 ****
echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
exit 0 ;;
*:FreeBSD:*:*)
! echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
! exit 0 ;;
! *:OpenBSD:*:*)
! echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
exit 0 ;;
i*:CYGWIN*:*)
echo ${UNAME_MACHINE}-pc-cygwin
--- 745,763 ----
echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
exit 0 ;;
*:FreeBSD:*:*)
! # Determine whether the default compiler uses glibc.
! eval $set_cc_for_build
! sed 's/^ //' << EOF >$dummy.c
! #include <features.h>
! #if __GLIBC__ >= 2
! LIBC=gnu
! #else
! LIBC=
! #endif
! EOF
! eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
! rm -f $dummy.c && rmdir $tmpdir
! echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC}
exit 0 ;;
i*:CYGWIN*:*)
echo ${UNAME_MACHINE}-pc-cygwin
***************
*** 745,750 ****
--- 768,776 ----
i*:PW*:*)
echo ${UNAME_MACHINE}-pc-pw32
exit 0 ;;
+ x86:Interix*:3*)
+ echo i386-pc-interix3
+ exit 0 ;;
i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
# How do we know it's Interix rather than the generic POSIX subsystem?
# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
***************
*** 770,785 ****
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit 0 ;;
ia64:Linux:*:*)
! echo ${UNAME_MACHINE}-unknown-linux
exit 0 ;;
m68*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit 0 ;;
mips:Linux:*:*)
! case `sed -n '/^byte/s/^.*: \(.*\) endian/\1/p' < /proc/cpuinfo` in
! big) echo mips-unknown-linux-gnu && exit 0 ;;
! little) echo mipsel-unknown-linux-gnu && exit 0 ;;
! esac
;;
ppc:Linux:*:*)
echo powerpc-unknown-linux-gnu
--- 796,825 ----
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit 0 ;;
ia64:Linux:*:*)
! echo ${UNAME_MACHINE}-unknown-linux-gnu
exit 0 ;;
m68*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
exit 0 ;;
mips:Linux:*:*)
! eval $set_cc_for_build
! sed 's/^ //' << EOF >$dummy.c
! #undef CPU
! #undef mips
! #undef mipsel
! #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
! CPU=mipsel
! #else
! #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
! CPU=mips
! #else
! CPU=
! #endif
! #endif
! EOF
! eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
! rm -f $dummy.c && rmdir $tmpdir
! test x"${CPU}" != x && echo "${CPU}-pc-linux-gnu" && exit 0
;;
ppc:Linux:*:*)
echo powerpc-unknown-linux-gnu
***************
*** 828,834 ****
# The BFD linker knows what the default object file format is, so
# first see if it will tell us. cd to the root directory to prevent
# problems with other programs or directories called `ld' in the path.
! ld_supported_targets=`cd /; ld --help 2>&1 \
| sed -ne '/supported targets:/!d
s/[ ][ ]*/ /g
s/.*supported targets: *//
--- 868,875 ----
# The BFD linker knows what the default object file format is, so
# first see if it will tell us. cd to the root directory to prevent
# problems with other programs or directories called `ld' in the path.
! # Set LC_ALL=C to ensure ld outputs messages in English.
! ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
| sed -ne '/supported targets:/!d
s/[ ][ ]*/ /g
s/.*supported targets: *//
***************
*** 840,846 ****
;;
a.out-i386-linux)
echo "${UNAME_MACHINE}-pc-linux-gnuaout"
! exit 0 ;;
coff-i386)
echo "${UNAME_MACHINE}-pc-linux-gnucoff"
exit 0 ;;
--- 881,887 ----
;;
a.out-i386-linux)
echo "${UNAME_MACHINE}-pc-linux-gnuaout"
! exit 0 ;;
coff-i386)
echo "${UNAME_MACHINE}-pc-linux-gnucoff"
exit 0 ;;
***************
*** 852,883 ****
esac
# Determine whether the default compiler is a.out or elf
eval $set_cc_for_build
! cat >$dummy.c <<EOF
! #include <features.h>
! #ifdef __cplusplus
! #include <stdio.h> /* for printf() prototype */
! int main (int argc, char *argv[]) {
! #else
! int main (argc, argv) int argc; char *argv[]; {
! #endif
! #ifdef __ELF__
! # ifdef __GLIBC__
! # if __GLIBC__ >= 2
! printf ("%s-pc-linux-gnu\n", argv[1]);
! # else
! printf ("%s-pc-linux-gnulibc1\n", argv[1]);
! # endif
! # else
! printf ("%s-pc-linux-gnulibc1\n", argv[1]);
! # endif
! #else
! printf ("%s-pc-linux-gnuaout\n", argv[1]);
! #endif
! return 0;
! }
EOF
! $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm -f $dummy.c $dummy && exit 0
! rm -f $dummy.c $dummy
test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
;;
i*86:DYNIX/ptx:4*:*)
--- 893,921 ----
esac
# Determine whether the default compiler is a.out or elf
eval $set_cc_for_build
! sed 's/^ //' << EOF >$dummy.c
! #include <features.h>
! #ifdef __ELF__
! # ifdef __GLIBC__
! # if __GLIBC__ >= 2
! LIBC=gnu
! # else
! LIBC=gnulibc1
! # endif
! # else
! LIBC=gnulibc1
! # endif
! #else
! #ifdef __INTEL_COMPILER
! LIBC=gnu
! #else
! LIBC=gnuaout
! #endif
! #endif
EOF
! eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
! rm -f $dummy.c && rmdir $tmpdir
! test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
;;
i*86:DYNIX/ptx:4*:*)
***************
*** 915,927 ****
UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
elif /bin/uname -X 2>/dev/null >/dev/null ; then
! UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
! (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
! (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
&& UNAME_MACHINE=i586
! (/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \
&& UNAME_MACHINE=i686
! (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \
&& UNAME_MACHINE=i686
echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
else
--- 953,965 ----
UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
elif /bin/uname -X 2>/dev/null >/dev/null ; then
! UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
! (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
! (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
&& UNAME_MACHINE=i586
! (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
&& UNAME_MACHINE=i686
! (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
&& UNAME_MACHINE=i686
echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
else
***************
*** 954,962 ****
# "miniframe"
echo m68010-convergent-sysv
exit 0 ;;
M68*:*:R3V[567]*:*)
test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
! 3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
OS_REL=''
test -r /etc/.relid \
&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
--- 992,1003 ----
# "miniframe"
echo m68010-convergent-sysv
exit 0 ;;
+ mc68k:UNIX:SYSTEM5:3.51m)
+ echo m68k-convergent-sysv
+ exit 0 ;;
M68*:*:R3V[567]*:*)
test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
! 3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0)
OS_REL=''
test -r /etc/.relid \
&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
***************
*** 1047,1052 ****
--- 1088,1096 ----
SX-5:SUPER-UX:*:*)
echo sx5-nec-superux${UNAME_RELEASE}
exit 0 ;;
+ SX-6:SUPER-UX:*:*)
+ echo sx6-nec-superux${UNAME_RELEASE}
+ exit 0 ;;
Power*:Rhapsody:*:*)
echo powerpc-apple-rhapsody${UNAME_RELEASE}
exit 0 ;;
***************
*** 1057,1071 ****
echo `uname -p`-apple-darwin${UNAME_RELEASE}
exit 0 ;;
*:procnto*:*:* | *:QNX:[0123456789]*:*)
! if test "${UNAME_MACHINE}" = "x86pc"; then
UNAME_MACHINE=pc
fi
! echo `uname -p`-${UNAME_MACHINE}-nto-qnx
exit 0 ;;
*:QNX:*:4*)
echo i386-pc-qnx
exit 0 ;;
! NSR-[KW]:NONSTOP_KERNEL:*:*)
echo nsr-tandem-nsk${UNAME_RELEASE}
exit 0 ;;
*:NonStop-UX:*:*)
--- 1101,1117 ----
echo `uname -p`-apple-darwin${UNAME_RELEASE}
exit 0 ;;
*:procnto*:*:* | *:QNX:[0123456789]*:*)
! UNAME_PROCESSOR=`uname -p`
! if test "$UNAME_PROCESSOR" = "x86"; then
! UNAME_PROCESSOR=i386
UNAME_MACHINE=pc
fi
! echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
exit 0 ;;
*:QNX:*:4*)
echo i386-pc-qnx
exit 0 ;;
! NSR-[DGKLNPTVW]:NONSTOP_KERNEL:*:*)
echo nsr-tandem-nsk${UNAME_RELEASE}
exit 0 ;;
*:NonStop-UX:*:*)
***************
*** 1237,1244 ****
}
EOF
! $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm -f $dummy.c $dummy && exit 0
! rm -f $dummy.c $dummy
# Apollos put the system type in the environment.
--- 1283,1290 ----
}
EOF
! $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && rm -f $dummy.c $dummy && rmdir $tmpdir && exit 0
! rm -f $dummy.c $dummy && rmdir $tmpdir
# Apollos put the system type in the environment.
Index: libtool/config.sub
diff -c libtool/config.sub:1.8.2.2 libtool/config.sub:1.8.2.3
*** libtool/config.sub:1.8.2.2 Mon Sep 10 23:33:37 2001
--- libtool/config.sub Tue Oct 22 22:54:36 2002
***************
*** 1,9 ****
#! /bin/sh
# Configuration validation subroutine script.
! # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
! # Free Software Foundation, Inc.
! timestamp='2001-09-07'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
--- 1,9 ----
#! /bin/sh
# Configuration validation subroutine script.
! # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
! # 2000, 2001, 2002 Free Software Foundation, Inc.
! timestamp='2002-09-05'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
***************
*** 29,35 ****
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
! # Please send patches to <
[email protected]>.
#
# Configuration subroutine to validate and canonicalize a configuration type.
# Supply the specified configuration type as an argument.
--- 29,36 ----
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
! # Please send patches to <
[email protected]>. Submit a context
! # diff and a properly formatted ChangeLog entry.
#
# Configuration subroutine to validate and canonicalize a configuration type.
# Supply the specified configuration type as an argument.
***************
*** 117,123 ****
# Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in
! nto-qnx* | linux-gnu* | storm-chaos* | os2-emx* | windows32-*)
os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
;;
--- 118,124 ----
# Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in
! nto-qnx* | linux-gnu* | freebsd*-gnu* | storm-chaos* | os2-emx* | windows32-* | rtmk-nova*)
os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
;;
***************
*** 226,257 ****
1750a | 580 \
| a29k \
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
! | c4x | clipper \
! | d10v | d30v | dsp16xx \
! | fr30 \
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
| i370 | i860 | i960 | ia64 \
| m32r | m68000 | m68k | m88k | mcore \
! | mips16 | mips64 | mips64el | mips64orion | mips64orionel \
! | mips64vr4100 | mips64vr4100el | mips64vr4300 \
! | mips64vr4300el | mips64vr5000 | mips64vr5000el \
! | mipsbe | mipseb | mipsel | mipsle | mipstx39 | mipstx39el \
! | mipsisa32 \
| mn10200 | mn10300 \
| ns16k | ns32k \
! | openrisc \
| pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
| pyramid \
! | s390 | s390x \
! | sh | sh[34] | sh[34]eb | shbe | shle \
! | sparc | sparc64 | sparclet | sparclite | sparcv9 | sparcv9b \
! | stormy16 | strongarm \
| tahoe | thumb | tic80 | tron \
! | v850 \
| we32k \
! | x86 | xscale \
| z8k)
basic_machine=$basic_machine-unknown
;;
--- 227,268 ----
1750a | 580 \
| a29k \
| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
+ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
! | clipper \
! | d10v | d30v | dlx | dsp16xx \
! | fr30 | frv \
| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
| i370 | i860 | i960 | ia64 \
+ | ip2k \
| m32r | m68000 | m68k | m88k | mcore \
! | mips | mipsbe | mipseb | mipsel | mipsle \
! | mips16 \
! | mips64 | mips64el \
! | mips64vr | mips64vrel \
! | mips64orion | mips64orionel \
! | mips64vr4100 | mips64vr4100el \
! | mips64vr4300 | mips64vr4300el \
! | mips64vr5000 | mips64vr5000el \
! | mipsisa32 | mipsisa32el \
! | mipsisa64 | mipsisa64el \
! | mipsisa64sb1 | mipsisa64sb1el \
! | mipsisa64sr71k | mipsisa64sr71kel \
! | mipstx39 | mipstx39el \
| mn10200 | mn10300 \
| ns16k | ns32k \
! | openrisc | or32 \
| pdp10 | pdp11 | pj | pjl \
| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
| pyramid \
! | sh | sh[1234] | sh3e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
! | sh64 | sh64le \
! | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \
! | strongarm \
| tahoe | thumb | tic80 | tron \
! | v850 | v850e \
| we32k \
! | x86 | xscale | xstormy16 | xtensa \
| z8k)
basic_machine=$basic_machine-unknown
;;
***************
*** 278,315 ****
580-* \
| a29k-* \
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
! | alphapca5[67]-* | arc-* \
! | arm-* | armbe-* | armle-* | armv*-* \
| bs2000-* \
! | c[123]* | c30-* | [cjt]90-* | c54x-* \
! | clipper-* | cray2-* | cydra-* \
! | d10v-* | d30v-* \
| elxsi-* \
! | f30[01]-* | f700-* | fr30-* | fx80-* \
| h8300-* | h8500-* \
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
| i*86-* | i860-* | i960-* | ia64-* \
| m32r-* \
! | m68000-* | m680[01234]0-* | m68360-* | m683?2-* | m68k-* \
| m88110-* | m88k-* | mcore-* \
! | mips-* | mips16-* | mips64-* | mips64el-* | mips64orion-* \
! | mips64orionel-* | mips64vr4100-* | mips64vr4100el-* \
! | mips64vr4300-* | mips64vr4300el-* | mipsbe-* | mipseb-* \
! | mipsle-* | mipsel-* | mipstx39-* | mipstx39el-* \
| none-* | np1-* | ns16k-* | ns32k-* \
| orion-* \
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
| pyramid-* \
| romp-* | rs6000-* \
! | s390-* | s390x-* \
! | sh-* | sh[34]-* | sh[34]eb-* | shbe-* | shle-* \
! | sparc-* | sparc64-* | sparc86x-* | sparclite-* \
! | sparcv9-* | sparcv9b-* | stormy16-* | strongarm-* | sv1-* \
! | t3e-* | tahoe-* | thumb-* | tic30-* | tic54x-* | tic80-* | tron-* \
! | v850-* | vax-* \
| we32k-* \
! | x86-* | x86_64-* | xmp-* | xps100-* | xscale-* \
| ymp-* \
| z8k-*)
;;
--- 289,339 ----
580-* \
| a29k-* \
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
! | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
! | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
! | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
! | avr-* \
| bs2000-* \
! | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* \
! | clipper-* | cydra-* \
! | d10v-* | d30v-* | dlx-* \
| elxsi-* \
! | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
| h8300-* | h8500-* \
| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
| i*86-* | i860-* | i960-* | ia64-* \
+ | ip2k-* \
| m32r-* \
! | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
| m88110-* | m88k-* | mcore-* \
! | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
! | mips16-* \
! | mips64-* | mips64el-* \
! | mips64vr-* | mips64vrel-* \
! | mips64orion-* | mips64orionel-* \
! | mips64vr4100-* | mips64vr4100el-* \
! | mips64vr4300-* | mips64vr4300el-* \
! | mips64vr5000-* | mips64vr5000el-* \
! | mipsisa32-* | mipsisa32el-* \
! | mipsisa64-* | mipsisa64el-* \
! | mipsisa64sb1-* | mipsisa64sb1el-* \
! | mipsisa64sr71k-* | mipsisa64sr71kel-* \
! | mipstx39 | mipstx39el \
| none-* | np1-* | ns16k-* | ns32k-* \
| orion-* \
| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
| pyramid-* \
| romp-* | rs6000-* \
! | sh-* | sh[1234]-* | sh3e-* | sh[34]eb-* | shbe-* \
! | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
! | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
! | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
! | tahoe-* | thumb-* | tic30-* | tic4x-* | tic54x-* | tic80-* | tron-* \
! | v850-* | v850e-* | vax-* \
| we32k-* \
! | x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
! | xtensa-* \
| ymp-* \
| z8k-*)
;;
***************
*** 374,379 ****
--- 398,407 ----
basic_machine=ns32k-sequent
os=-dynix
;;
+ c90)
+ basic_machine=c90-cray
+ os=-unicos
+ ;;
convex-c1)
basic_machine=c1-convex
os=-bsd
***************
*** 394,409 ****
basic_machine=c38-convex
os=-bsd
;;
! cray | ymp)
! basic_machine=ymp-cray
! os=-unicos
! ;;
! cray2)
! basic_machine=cray2-cray
! os=-unicos
! ;;
! [cjt]90)
! basic_machine=${basic_machine}-cray
os=-unicos
;;
crds | unos)
--- 422,429 ----
basic_machine=c38-convex
os=-bsd
;;
! cray | j90)
! basic_machine=j90-cray
os=-unicos
;;
crds | unos)
***************
*** 418,423 ****
--- 438,451 ----
decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
basic_machine=mips-dec
;;
+ decsystem10* | dec10*)
+ basic_machine=pdp10-dec
+ os=-tops10
+ ;;
+ decsystem20* | dec20*)
+ basic_machine=pdp10-dec
+ os=-tops20
+ ;;
delta | 3300 | motorola-3300 | motorola-delta \
| 3300-motorola | delta-motorola)
basic_machine=m68k-motorola
***************
*** 598,611 ****
basic_machine=m68k-atari
os=-mint
;;
- mipsel*-linux*)
- basic_machine=mipsel-unknown
- os=-linux-gnu
- ;;
- mips*-linux*)
- basic_machine=mips-unknown
- os=-linux-gnu
- ;;
mips3*-*)
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
;;
--- 626,631 ----
***************
*** 620,625 ****
--- 640,649 ----
basic_machine=m68k-rom68k
os=-coff
;;
+ morphos)
+ basic_machine=powerpc-unknown
+ os=-morphos
+ ;;
msdos)
basic_machine=i386-pc
os=-msdos
***************
*** 699,704 ****
--- 723,732 ----
basic_machine=hppa1.1-oki
os=-proelf
;;
+ or32 | or32-*)
+ basic_machine=or32-unknown
+ os=-coff
+ ;;
OSE68000 | ose68000)
basic_machine=m68000-ericsson
os=-ose
***************
*** 721,739 ****
pbb)
basic_machine=m68k-tti
;;
! pc532 | pc532-*)
basic_machine=ns32k-pc532
;;
! pentium | p5 | k5 | k6 | nexgen)
basic_machine=i586-pc
;;
! pentiumpro | p6 | 6x86 | athlon)
basic_machine=i686-pc
;;
pentiumii | pentium2)
basic_machine=i686-pc
;;
! pentium-* | p5-* | k5-* | k6-* | nexgen-*)
basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
pentiumpro-* | p6-* | 6x86-* | athlon-*)
--- 749,767 ----
pbb)
basic_machine=m68k-tti
;;
! pc532 | pc532-*)
basic_machine=ns32k-pc532
;;
! pentium | p5 | k5 | k6 | nexgen | viac3)
basic_machine=i586-pc
;;
! pentiumpro | p6 | 6x86 | athlon | athlon_*)
basic_machine=i686-pc
;;
pentiumii | pentium2)
basic_machine=i686-pc
;;
! pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
pentiumpro-* | p6-* | 6x86-* | athlon-*)
***************
*** 748,769 ****
power) basic_machine=power-ibm
;;
ppc) basic_machine=powerpc-unknown
! ;;
ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppcle | powerpclittle | ppc-le | powerpc-little)
basic_machine=powerpcle-unknown
! ;;
ppcle-* | powerpclittle-*)
basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppc64) basic_machine=powerpc64-unknown
! ;;
ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppc64le | powerpc64little | ppc64-le | powerpc64-little)
basic_machine=powerpc64le-unknown
! ;;
ppc64le-* | powerpc64little-*)
basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
--- 776,797 ----
power) basic_machine=power-ibm
;;
ppc) basic_machine=powerpc-unknown
! ;;
ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppcle | powerpclittle | ppc-le | powerpc-little)
basic_machine=powerpcle-unknown
! ;;
ppcle-* | powerpclittle-*)
basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppc64) basic_machine=powerpc64-unknown
! ;;
ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppc64le | powerpc64little | ppc64-le | powerpc64-little)
basic_machine=powerpc64le-unknown
! ;;
ppc64le-* | powerpc64little-*)
basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
***************
*** 784,793 ****
--- 812,833 ----
rtpc | rtpc-*)
basic_machine=romp-ibm
;;
+ s390 | s390-*)
+ basic_machine=s390-ibm
+ ;;
+ s390x | s390x-*)
+ basic_machine=s390x-ibm
+ ;;
sa29200)
basic_machine=a29k-amd
os=-udi
;;
+ sb1)
+ basic_machine=mipsisa64sb1-unknown
+ ;;
+ sb1el)
+ basic_machine=mipsisa64sb1el-unknown
+ ;;
sequent)
basic_machine=i386-sequent
;;
***************
*** 795,801 ****
basic_machine=sh-hitachi
os=-hms
;;
! sparclite-wrs)
basic_machine=sparclite-wrs
os=-vxworks
;;
--- 835,841 ----
basic_machine=sh-hitachi
os=-hms
;;
! sparclite-wrs | simso-wrs)
basic_machine=sparclite-wrs
os=-vxworks
;;
***************
*** 861,870 ****
basic_machine=i386-sequent
os=-dynix
;;
t3e)
! basic_machine=t3e-cray
os=-unicos
;;
tic54x | c54x*)
basic_machine=tic54x-unknown
os=-coff
--- 901,922 ----
basic_machine=i386-sequent
os=-dynix
;;
+ t3d)
+ basic_machine=alpha-cray
+ os=-unicos
+ ;;
t3e)
! basic_machine=alphaev5-cray
! os=-unicos
! ;;
! t90)
! basic_machine=t90-cray
os=-unicos
;;
+ tic4x | c4x*)
+ basic_machine=tic4x-unknown
+ os=-coff
+ ;;
tic54x | c54x*)
basic_machine=tic54x-unknown
os=-coff
***************
*** 875,880 ****
--- 927,936 ----
tx39el)
basic_machine=mipstx39el-unknown
;;
+ toad1)
+ basic_machine=pdp10-xkl
+ os=-tops20
+ ;;
tower | tower-32)
basic_machine=m68k-ncr
;;
***************
*** 899,906 ****
os=-vms
;;
vpp*|vx|vx-*)
! basic_machine=f301-fujitsu
! ;;
vxworks960)
basic_machine=i960-wrs
os=-vxworks
--- 955,962 ----
os=-vms
;;
vpp*|vx|vx-*)
! basic_machine=f301-fujitsu
! ;;
vxworks960)
basic_machine=i960-wrs
os=-vxworks
***************
*** 925,937 ****
basic_machine=i386-pc
os=-windows32-msvcrt
;;
! xmp)
! basic_machine=xmp-cray
! os=-unicos
! ;;
! xps | xps100)
basic_machine=xps100-honeywell
;;
z8k-*-coff)
basic_machine=z8k-unknown
os=-sim
--- 981,993 ----
basic_machine=i386-pc
os=-windows32-msvcrt
;;
! xps | xps100)
basic_machine=xps100-honeywell
;;
+ ymp)
+ basic_machine=ymp-cray
+ os=-unicos
+ ;;
z8k-*-coff)
basic_machine=z8k-unknown
os=-sim
***************
*** 952,964 ****
op60c)
basic_machine=hppa1.1-oki
;;
- mips)
- if [ x$os = x-linux-gnu ]; then
- basic_machine=mips-unknown
- else
- basic_machine=mips-mips
- fi
- ;;
romp)
basic_machine=romp-ibm
;;
--- 1008,1013 ----
***************
*** 978,990 ****
we32k)
basic_machine=we32k-att
;;
! sh3 | sh4 | sh3eb | sh4eb)
basic_machine=sh-unknown
;;
sparc | sparcv9 | sparcv9b)
basic_machine=sparc-sun
;;
! cydra)
basic_machine=cydra-cydrome
;;
orion)
--- 1027,1042 ----
we32k)
basic_machine=we32k-att
;;
! sh3 | sh4 | sh3eb | sh4eb | sh[1234]le | sh3ele)
basic_machine=sh-unknown
;;
+ sh64)
+ basic_machine=sh64-unknown
+ ;;
sparc | sparcv9 | sparcv9b)
basic_machine=sparc-sun
;;
! cydra)
basic_machine=cydra-cydrome
;;
orion)
***************
*** 999,1008 ****
pmac | pmac-mpw)
basic_machine=powerpc-apple
;;
- c4x*)
- basic_machine=c4x-none
- os=-coff
- ;;
*-unknown)
# Make sure to match an already-canonicalized machine name.
;;
--- 1051,1056 ----
***************
*** 1068,1074 ****
| -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
! | -os2* | -vos*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
--- 1116,1123 ----
| -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
! | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
! | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* | -powermax*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
***************
*** 1120,1133 ****
-acis*)
os=-aos
;;
-386bsd)
os=-bsd
;;
-ctix* | -uts*)
os=-sysv
;;
-ns2 )
! os=-nextstep2
;;
-nsk*)
os=-nsk
--- 1169,1188 ----
-acis*)
os=-aos
;;
+ -atheos*)
+ os=-atheos
+ ;;
-386bsd)
os=-bsd
;;
-ctix* | -uts*)
os=-sysv
;;
+ -nova*)
+ os=-rtmk-nova
+ ;;
-ns2 )
! os=-nextstep2
;;
-nsk*)
os=-nsk
***************
*** 1166,1173 ****
-xenix)
os=-xenix
;;
! -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
! os=-mint
;;
-none)
;;
--- 1221,1228 ----
-xenix)
os=-xenix
;;
! -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
! os=-mint
;;
-none)
;;
***************
*** 1200,1209 ****
arm*-semi)
os=-aout
;;
pdp10-*)
os=-tops20
;;
! pdp11-*)
os=-none
;;
*-dec | vax-*)
--- 1255,1265 ----
arm*-semi)
os=-aout
;;
+ # This must come before the *-dec entry.
pdp10-*)
os=-tops20
;;
! pdp11-*)
os=-none
;;
*-dec | vax-*)
***************
*** 1230,1235 ****
--- 1286,1294 ----
mips*-*)
os=-elf
;;
+ or32-*)
+ os=-coff
+ ;;
*-tti) # must be before sparc entry or we get the wrong os.
os=-sysv3
;;
***************
*** 1293,1311 ****
*-next)
os=-nextstep3
;;
! *-gould)
os=-sysv
;;
! *-highlevel)
os=-bsd
;;
*-encore)
os=-bsd
;;
! *-sgi)
os=-irix
;;
! *-siemens)
os=-sysv4
;;
*-masscomp)
--- 1352,1370 ----
*-next)
os=-nextstep3
;;
! *-gould)
os=-sysv
;;
! *-highlevel)
os=-bsd
;;
*-encore)
os=-bsd
;;
! *-sgi)
os=-irix
;;
! *-siemens)
os=-sysv4
;;
*-masscomp)
***************
*** 1377,1383 ****
-ptx*)
vendor=sequent
;;
! -vxsim* | -vxworks*)
vendor=wrs
;;
-aux*)
--- 1436,1442 ----
-ptx*)
vendor=sequent
;;
! -vxsim* | -vxworks* | -windiss*)
vendor=wrs
;;
-aux*)
Index: libtool/configure.in
diff -c libtool/configure.in:1.52.2.4 libtool/configure.in:1.52.2.6
*** libtool/configure.in:1.52.2.4 Mon Sep 10 23:33:37 2001
--- libtool/configure.in Tue Oct 22 22:54:37 2002
***************
*** 2,8 ****
AC_INIT(ltmain.in)
! AM_INIT_AUTOMAKE(libtool, 1.4.2)
# This is a sanity check so we can see which version is used in bug reports.
# It is assumed that we only want to see the date extension for cvs libtool
--- 2,8 ----
AC_INIT(ltmain.in)
! AM_INIT_AUTOMAKE(libtool, 1.4.3)
# This is a sanity check so we can see which version is used in bug reports.
# It is assumed that we only want to see the date extension for cvs libtool
Index: libtool/libtool.m4
diff -c libtool/libtool.m4:1.166.2.27 libtool/libtool.m4:1.166.2.49
*** libtool/libtool.m4:1.166.2.27 Mon Sep 10 23:18:52 2001
--- libtool/libtool.m4 Tue Oct 22 20:55:33 2002
***************
*** 49,54 ****
--- 49,56 ----
AC_REQUIRE([AC_PROG_LD])dnl
AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
AC_REQUIRE([AC_PROG_NM])dnl
+ AC_REQUIRE([LT_AC_PROG_SED])dnl
+
AC_REQUIRE([AC_PROG_LN_S])dnl
AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
AC_REQUIRE([AC_OBJEXT])dnl
***************
*** 216,224 ****
lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
;;
! irix*)
symcode='[[BCDEGRST]]'
;;
solaris* | sysv5*)
symcode='[[BDT]]'
;;
--- 218,229 ----
lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
lt_cv_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]]'
;;
+ osf*)
+ symcode='[[BCDEGQRST]]'
+ ;;
solaris* | sysv5*)
symcode='[[BDT]]'
;;
***************
*** 315,321 ****
save_CFLAGS="$CFLAGS"
LIBS="conftstm.$ac_objext"
CFLAGS="$CFLAGS$no_builtin_flag"
! if AC_TRY_EVAL(ac_link) && test -s conftest; then
pipe_works=yes
fi
LIBS="$save_LIBS"
--- 320,326 ----
save_CFLAGS="$CFLAGS"
LIBS="conftstm.$ac_objext"
CFLAGS="$CFLAGS$no_builtin_flag"
! if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
pipe_works=yes
fi
LIBS="$save_LIBS"
***************
*** 865,871 ****
# like `-m68040'.
lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4'
;;
! beos* | irix5* | irix6* | osf3* | osf4* | osf5*)
# PIC is the default for these OSes.
;;
darwin* | rhapsody*)
--- 870,876 ----
# like `-m68040'.
lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4'
;;
! beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
# PIC is the default for these OSes.
;;
darwin* | rhapsody*)
***************
*** 908,914 ****
lt_cv_prog_cc_pic='+Z'
;;
! irix5* | irix6*)
lt_cv_prog_cc_wl='-Wl,'
lt_cv_prog_cc_static='-non_shared'
# PIC (with -KPIC) is the default.
--- 913,919 ----
lt_cv_prog_cc_pic='+Z'
;;
! irix5* | irix6* | nonstopux*)
lt_cv_prog_cc_wl='-Wl,'
lt_cv_prog_cc_static='-non_shared'
# PIC (with -KPIC) is the default.
***************
*** 952,962 ****
sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
lt_cv_prog_cc_pic='-KPIC'
lt_cv_prog_cc_static='-Bstatic'
! if test "x$host_vendor" = xsni; then
! lt_cv_prog_cc_wl='-LD'
! else
! lt_cv_prog_cc_wl='-Wl,'
! fi
;;
uts4*)
--- 957,963 ----
sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
lt_cv_prog_cc_pic='-KPIC'
lt_cv_prog_cc_static='-Bstatic'
! lt_cv_prog_cc_wl='-Wl,'
;;
uts4*)
***************
*** 1341,1347 ****
# If the export-symbols file already is a .def file (1st line
# is EXPORTS), use it as is.
# If DATA tags from a recent dlltool are present, honour them!
! archive_expsym_cmds='if test "x`head -1 $export_symbols`" = xEXPORTS; then
cp $export_symbols $output_objdir/$soname-def;
else
echo EXPORTS > $output_objdir/$soname-def;
--- 1342,1348 ----
# If the export-symbols file already is a .def file (1st line
# is EXPORTS), use it as is.
# If DATA tags from a recent dlltool are present, honour them!
! archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then
cp $export_symbols $output_objdir/$soname-def;
else
echo EXPORTS > $output_objdir/$soname-def;
***************
*** 1350,1355 ****
--- 1351,1357 ----
set dummy \$symbol;
case \[$]# in
2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;;
+ 4) echo " \[$]2 \[$]3 \[$]4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;;
*) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;;
esac;
_lt_hint=`expr 1 + \$_lt_hint`;
***************
*** 1462,1471 ****
# need to do runtime linking.
case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
for ld_flag in $LDFLAGS; do
! if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
aix_use_runtimelinking=yes
break
! fi
done
esac
--- 1464,1475 ----
# need to do runtime linking.
case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
for ld_flag in $LDFLAGS; do
! case $ld_flag in
! *-brtl*)
aix_use_runtimelinking=yes
break
! ;;
! esac
done
esac
***************
*** 1579,1586 ****
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.
! archive_cmds='$nonopt $(test "x$module" = xyes && 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
#archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
hardcode_direct=yes
--- 1583,1591 ----
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!
! archive_cmds='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)'
# We need to add '_' to the symbols in $export_symbols first
#archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
hardcode_direct=yes
***************
*** 1632,1644 ****
export_dynamic_flag_spec='${wl}-E'
;;
! irix5* | irix6*)
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'
else
archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
fi
- hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
hardcode_libdir_separator=:
link_all_deplibs=yes
;;
--- 1637,1650 ----
export_dynamic_flag_spec='${wl}-E'
;;
! 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'
+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
else
archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
+ hardcode_libdir_flag_spec='-rpath $libdir'
fi
hardcode_libdir_separator=:
link_all_deplibs=yes
;;
***************
*** 1666,1672 ****
hardcode_direct=yes
hardcode_shlibpath_var=no
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
! archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
export_dynamic_flag_spec='${wl}-E'
else
--- 1672,1678 ----
hardcode_direct=yes
hardcode_shlibpath_var=no
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
! archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
export_dynamic_flag_spec='${wl}-E'
else
***************
*** 1676,1682 ****
hardcode_libdir_flag_spec='-R$libdir'
;;
*)
! archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
;;
esac
--- 1682,1688 ----
hardcode_libdir_flag_spec='-R$libdir'
;;
*)
! archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
;;
esac
***************
*** 1788,1800 ****
;;
sysv4)
! if test "x$host_vendor" = xsno; then
! archive_cmds='$LD -G -Bsymbolic -h $soname -o $lib $libobjs $deplibs $linker_flags'
! hardcode_direct=yes # is this really true???
! else
! archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
! hardcode_direct=no #Motorola manual says yes, but my tests say they lie
! fi
runpath_var='LD_RUN_PATH'
hardcode_shlibpath_var=no
;;
--- 1794,1816 ----
;;
sysv4)
! case $host_vendor in
! sni)
! archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
! hardcode_direct=yes # is this really true???
! ;;
! siemens)
! ## LD is ld it makes a PLAMLIB
! ## CC just makes a GrossModule.
! archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
! reload_cmds='$CC -r -o $output$reload_objs'
! hardcode_direct=no
! ;;
! motorola)
! archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
! hardcode_direct=no #Motorola manual says yes, but my tests say they lie
! ;;
! esac
runpath_var='LD_RUN_PATH'
hardcode_shlibpath_var=no
;;
***************
*** 1947,1952 ****
--- 1963,1971 ----
aix4* | aix5*)
version_type=linux
+ need_lib_prefix=no
+ need_version=no
+ hardcode_into_libs=yes
if test "$host_cpu" = ia64; then
# AIX 5 supports IA64
library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so'
***************
*** 1985,1990 ****
--- 2004,2010 ----
fi
shlibpath_var=LIBPATH
fi
+ hardcode_into_libs=yes
;;
amigaos*)
***************
*** 2032,2038 ****
;;
yes,mingw*)
library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
! sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g"`
;;
yes,pw32*)
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
--- 2052,2058 ----
;;
yes,mingw*)
library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
! sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g" -e "s,=/,/,g"`
;;
yes,pw32*)
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
***************
*** 2115,2128 ****
postinstall_cmds='chmod 555 $lib'
;;
! irix5* | irix6*)
! version_type=irix
need_lib_prefix=no
need_version=no
soname_spec='${libname}${release}.so$major'
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so'
case $host_os in
! irix5*)
libsuff= shlibsuff=
;;
*)
--- 2135,2151 ----
postinstall_cmds='chmod 555 $lib'
;;
! irix5* | irix6* | nonstopux*)
! case $host_os in
! nonstopux*) version_type=nonstopux ;;
! *) version_type=irix ;;
! esac
need_lib_prefix=no
need_version=no
soname_spec='${libname}${release}.so$major'
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so'
case $host_os in
! irix5* | nonstopux*)
libsuff= shlibsuff=
;;
*)
***************
*** 2226,2236 ****
osf3* | osf4* | osf5*)
version_type=osf
need_version=no
! soname_spec='${libname}${release}.so'
! library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
shlibpath_var=LD_LIBRARY_PATH
sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
;;
sco3.2v5*)
--- 2249,2260 ----
osf3* | osf4* | osf5*)
version_type=osf
need_version=no
! soname_spec='${libname}${release}.so$major'
! library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
shlibpath_var=LD_LIBRARY_PATH
sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
+ hardcode_into_libs=yes
;;
sco3.2v5*)
***************
*** 2273,2278 ****
--- 2297,2308 ----
case $host_vendor in
sni)
shlibpath_overrides_runpath=no
+ need_lib_prefix=no
+ export_dynamic_flag_spec='${wl}-Blargedynsym'
+ runpath_var=LD_RUN_PATH
+ ;;
+ siemens)
+ need_lib_prefix=no
;;
motorola)
need_lib_prefix=no
***************
*** 2447,2453 ****
# 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 CC LD LN_S NM SHELL \
reload_flag reload_cmds wl \
pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
--- 2477,2483 ----
# 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 SED \
AR AR_FLAGS CC LD LN_S NM SHELL \
reload_flag reload_cmds wl \
pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
***************
*** 2509,2516 ****
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# Sed that helps us avoid accidentally triggering echo(1) options like -n.
! Xsed="sed -e s/^X//"
# The HP-UX ksh and POSIX shell print the target directory to stdout
# if CDPATH is set.
--- 2539,2549 ----
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
+ # A sed that does not truncate output.
+ SED=$lt_SED
+
# Sed that helps us avoid accidentally triggering echo(1) options like -n.
! Xsed="${SED} -e s/^X//"
# The HP-UX ksh and POSIX shell print the target directory to stdout
# if CDPATH is set.
***************
*** 3273,3279 ****
# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies
# -- PORTME fill in with the dynamic library characteristics
AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
! [AC_CACHE_CHECK([how to recognise dependant libraries],
lt_cv_deplibs_check_method,
[lt_cv_file_magic_cmd='$MAGIC_CMD'
lt_cv_file_magic_test_file=
--- 3306,3312 ----
# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies
# -- PORTME fill in with the dynamic library characteristics
AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
! [AC_CACHE_CHECK([how to recognise dependent libraries],
lt_cv_deplibs_check_method,
[lt_cv_file_magic_cmd='$MAGIC_CMD'
lt_cv_file_magic_test_file=
***************
*** 3348,3356 ****
lt_cv_file_magic_test_file=/usr/lib/libc.sl
;;
! irix5* | irix6*)
case $host_os in
! irix5*)
# 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"
;;
--- 3381,3389 ----
lt_cv_file_magic_test_file=/usr/lib/libc.sl
;;
! 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"
;;
***************
*** 3372,3378 ****
# This must be Linux ELF.
linux-gnu*)
case $host_cpu in
! alpha* | hppa* | i*86 | powerpc* | sparc* | ia64* )
lt_cv_deplibs_check_method=pass_all ;;
*)
# glibc up to 2.1.1 does not perform some relocations on ARM
--- 3405,3411 ----
# This must be Linux ELF.
linux-gnu*)
case $host_cpu in
! alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64*)
lt_cv_deplibs_check_method=pass_all ;;
*)
# glibc up to 2.1.1 does not perform some relocations on ARM
***************
*** 3443,3448 ****
--- 3476,3484 ----
lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
lt_cv_file_magic_test_file=/lib/libc.so
;;
+ siemens)
+ lt_cv_deplibs_check_method=pass_all
+ ;;
esac
;;
esac
***************
*** 3508,3519 ****
])
# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
! # the libltdl convenience library and INCLTDL to the include flags for
# the libltdl header and adds --enable-ltdl-convenience to the
! # configure arguments. Note that LIBLTDL and INCLTDL are not
# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not
# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed
! # with '${top_builddir}/' and INCLTDL will be prefixed with
# '${top_srcdir}/' (note the single quotes!). If your package is not
# flat and you're not using automake, define top_builddir and
# top_srcdir appropriately in the Makefiles.
--- 3544,3555 ----
])
# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
! # the libltdl convenience library and LTDLINCL to the include flags for
# the libltdl header and adds --enable-ltdl-convenience to the
! # configure arguments. Note that LIBLTDL and LTDLINCL are not
# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not
# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed
! # with '${top_builddir}/' and LTDLINCL will be prefixed with
# '${top_srcdir}/' (note the single quotes!). If your package is not
# flat and you're not using automake, define top_builddir and
# top_srcdir appropriately in the Makefiles.
***************
*** 3525,3540 ****
ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
esac
LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
! INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
])
# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
! # the libltdl installable library and INCLTDL to the include flags for
# the libltdl header and adds --enable-ltdl-install to the configure
! # arguments. Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is
# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed
# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will
! # be prefixed with '${top_builddir}/' and INCLTDL will be prefixed
# with '${top_srcdir}/' (note the single quotes!). If your package is
# not flat and you're not using automake, define top_builddir and
# top_srcdir appropriately in the Makefiles.
--- 3561,3578 ----
ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
esac
LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
! LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
! # For backwards non-gettext consistent compatibility...
! INCLTDL="$LTDLINCL"
])
# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
! # the libltdl installable library and LTDLINCL to the include flags for
# the libltdl header and adds --enable-ltdl-install to the configure
! # arguments. Note that LIBLTDL and LTDLINCL are not AC_SUBSTed, nor is
# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed
# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will
! # be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed
# with '${top_srcdir}/' (note the single quotes!). If your package is
# not flat and you're not using automake, define top_builddir and
# top_srcdir appropriately in the Makefiles.
***************
*** 3552,3563 ****
if test x"$enable_ltdl_install" = x"yes"; then
ac_configure_args="$ac_configure_args --enable-ltdl-install"
LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
! INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
else
ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
LIBLTDL="-lltdl"
! INCLTDL=
fi
])
# old names
--- 3590,3603 ----
if test x"$enable_ltdl_install" = x"yes"; then
ac_configure_args="$ac_configure_args --enable-ltdl-install"
LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
! LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
else
ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
LIBLTDL="-lltdl"
! LTDLINCL=
fi
+ # For backwards non-gettext consistent compatibility...
+ INCLTDL="$LTDLINCL"
])
# old names
***************
*** 3571,3573 ****
--- 3611,3704 ----
# This is just to silence aclocal about the macro not being used
ifelse([AC_DISABLE_FAST_INSTALL])
+
+ ############################################################
+ # NOTE: This macro has been submitted for inclusion into #
+ # GNU Autoconf as AC_PROG_SED. When it is available in #
+ # a released version of Autoconf we should remove this #
+ # macro and use it instead. #
+ ############################################################
+ # LT_AC_PROG_SED
+ # --------------
+ # Check for a fully-functional sed program, that truncates
+ # as few characters as possible. Prefer GNU sed if found.
+ AC_DEFUN([LT_AC_PROG_SED],
+ [AC_MSG_CHECKING([for a sed that does not truncate output])
+ AC_CACHE_VAL(lt_cv_path_SED,
+ [# Loop through the user's path and test for sed and gsed.
+ # Then use that list of sed's as ones to test for truncation.
+ as_executable_p="test -f"
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+ for as_dir in $PATH
+ do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_prog in sed gsed; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
+ _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext"
+ fi
+ done
+ done
+ done
+
+ # Create a temporary directory, and hook for its removal unless debugging.
+ $debug ||
+ {
+ trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
+ trap '{ (exit 1); exit 1; }' 1 2 13 15
+ }
+
+ # Create a (secure) tmp directory for tmp files.
+ : ${TMPDIR=/tmp}
+ {
+ tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` &&
+ test -n "$tmp" && test -d "$tmp"
+ } ||
+ {
+ tmp=$TMPDIR/sed$$-$RANDOM
+ (umask 077 && mkdir $tmp)
+ } ||
+ {
+ echo "$me: cannot create a temporary directory in $TMPDIR" >&2
+ { (exit 1); exit 1; }
+ }
+ _max=0
+ _count=0
+ # Add /usr/xpg4/bin/sed as it is typically found on Solaris
+ # along with /bin/sed that truncates output.
+ for _sed in $_sed_list /usr/xpg4/bin/sed; do
+ test ! -f ${_sed} && break
+ cat /dev/null > "$tmp/sed.in"
+ _count=0
+ echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in"
+ # Check for GNU sed and select it if it is found.
+ if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then
+ lt_cv_path_SED=${_sed}
+ break
+ fi
+ while true; do
+ cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp"
+ mv "$tmp/sed.tmp" "$tmp/sed.in"
+ cp "$tmp/sed.in" "$tmp/sed.nl"
+ echo >>"$tmp/sed.nl"
+ ${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break
+ cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break
+ # 40000 chars as input seems more than enough
+ test $_count -gt 10 && break
+ _count=`expr $_count + 1`
+ if test $_count -gt $_max; then
+ _max=$_count
+ lt_cv_path_SED=$_sed
+ fi
+ done
+ done
+ rm -rf "$tmp"
+ ])
+ if test "X$SED" != "X"; then
+ lt_cv_path_SED=$SED
+ else
+ SED=$lt_cv_path_SED
+ fi
+ AC_MSG_RESULT([$SED])
+ ])
Index: libtool/libtoolize.in
diff -c libtool/libtoolize.in:1.15 libtool/libtoolize.in:1.15.2.2
*** libtool/libtoolize.in:1.15 Fri Mar 30 17:47:23 2001
--- libtool/libtoolize.in Mon Jan 14 14:04:40 2002
***************
*** 154,160 ****
files='config.guess config.sub ltmain.sh'
auxdir=.
! auxdirline=`egrep '^AC_CONFIG_AUX_DIR' configure.in 2>/dev/null`
if test -n "$auxdirline"; then
# Handle explicit AC_CONFIG_AUX_DIR settings.
auxdir=`echo "$auxdirline" | sed 's/^AC_CONFIG_AUX_DIR(\([^)]*\)).*$/\1/'`
--- 154,160 ----
files='config.guess config.sub ltmain.sh'
auxdir=.
! auxdirline=`egrep '^AC_CONFIG_AUX_DIR' $configure_ac 2>/dev/null`
if test -n "$auxdirline"; then
# Handle explicit AC_CONFIG_AUX_DIR settings.
auxdir=`echo "$auxdirline" | sed 's/^AC_CONFIG_AUX_DIR(\([^)]*\)).*$/\1/'`
***************
*** 204,210 ****
updatemsg="add the contents of \`$libtool_m4' to \`aclocal.m4'"
fi
! if egrep '^AC_DEFUN\(A[MC]_PROG_LIBTOOL' aclocal.m4 >/dev/null 2>&1; then
# Check the version number on libtool.m4 and the one used in aclocal.m4.
instserial=`grep '^# serial ' $libtool_m4 | grep 'A[MC]_PROG_LIBTOOL' | sed -e 's/^# serial \([0-9][0-9]*\).*$/\1/; q'`
--- 204,210 ----
updatemsg="add the contents of \`$libtool_m4' to \`aclocal.m4'"
fi
! if egrep '^AC_DEFUN\(\[A[MC]_PROG_LIBTOOL' aclocal.m4 >/dev/null 2>&1; then
# Check the version number on libtool.m4 and the one used in aclocal.m4.
instserial=`grep '^# serial ' $libtool_m4 | grep 'A[MC]_PROG_LIBTOOL' | sed -e 's/^# serial \([0-9][0-9]*\).*$/\1/; q'`
Index: libtool/ltdl.m4
diff -c libtool/ltdl.m4:1.21.2.4 libtool/ltdl.m4:1.21.2.10
*** libtool/ltdl.m4:1.21.2.4 Mon Sep 10 23:18:52 2001
--- libtool/ltdl.m4 Tue Oct 22 20:34:55 2002
***************
*** 20,32 ****
## configuration script generated by Autoconf, you may include it under
## the same distribution terms that you use for the rest of that program.
! # serial 2 AC_LIB_LTDL
# AC_LIB_LTDL
# -----------
# Perform all the checks necessary for compilation of the ltdl objects
# -- including compiler checks and header checks.
! AC_DEFUN(AC_LIB_LTDL,
[AC_PREREQ(2.13)
AC_REQUIRE([AC_PROG_CC])
AC_REQUIRE([AC_C_CONST])
--- 20,80 ----
## configuration script generated by Autoconf, you may include it under
## the same distribution terms that you use for the rest of that program.
! # serial 5 AC_LIB_LTDL
!
! # AC_WITH_LTDL
! # ------------
! # Clients of libltdl can use this macro to allow the installer to
! # choose between a shipped copy of the ltdl sources or a preinstalled
! # version of the library.
! AC_DEFUN([AC_WITH_LTDL],
! [AC_REQUIRE([AC_LIB_LTDL])
! AC_SUBST([LIBLTDL])
! AC_SUBST([INCLTDL])
!
! # Unless the user asks us to check, assume no installed ltdl exists.
! use_installed_libltdl=no
!
! AC_ARG_WITH([included_ltdl],
! [ --with-included-ltdl use the GNU ltdl sources included here])
!
! if test "x$with_included_ltdl" != xyes; then
! # We are not being forced to use the included libltdl sources, so
! # decide whether there is a useful installed version we can use.
! AC_CHECK_HEADER([ltdl.h],
! [AC_CHECK_LIB([ltdl], [lt_dlcaller_register],
! [with_included_ltdl=no],
! [with_included_ltdl=yes])
! ])
! fi
!
! if test "x$enable_ltdl_install" != xyes; then
! # If the user did not specify an installable libltdl, then default
! # to a convenience lib.
! AC_LIBLTDL_CONVENIENCE
! fi
!
! if test "x$with_included_ltdl" = xno; then
! # If the included ltdl is not to be used. then Use the
! # preinstalled libltdl we found.
! AC_DEFINE([HAVE_LTDL], 1,
! [Define this if a modern libltdl is already installed])
! LIBLTDL=-lltdl
! fi
!
! # Report our decision...
! AC_MSG_CHECKING([whether to use included libltdl])
! AC_MSG_RESULT([$with_included_ltdl])
!
! AC_CONFIG_SUBDIRS([libltdl])
! ])# AC_WITH_LTDL
!
# AC_LIB_LTDL
# -----------
# Perform all the checks necessary for compilation of the ltdl objects
# -- including compiler checks and header checks.
! AC_DEFUN([AC_LIB_LTDL],
[AC_PREREQ(2.13)
AC_REQUIRE([AC_PROG_CC])
AC_REQUIRE([AC_C_CONST])
***************
*** 59,65 ****
# AC_LTDL_ENABLE_INSTALL
# ----------------------
! AC_DEFUN(AC_LTDL_ENABLE_INSTALL,
[AC_ARG_ENABLE(ltdl-install,
[ --enable-ltdl-install install libltdl])
--- 107,113 ----
# AC_LTDL_ENABLE_INSTALL
# ----------------------
! AC_DEFUN([AC_LTDL_ENABLE_INSTALL],
[AC_ARG_ENABLE(ltdl-install,
[ --enable-ltdl-install install libltdl])
***************
*** 69,81 ****
# AC_LTDL_SYS_DLOPEN_DEPLIBS
# --------------------------
! AC_DEFUN(AC_LTDL_SYS_DLOPEN_DEPLIBS,
[AC_REQUIRE([AC_CANONICAL_HOST])
AC_CACHE_CHECK([whether deplibs are loaded by dlopen],
libltdl_cv_sys_dlopen_deplibs, [dnl
# PORTME does your system automatically load deplibs for dlopen()?
libltdl_cv_sys_dlopen_deplibs=unknown
case "$host_os" in
linux*)
libltdl_cv_sys_dlopen_deplibs=yes
;;
--- 117,132 ----
# AC_LTDL_SYS_DLOPEN_DEPLIBS
# --------------------------
! AC_DEFUN([AC_LTDL_SYS_DLOPEN_DEPLIBS],
[AC_REQUIRE([AC_CANONICAL_HOST])
AC_CACHE_CHECK([whether deplibs are loaded by dlopen],
libltdl_cv_sys_dlopen_deplibs, [dnl
# PORTME does your system automatically load deplibs for dlopen()?
libltdl_cv_sys_dlopen_deplibs=unknown
case "$host_os" in
+ hpux10*|hpux11*)
+ libltdl_cv_sys_dlopen_deplibs=yes
+ ;;
linux*)
libltdl_cv_sys_dlopen_deplibs=yes
;;
***************
*** 98,104 ****
# AC_LTDL_SHLIBEXT
# ----------------
! AC_DEFUN(AC_LTDL_SHLIBEXT,
[AC_REQUIRE([_LT_AC_LTCONFIG_HACK])
AC_CACHE_CHECK([which extension is used for shared libraries],
libltdl_cv_shlibext,
--- 149,155 ----
# AC_LTDL_SHLIBEXT
# ----------------
! AC_DEFUN([AC_LTDL_SHLIBEXT],
[AC_REQUIRE([_LT_AC_LTCONFIG_HACK])
AC_CACHE_CHECK([which extension is used for shared libraries],
libltdl_cv_shlibext,
***************
*** 118,124 ****
# AC_LTDL_SHLIBPATH
# -----------------
! AC_DEFUN(AC_LTDL_SHLIBPATH,
[AC_REQUIRE([_LT_AC_LTCONFIG_HACK])
AC_CACHE_CHECK([which variable specifies run-time library path],
libltdl_cv_shlibpath_var, [libltdl_cv_shlibpath_var="$shlibpath_var"])
--- 169,175 ----
# AC_LTDL_SHLIBPATH
# -----------------
! AC_DEFUN([AC_LTDL_SHLIBPATH],
[AC_REQUIRE([_LT_AC_LTCONFIG_HACK])
AC_CACHE_CHECK([which variable specifies run-time library path],
libltdl_cv_shlibpath_var, [libltdl_cv_shlibpath_var="$shlibpath_var"])
***************
*** 130,136 ****
# AC_LTDL_SYSSEARCHPATH
# ---------------------
! AC_DEFUN(AC_LTDL_SYSSEARCHPATH,
[AC_REQUIRE([_LT_AC_LTCONFIG_HACK])
AC_CACHE_CHECK([for the default library search path],
libltdl_cv_sys_search_path, [libltdl_cv_sys_search_path="$sys_lib_dlsearch_path_spec"])
--- 181,187 ----
# AC_LTDL_SYSSEARCHPATH
# ---------------------
! AC_DEFUN([AC_LTDL_SYSSEARCHPATH],
[AC_REQUIRE([_LT_AC_LTCONFIG_HACK])
AC_CACHE_CHECK([for the default library search path],
libltdl_cv_sys_search_path, [libltdl_cv_sys_search_path="$sys_lib_dlsearch_path_spec"])
***************
*** 154,160 ****
# AC_LTDL_OBJDIR
# --------------
! AC_DEFUN(AC_LTDL_OBJDIR,
[AC_CACHE_CHECK([for objdir],
libltdl_cv_objdir, [libltdl_cv_objdir="$objdir"
if test -n "$objdir"; then
--- 205,211 ----
# AC_LTDL_OBJDIR
# --------------
! AC_DEFUN([AC_LTDL_OBJDIR],
[AC_CACHE_CHECK([for objdir],
libltdl_cv_objdir, [libltdl_cv_objdir="$objdir"
if test -n "$objdir"; then
***************
*** 176,182 ****
# AC_LTDL_DLPREOPEN
# -----------------
! AC_DEFUN(AC_LTDL_DLPREOPEN,
[AC_REQUIRE([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])dnl
AC_CACHE_CHECK([whether libtool supports -dlopen/-dlpreopen],
libltdl_cv_preloaded_symbols, [dnl
--- 227,233 ----
# AC_LTDL_DLPREOPEN
# -----------------
! AC_DEFUN([AC_LTDL_DLPREOPEN],
[AC_REQUIRE([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])dnl
AC_CACHE_CHECK([whether libtool supports -dlopen/-dlpreopen],
libltdl_cv_preloaded_symbols, [dnl
***************
*** 194,220 ****
# AC_LTDL_DLLIB
# -------------
! AC_DEFUN(AC_LTDL_DLLIB,
[LIBADD_DL=
- AC_CHECK_LIB(dl, dlopen, [AC_DEFINE(HAVE_LIBDL, 1,
- [Define if you have the libdl library or equivalent. ]) LIBADD_DL="-ldl"],
- [AC_CHECK_FUNC(dlopen, [AC_DEFINE(HAVE_LIBDL, 1,
- [Define if you have the libdl library or equivalent.])],
- [AC_CHECK_LIB(svld, dlopen, [AC_DEFINE(HAVE_LIBDL, 1,
- [Define if you have the libdl library or equivalent.]) LIBADD_DL="-lsvld"]
- )])])
- AC_CHECK_FUNC(shl_load, [AC_DEFINE(HAVE_SHL_LOAD, 1,
- [Define if you have the shl_load function.])],
- [AC_CHECK_LIB(dld, shl_load,
- [AC_DEFINE(HAVE_SHL_LOAD, 1,
- [Define if you have the shl_load function.])
- LIBADD_DL="$LIBADD_DL -ldld"])
- ])
- AC_CHECK_LIB(dld, dld_link, [AC_DEFINE(HAVE_DLD, 1,
- [Define if you have the GNU dld library.])dnl
- test "x$ac_cv_lib_dld_shl_load" = yes || LIBADD_DL="$LIBADD_DL -ldld"])
AC_SUBST(LIBADD_DL)
if test "x$ac_cv_func_dlopen" = xyes || test "x$ac_cv_lib_dl_dlopen" = xyes; then
LIBS_SAVE="$LIBS"
LIBS="$LIBS $LIBADD_DL"
--- 245,287 ----
# AC_LTDL_DLLIB
# -------------
! AC_DEFUN([AC_LTDL_DLLIB],
[LIBADD_DL=
AC_SUBST(LIBADD_DL)
+ AC_CHECK_FUNC([shl_load],
+ [AC_DEFINE([HAVE_SHL_LOAD], [1],
+ [Define if you have the shl_load function.])],
+ [AC_CHECK_LIB([dld], [shl_load],
+ [AC_DEFINE([HAVE_SHL_LOAD], [1],
+ [Define if you have the shl_load function.])
+ LIBADD_DL="$LIBADD_DL -ldld"],
+ [AC_CHECK_LIB([dl], [dlopen],
+ [AC_DEFINE([HAVE_LIBDL], [1],
+ [Define if you have the libdl library or equivalent.])
+ LIBADD_DL="-ldl"],
+ [AC_TRY_LINK([#if HAVE_DLFCN_H
+ # include <dlfcn.h>
+ #endif
+ ],
+ [dlopen(0, 0);],
+ [AC_DEFINE([HAVE_LIBDL], [1],
+ [Define if you have the libdl library or equivalent.])],
+ [AC_CHECK_LIB([svld], [dlopen],
+ [AC_DEFINE([HAVE_LIBDL], [1],
+ [Define if you have the libdl library or equivalent.])
+ LIBADD_DL="-lsvld"],
+ [AC_CHECK_LIB([dld], [dld_link],
+ [AC_DEFINE([HAVE_DLD], [1],
+ [Define if you have the GNU dld library.])
+ LIBADD_DL="$LIBADD_DL -ldld"
+ ])
+ ])
+ ])
+ ])
+ ])
+ ])
+
if test "x$ac_cv_func_dlopen" = xyes || test "x$ac_cv_lib_dl_dlopen" = xyes; then
LIBS_SAVE="$LIBS"
LIBS="$LIBS $LIBADD_DL"
***************
*** 225,231 ****
# AC_LTDL_SYMBOL_USCORE
# ---------------------
! AC_DEFUN(AC_LTDL_SYMBOL_USCORE,
[dnl does the compiler prefix global symbols with an underscore?
AC_REQUIRE([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])dnl
AC_MSG_CHECKING([for _ prefix in compiled symbols])
--- 292,298 ----
# AC_LTDL_SYMBOL_USCORE
# ---------------------
! AC_DEFUN([AC_LTDL_SYMBOL_USCORE],
[dnl does the compiler prefix global symbols with an underscore?
AC_REQUIRE([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])dnl
AC_MSG_CHECKING([for _ prefix in compiled symbols])
***************
*** 264,270 ****
# AC_LTDL_DLSYM_USCORE
# --------------------
! AC_DEFUN(AC_LTDL_DLSYM_USCORE,
[AC_REQUIRE([AC_LTDL_SYMBOL_USCORE])dnl
if test x"$ac_cv_sys_symbol_underscore" = xyes; then
if test x"$ac_cv_func_dlopen" = xyes ||
--- 331,337 ----
# AC_LTDL_DLSYM_USCORE
# --------------------
! AC_DEFUN([AC_LTDL_DLSYM_USCORE],
[AC_REQUIRE([AC_LTDL_SYMBOL_USCORE])dnl
if test x"$ac_cv_sys_symbol_underscore" = xyes; then
if test x"$ac_cv_func_dlopen" = xyes ||
***************
*** 284,290 ****
if test x"$libltdl_cv_need_uscore" = xyes; then
AC_DEFINE(NEED_USCORE, 1,
! [Define if dlsym() requires a leading underscode in symbol names. ])
fi
])# AC_LTDL_DLSYM_USCORE
--- 351,357 ----
if test x"$libltdl_cv_need_uscore" = xyes; then
AC_DEFINE(NEED_USCORE, 1,
! [Define if dlsym() requires a leading underscore in symbol names. ])
fi
])# AC_LTDL_DLSYM_USCORE
Index: libtool/ltmain.in
diff -c libtool/ltmain.in:1.259.2.9 libtool/ltmain.in:1.259.2.26
*** libtool/ltmain.in:1.259.2.9 Mon Sep 10 20:05:33 2001
--- libtool/ltmain.in Fri Oct 11 12:06:07 2002
***************
*** 49,55 ****
fi
# The name of this program.
! progname=`$echo "$0" | sed 's%^.*/%%'`
modename="$progname"
# Constants.
--- 49,55 ----
fi
# The name of this program.
! progname=`$echo "$0" | ${SED} 's%^.*/%%'`
modename="$progname"
# Constants.
***************
*** 67,76 ****
# Sed substitution that helps us do robust quoting. It backslashifies
# metacharacters that are still active within double-quoted strings.
! Xsed='sed -e 1s/^X//'
sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g'
! SP2NL='tr \040 \012'
! NL2SP='tr \015\012 \040\040'
# NLS nuisances.
# Only set LANG and LC_ALL to C if already set.
--- 67,85 ----
# Sed substitution that helps us do robust quoting. It backslashifies
# metacharacters that are still active within double-quoted strings.
! Xsed="${SED}"' -e 1s/^X//'
sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g'
! # test EBCDIC or ASCII
! case `echo A|od -x` in
! *[Cc]1*) # EBCDIC based system
! SP2NL="tr '\100' '\n'"
! NL2SP="tr '\r\n' '\100\100'"
! ;;
! *) # Assume ASCII based system
! SP2NL="tr '\040' '\012'"
! NL2SP="tr '\015\012' '\040\040'"
! ;;
! esac
# NLS nuisances.
# Only set LANG and LC_ALL to C if already set.
***************
*** 144,150 ****
;;
--config)
! sed -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $0
exit 0
;;
--- 153,159 ----
;;
--config)
! ${SED} -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $0
exit 0
;;
***************
*** 177,182 ****
--- 186,193 ----
--mode) prevopt="--mode" prev=mode ;;
--mode=*) mode="$optarg" ;;
+ --preserve-dup-deps) duplicate_deps="yes" ;;
+
--quiet | --silent)
show=:
;;
***************
*** 215,221 ****
# Infer the operation mode.
if test -z "$mode"; then
case $nonopt in
! *cc | *++ | gcc* | *-gcc*)
mode=link
for arg
do
--- 226,232 ----
# Infer the operation mode.
if test -z "$mode"; then
case $nonopt in
! *cc | *++ | gcc* | *-gcc* | xlc*)
mode=link
for arg
do
***************
*** 467,473 ****
pic_mode=default
;;
esac
! if test $pic_mode = no && test "$deplibs_check_method" != pass_all; then
# non-PIC code in shared libraries is not supported
pic_mode=default
fi
--- 478,484 ----
pic_mode=default
;;
esac
! if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then
# non-PIC code in shared libraries is not supported
pic_mode=default
fi
***************
*** 992,998 ****
# so, if we see these flags be careful not to treat them like -L
-L[A-Z][A-Z]*:*)
case $with_gcc/$host in
! no/*-*-irix*)
compile_command="$compile_command $arg"
finalize_command="$finalize_command $arg"
;;
--- 1003,1009 ----
# so, if we see these flags be careful not to treat them like -L
-L[A-Z][A-Z]*:*)
case $with_gcc/$host in
! no/*-*-irix* | no/*-*-nonstopux*)
compile_command="$compile_command $arg"
finalize_command="$finalize_command $arg"
;;
***************
*** 1043,1056 ****
# These systems don't actually have a C library (as such)
test "X$arg" = "X-lc" && continue
;;
! *-*-openbsd*)
# Do not include libc due to us having libc/libc_r.
test "X$arg" = "X-lc" && continue
;;
esac
elif test "X$arg" = "X-lc_r"; then
case $host in
! *-*-openbsd*)
# Do not include libc_r directly, use -pthread flag.
continue
;;
--- 1054,1067 ----
# These systems don't actually have a C library (as such)
test "X$arg" = "X-lc" && continue
;;
! *-*-openbsd* | *-*-freebsd*)
# Do not include libc due to us having libc/libc_r.
test "X$arg" = "X-lc" && continue
;;
esac
elif test "X$arg" = "X-lc_r"; then
case $host in
! *-*-openbsd* | *-*-freebsd*)
# Do not include libc_r directly, use -pthread flag.
continue
;;
***************
*** 1330,1338 ****
# Find all interdependent deplibs by searching for libraries
# that are linked more than once (e.g. -la -lb -la)
for deplib in $deplibs; do
! case "$libs " in
! *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
! esac
libs="$libs $deplib"
done
deplibs=
--- 1341,1351 ----
# Find all interdependent deplibs by searching for libraries
# that are linked more than once (e.g. -la -lb -la)
for deplib in $deplibs; do
! if test "X$duplicate_deps" = "Xyes" ; then
! case "$libs " in
! *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
! esac
! fi
libs="$libs $deplib"
done
deplibs=
***************
*** 1461,1470 ****
lib)
if test "$deplibs_check_method" != pass_all; then
echo
! echo "*** Warning: This library needs some functionality provided by $deplib."
echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a"
! echo "*** shared version of the library, which you do not appear to have."
else
echo
echo "*** Warning: Linking the shared library $output against the"
--- 1474,1485 ----
lib)
if test "$deplibs_check_method" != pass_all; then
echo
! echo "*** Warning: Trying to link with static lib archive $deplib."
echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a"
! echo "*** shared version of the library, which you do not appear to have"
! echo "*** because the file extensions .$libext of this argument makes me believe"
! echo "*** that it is just a static archive that I should not used here."
else
echo
echo "*** Warning: Linking the shared library $output against the"
***************
*** 1508,1514 ****
fi
# Check to see that this really is a libtool archive.
! if (sed -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
else
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
exit 1
--- 1523,1529 ----
fi
# Check to see that this really is a libtool archive.
! if (${SED} -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
else
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
exit 1
***************
*** 1555,1563 ****
tmp_libs=
for deplib in $dependency_libs; do
deplibs="$deplib $deplibs"
! case "$tmp_libs " in
! *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
! esac
tmp_libs="$tmp_libs $deplib"
done
elif test $linkmode != prog && test $linkmode != lib; then
--- 1570,1580 ----
tmp_libs=
for deplib in $dependency_libs; do
deplibs="$deplib $deplibs"
! if test "X$duplicate_deps" = "Xyes" ; then
! case "$tmp_libs " in
! *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
! esac
! fi
tmp_libs="$tmp_libs $deplib"
done
elif test $linkmode != prog && test $linkmode != lib; then
***************
*** 1680,1688 ****
# or/and link against static libraries
newdependency_libs="$deplib $newdependency_libs"
fi
! case "$tmp_libs " in
! *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
! esac
tmp_libs="$tmp_libs $deplib"
done # for deplib
continue
--- 1697,1707 ----
# or/and link against static libraries
newdependency_libs="$deplib $newdependency_libs"
fi
! if test "X$duplicate_deps" = "Xyes" ; then
! case "$tmp_libs " in
! *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
! esac
! fi
tmp_libs="$tmp_libs $deplib"
done # for deplib
continue
***************
*** 1766,1773 ****
# Make a new name for the extract_expsyms_cmds to use
soroot="$soname"
! soname=`echo $soroot | sed -e 's/^.*\///'`
! newlib="libimp-`echo $soname | sed 's/^lib//;s/\.dll$//'`.a"
# If the library has no export list, then create one now
if test -f "$output_objdir/$soname-def"; then :
--- 1785,1792 ----
# Make a new name for the extract_expsyms_cmds to use
soroot="$soname"
! soname=`echo $soroot | ${SED} -e 's/^.*\///'`
! newlib="libimp-`echo $soname | ${SED} 's/^lib//;s/\.dll$//'`.a"
# If the library has no export list, then create one now
if test -f "$output_objdir/$soname-def"; then :
***************
*** 1926,1938 ****
# Just print a warning and add the library to dependency_libs so
# that the program can be linked against the static library.
echo
! echo "*** Warning: This library needs some functionality provided by $lib."
echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a"
echo "*** shared version of the library, which you do not appear to have."
if test "$module" = yes; then
! echo "*** Therefore, libtool will create a static module, that should work "
! echo "*** as long as the dlopening application is linked with the -dlopen flag."
if test -z "$global_symbol_pipe"; then
echo
echo "*** However, this would only work if libtool was able to extract symbol"
--- 1945,1958 ----
# Just print a warning and add the library to dependency_libs so
# that the program can be linked against the static library.
echo
! echo "*** Warning: This system can not link to static lib archive $lib."
echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a"
echo "*** shared version of the library, which you do not appear to have."
if test "$module" = yes; then
! echo "*** But as you try to build a module library, libtool will still create "
! echo "*** a static module, that should work as long as the dlopening application"
! echo "*** is linked with the -dlopen flag to resolve symbols at runtime."
if test -z "$global_symbol_pipe"; then
echo
echo "*** However, this would only work if libtool was able to extract symbol"
***************
*** 1981,1989 ****
tmp_libs=
for deplib in $dependency_libs; do
newdependency_libs="$deplib $newdependency_libs"
! case "$tmp_libs " in
! *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
! esac
tmp_libs="$tmp_libs $deplib"
done
--- 2001,2011 ----
tmp_libs=
for deplib in $dependency_libs; do
newdependency_libs="$deplib $newdependency_libs"
! if test "X$duplicate_deps" = "Xyes" ; then
! case "$tmp_libs " in
! *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
! esac
! fi
tmp_libs="$tmp_libs $deplib"
done
***************
*** 2009,2015 ****
if grep "^installed=no" $deplib > /dev/null; then
path="-L$absdir/$objdir"
else
! eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
if test -z "$libdir"; then
$echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
exit 1
--- 2031,2037 ----
if grep "^installed=no" $deplib > /dev/null; then
path="-L$absdir/$objdir"
else
! eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
if test -z "$libdir"; then
$echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
exit 1
***************
*** 2273,2288 ****
versuffix=".$current";
;;
! irix)
major=`expr $current - $age + 1`
! verstring="sgi$major.$revision"
# Add in all the interfaces that we are compatible with.
loop=$revision
while test $loop != 0; do
iface=`expr $revision - $loop`
loop=`expr $loop - 1`
! verstring="sgi$major.$iface:$verstring"
done
# Before this point, $major must not contain `.'.
--- 2295,2315 ----
versuffix=".$current";
;;
! irix | nonstopux)
major=`expr $current - $age + 1`
!
! case $version_type in
! nonstopux) verstring_prefix=nonstopux ;;
! *) verstring_prefix=sgi ;;
! esac
! verstring="$verstring_prefix$major.$revision"
# Add in all the interfaces that we are compatible with.
loop=$revision
while test $loop != 0; do
iface=`expr $revision - $loop`
loop=`expr $loop - 1`
! verstring="$verstring_prefix$major.$iface:$verstring"
done
# Before this point, $major must not contain `.'.
***************
*** 2296,2302 ****
;;
osf)
! major=`expr $current - $age`
versuffix=".$current.$age.$revision"
verstring="$current.$age.$revision"
--- 2323,2329 ----
;;
osf)
! major=.`expr $current - $age`
versuffix=".$current.$age.$revision"
verstring="$current.$age.$revision"
***************
*** 2388,2396 ****
# Eliminate all temporary directories.
for path in $notinst_path; do
! lib_search_path=`echo "$lib_search_path " | sed -e 's% $path % %g'`
! deplibs=`echo "$deplibs " | sed -e 's% -L$path % %g'`
! dependency_libs=`echo "$dependency_libs " | sed -e 's% -L$path % %g'`
done
if test -n "$xrpath"; then
--- 2415,2423 ----
# Eliminate all temporary directories.
for path in $notinst_path; do
! lib_search_path=`echo "$lib_search_path " | ${SED} -e 's% $path % %g'`
! deplibs=`echo "$deplibs " | ${SED} -e 's% -L$path % %g'`
! dependency_libs=`echo "$dependency_libs " | ${SED} -e 's% -L$path % %g'`
done
if test -n "$xrpath"; then
***************
*** 2441,2447 ****
*-*-netbsd*)
# Don't link with libc until the a.out ld.so is fixed.
;;
! *-*-openbsd*)
# Do not include libc due to us having libc/libc_r.
;;
*)
--- 2468,2474 ----
*-*-netbsd*)
# Don't link with libc until the a.out ld.so is fixed.
;;
! *-*-openbsd* | *-*-freebsd*)
# Do not include libc due to us having libc/libc_r.
;;
*)
***************
*** 2502,2519 ****
else
droppeddeps=yes
echo
! echo "*** Warning: This library needs some functionality provided by $i."
echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a"
! echo "*** shared version of the library, which you do not appear to have."
fi
else
newdeplibs="$newdeplibs $i"
fi
done
else
! # Error occured in the first compile. Let's try to salvage the situation:
! # Compile a seperate program for each library.
for i in $deplibs; do
name="`expr $i : '-l\(.*\)'`"
# If $name is empty we are operating on a -L argument.
--- 2529,2548 ----
else
droppeddeps=yes
echo
! echo "*** Warning: dynamic linker does not accept needed library $i."
echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a"
! echo "*** shared version of the library, which I believe you do not have"
! echo "*** because a test_compile did reveal that the linker did not use it for"
! echo "*** its dynamic dependency list that programs get resolved with at runtime."
fi
else
newdeplibs="$newdeplibs $i"
fi
done
else
! # Error occured in the first compile. Let's try to salvage
! # the situation: Compile a separate program for each library.
for i in $deplibs; do
name="`expr $i : '-l\(.*\)'`"
# If $name is empty we are operating on a -L argument.
***************
*** 2532,2541 ****
else
droppeddeps=yes
echo
! echo "*** Warning: This library needs some functionality provided by $i."
echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a"
! echo "*** shared version of the library, which you do not appear to have."
fi
else
droppeddeps=yes
--- 2561,2572 ----
else
droppeddeps=yes
echo
! echo "*** Warning: dynamic linker does not accept needed library $i."
echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a"
! echo "*** shared version of the library, which you do not appear to have"
! echo "*** because a test_compile did reveal that the linker did not use this one"
! echo "*** as a dynamic dependency that programs can get resolved with at runtime."
fi
else
droppeddeps=yes
***************
*** 2574,2587 ****
# but so what?
potlib="$potent_lib"
while test -h "$potlib" 2>/dev/null; do
! potliblink=`ls -ld $potlib | sed 's/.* -> //'`
case $potliblink in
[\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
*) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";;
esac
done
if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \
! | sed 10q \
| egrep "$file_magic_regex" > /dev/null; then
newdeplibs="$newdeplibs $a_deplib"
a_deplib=""
--- 2605,2618 ----
# but so what?
potlib="$potent_lib"
while test -h "$potlib" 2>/dev/null; do
! potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'`
case $potliblink in
[\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
*) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";;
esac
done
if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \
! | ${SED} 10q \
| egrep "$file_magic_regex" > /dev/null; then
newdeplibs="$newdeplibs $a_deplib"
a_deplib=""
***************
*** 2592,2601 ****
if test -n "$a_deplib" ; then
droppeddeps=yes
echo
! echo "*** Warning: This library needs some functionality provided by $a_deplib."
echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a"
! echo "*** shared version of the library, which you do not appear to have."
fi
else
# Add a -L argument.
--- 2623,2639 ----
if test -n "$a_deplib" ; then
droppeddeps=yes
echo
! echo "*** Warning: linker path does not have real file for library $a_deplib."
echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a"
! echo "*** shared version of the library, which you do not appear to have"
! echo "*** because I did check the linker path looking for a file starting"
! if test -z "$potlib" ; then
! echo "*** with $libname but no candidates were found. (...for file magic test)"
! else
! echo "*** with $libname and none of the candidates passed a file format test"
! echo "*** using a file magic. Last file checked: $potlib"
! fi
fi
else
# Add a -L argument.
***************
*** 2614,2621 ****
for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
for potent_lib in $potential_libs; do
if eval echo \"$potent_lib\" 2>/dev/null \
! | sed 10q \
| egrep "$match_pattern_regex" > /dev/null; then
newdeplibs="$newdeplibs $a_deplib"
a_deplib=""
--- 2652,2660 ----
for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
for potent_lib in $potential_libs; do
+ potlib="$potent_lib" # see symlink-check below in file_magic test
if eval echo \"$potent_lib\" 2>/dev/null \
! | ${SED} 10q \
| egrep "$match_pattern_regex" > /dev/null; then
newdeplibs="$newdeplibs $a_deplib"
a_deplib=""
***************
*** 2626,2635 ****
if test -n "$a_deplib" ; then
droppeddeps=yes
echo
! echo "*** Warning: This library needs some functionality provided by $a_deplib."
echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a"
! echo "*** shared version of the library, which you do not appear to have."
fi
else
# Add a -L argument.
--- 2665,2681 ----
if test -n "$a_deplib" ; then
droppeddeps=yes
echo
! echo "*** Warning: linker path does not have real file for library $a_deplib."
echo "*** I have the capability to make that library automatically link in when"
echo "*** you link to this library. But I can only do this if you have a"
! echo "*** shared version of the library, which you do not appear to have"
! echo "*** because I did check the linker path looking for a file starting"
! if test -z "$potlib" ; then
! echo "*** with $libname but no candidates were found. (...for regex pattern test)"
! else
! echo "*** with $libname and none of the candidates passed a file format test"
! echo "*** using a regex pattern. Last file checked: $potlib"
! fi
fi
else
# Add a -L argument.
***************
*** 2894,2900 ****
--- 2940,2957 ----
if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
eval cmds=\"$archive_expsym_cmds\"
else
+ save_deplibs="$deplibs"
+ for conv in $convenience; do
+ tmp_deplibs=
+ for test_deplib in $deplibs; do
+ if test "$test_deplib" != "$conv"; then
+ tmp_deplibs="$tmp_deplibs $test_deplib"
+ fi
+ done
+ deplibs="$tmp_deplibs"
+ done
eval cmds=\"$archive_cmds\"
+ deplibs="$save_deplibs"
fi
save_ifs="$IFS"; IFS='~'
for cmd in $cmds; do
***************
*** 3093,3099 ****
prog)
case $host in
! *cygwin*) output=`echo $output | sed -e 's,.exe$,,;s,$,.exe,'` ;;
esac
if test -n "$vinfo"; then
$echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2
--- 3150,3156 ----
prog)
case $host in
! *cygwin*) output=`echo $output | ${SED} -e 's,.exe$,,;s,$,.exe,'` ;;
esac
if test -n "$vinfo"; then
$echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2
***************
*** 3115,3120 ****
--- 3172,3184 ----
# On Rhapsody replace the C library is the System framework
compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
+ case $host in
+ *darwin*)
+ # Don't allow lazy linking, it breaks C++ global constructors
+ compile_command="$compile_command ${wl}-bind_at_load"
+ finalize_command="$finalize_command ${wl}-bind_at_load"
+ ;;
+ esac
;;
esac
***************
*** 3281,3289 ****
if test -z "$export_symbols"; then
export_symbols="$output_objdir/$output.exp"
$run $rm $export_symbols
! $run eval "sed -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
else
! $run eval "sed -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"'
$run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T'
$run eval 'mv "$nlist"T "$nlist"'
fi
--- 3345,3353 ----
if test -z "$export_symbols"; then
export_symbols="$output_objdir/$output.exp"
$run $rm $export_symbols
! $run eval "${SED} -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
else
! $run eval "${SED} -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"'
$run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T'
$run eval 'mv "$nlist"T "$nlist"'
fi
***************
*** 3291,3297 ****
for arg in $dlprefiles; do
$show "extracting global C symbols from \`$arg'"
! name=`echo "$arg" | sed -e 's%^.*/%%'`
$run eval 'echo ": $name " >> "$nlist"'
$run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
done
--- 3355,3361 ----
for arg in $dlprefiles; do
$show "extracting global C symbols from \`$arg'"
! name=`echo "$arg" | ${SED} -e 's%^.*/%%'`
$run eval 'echo ": $name " >> "$nlist"'
$run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
done
***************
*** 3306,3312 ****
fi
# Try sorting and uniquifying the output.
! if grep -v "^: " < "$nlist" | sort +2 | uniq > "$nlist"S; then
:
else
grep -v "^: " < "$nlist" > "$nlist"S
--- 3370,3382 ----
fi
# Try sorting and uniquifying the output.
! if grep -v "^: " < "$nlist" |
! if sort -k 3 </dev/null >/dev/null 2>&1; then
! sort -k 3
! else
! sort +2
! fi |
! uniq > "$nlist"S; then
:
else
grep -v "^: " < "$nlist" > "$nlist"S
***************
*** 3528,3534 ****
relink_command="$var=\"$var_value\"; export $var; $relink_command"
fi
done
! relink_command="cd `pwd`; $relink_command"
relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
fi
--- 3598,3604 ----
relink_command="$var=\"$var_value\"; export $var; $relink_command"
fi
done
! relink_command="(cd `pwd`; $relink_command)"
relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
fi
***************
*** 3548,3554 ****
# win32 will think the script is a binary if it has
# a .exe suffix, so we strip it off here.
case $output in
! *.exe) output=`echo $output|sed 's,.exe$,,'` ;;
esac
# test for cygwin because mv fails w/o .exe extensions
case $host in
--- 3618,3624 ----
# win32 will think the script is a binary if it has
# a .exe suffix, so we strip it off here.
case $output in
! *.exe) output=`echo $output|${SED} 's,.exe$,,'` ;;
esac
# test for cygwin because mv fails w/o .exe extensions
case $host in
***************
*** 3572,3578 ****
# Sed substitution that helps us do robust quoting. It backslashifies
# metacharacters that are still active within double-quoted strings.
! Xsed='sed -e 1s/^X//'
sed_quote_subst='$sed_quote_subst'
# The HP-UX ksh and POSIX shell print the target directory to stdout
--- 3642,3648 ----
# Sed substitution that helps us do robust quoting. It backslashifies
# metacharacters that are still active within double-quoted strings.
! Xsed="${SED}"' -e 1s/^X//'
sed_quote_subst='$sed_quote_subst'
# The HP-UX ksh and POSIX shell print the target directory to stdout
***************
*** 3610,3616 ****
test \"x\$thisdir\" = \"x\$file\" && thisdir=.
# Follow symbolic links until we get to the real thisdir.
! file=\`ls -ld \"\$file\" | sed -n 's/.*-> //p'\`
while test -n \"\$file\"; do
destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\`
--- 3680,3686 ----
test \"x\$thisdir\" = \"x\$file\" && thisdir=.
# Follow symbolic links until we get to the real thisdir.
! file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\`
while test -n \"\$file\"; do
destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\`
***************
*** 3623,3629 ****
fi
file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\`
! file=\`ls -ld \"\$thisdir/\$file\" | sed -n 's/.*-> //p'\`
done
# Try to get the absolute directory name.
--- 3693,3699 ----
fi
file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\`
! file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\`
done
# Try to get the absolute directory name.
***************
*** 3637,3643 ****
progdir=\"\$thisdir/$objdir\"
if test ! -f \"\$progdir/\$program\" || \\
! { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | sed 1q\`; \\
test \"X\$file\" != \"X\$progdir/\$program\"; }; then
file=\"\$\$-\$program\"
--- 3707,3713 ----
progdir=\"\$thisdir/$objdir\"
if test ! -f \"\$progdir/\$program\" || \\
! { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\
test \"X\$file\" != \"X\$progdir/\$program\"; }; then
file=\"\$\$-\$program\"
***************
*** 3683,3689 ****
$shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
# Some systems cannot cope with colon-terminated $shlibpath_var
! # The second colon is a workaround for a bug in BeOS R4 sed
$shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\`
export $shlibpath_var
--- 3753,3759 ----
$shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
# Some systems cannot cope with colon-terminated $shlibpath_var
! # The second colon is a workaround for a bug in BeOS R4 ${SED}
$shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\`
export $shlibpath_var
***************
*** 3858,3864 ****
fi
done
# Quote the link command for shipping.
! relink_command="cd `pwd`; $SHELL $0 --mode=relink $libtool_args"
relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
# Only create the output if not a dry run.
--- 3928,3934 ----
fi
done
# Quote the link command for shipping.
! relink_command="(cd `pwd`; $SHELL $0 --mode=relink $libtool_args)"
relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
# Only create the output if not a dry run.
***************
*** 3875,3881 ****
case $deplib in
*.la)
name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
! eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
if test -z "$libdir"; then
$echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
exit 1
--- 3945,3951 ----
case $deplib in
*.la)
name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
! eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
if test -z "$libdir"; then
$echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
exit 1
***************
*** 3889,3895 ****
newdlfiles=
for lib in $dlfiles; do
name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
! eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
if test -z "$libdir"; then
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
exit 1
--- 3959,3965 ----
newdlfiles=
for lib in $dlfiles; do
name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
! eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
if test -z "$libdir"; then
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
exit 1
***************
*** 3900,3906 ****
newdlprefiles=
for lib in $dlprefiles; do
name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
! eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
if test -z "$libdir"; then
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
exit 1
--- 3970,3976 ----
newdlprefiles=
for lib in $dlprefiles; do
name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
! eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
if test -z "$libdir"; then
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
exit 1
***************
*** 4124,4130 ****
*.la)
# Check to see that this really is a libtool archive.
! if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
else
$echo "$modename: \`$file' is not a valid libtool archive" 1>&2
$echo "$help" 1>&2
--- 4194,4200 ----
*.la)
# Check to see that this really is a libtool archive.
! if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
else
$echo "$modename: \`$file' is not a valid libtool archive" 1>&2
$echo "$help" 1>&2
***************
*** 4273,4291 ****
fi
# Do a test to see if this is really a libtool program.
! if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
notinst_deplibs=
relink_command=
# If there is no directory component, then add one.
case $file in
! */* | *\\*) . $file ;;
! *) . ./$file ;;
esac
# Check the variables that should have been set.
if test -z "$notinst_deplibs"; then
! $echo "$modename: invalid libtool wrapper script \`$file'" 1>&2
exit 1
fi
--- 4343,4369 ----
fi
# Do a test to see if this is really a libtool program.
! case $host in
! *cygwin*|*mingw*)
! wrapper=`echo $file | ${SED} -e 's,.exe$,,'`
! ;;
! *)
! wrapper=$file
! ;;
! esac
! if (${SED} -e '4q' $wrapper | egrep "^# Generated by .*$PACKAGE")>/dev/null 2>&1; then
notinst_deplibs=
relink_command=
# If there is no directory component, then add one.
case $file in
! */* | *\\*) . $wrapper ;;
! *) . ./$wrapper ;;
esac
# Check the variables that should have been set.
if test -z "$notinst_deplibs"; then
! $echo "$modename: invalid libtool wrapper script \`$wrapper'" 1>&2
exit 1
fi
***************
*** 4310,4317 ****
relink_command=
# If there is no directory component, then add one.
case $file in
! */* | *\\*) . $file ;;
! *) . ./$file ;;
esac
outputname=
--- 4388,4395 ----
relink_command=
# If there is no directory component, then add one.
case $file in
! */* | *\\*) . $wrapper ;;
! *) . ./$wrapper ;;
esac
outputname=
***************
*** 4359,4365 ****
destfile=$destfile.exe
;;
*:*.exe)
! destfile=`echo $destfile | sed -e 's,.exe$,,'`
;;
esac
;;
--- 4437,4443 ----
destfile=$destfile.exe
;;
*:*.exe)
! destfile=`echo $destfile | ${SED} -e 's,.exe$,,'`
;;
esac
;;
***************
*** 4507,4513 ****
case $file in
*.la)
# Check to see that this really is a libtool archive.
! if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
else
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
$echo "$help" 1>&2
--- 4585,4591 ----
case $file in
*.la)
# Check to see that this really is a libtool archive.
! if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
else
$echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
$echo "$help" 1>&2
***************
*** 4578,4584 ****
-*) ;;
*)
# Do a test to see if this is really a libtool program.
! if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
# If there is no directory component, then add one.
case $file in
*/* | *\\*) . $file ;;
--- 4656,4662 ----
-*) ;;
*)
# Do a test to see if this is really a libtool program.
! if (${SED} -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
# If there is no directory component, then add one.
case $file in
*/* | *\\*) . $file ;;
***************
*** 4610,4616 ****
fi
# Now prepare to actually exec the command.
! exec_cmd='"$cmd"$args'
else
# Display what would be done.
if test -n "$shlibpath_var"; then
--- 4688,4694 ----
fi
# Now prepare to actually exec the command.
! exec_cmd="\$cmd$args"
else
# Display what would be done.
if test -n "$shlibpath_var"; then
***************
*** 4687,4693 ****
case $name in
*.la)
# Possibly a libtool archive, so verify it.
! if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
. $dir/$name
# Delete the libtool libraries and symlinks.
--- 4765,4771 ----
case $name in
*.la)
# Possibly a libtool archive, so verify it.
! if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
. $dir/$name
# Delete the libtool libraries and symlinks.
***************
*** 4742,4748 ****
*)
# Do a test to see if this is a libtool program.
if test $mode = clean &&
! (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
relink_command=
. $dir/$file
--- 4820,4826 ----
*)
# Do a test to see if this is a libtool program.
if test $mode = clean &&
! (${SED} -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
relink_command=
. $dir/$file
Index: libtool/doc/libtool.texi
diff -c libtool/doc/libtool.texi:1.116.2.1 libtool/doc/libtool.texi:1.116.2.4
*** libtool/doc/libtool.texi:1.116.2.1 Mon Sep 10 18:25:55 2001
--- libtool/doc/libtool.texi Mon Jan 14 14:04:40 2002
***************
*** 165,171 ****
* Libltdl interface:: How to use libltdl in your programs.
* Modules for libltdl:: Creating modules that can be @code{dlopen}ed.
! * Thread Saftey in libltdl:: Registering callbacks for multi-thread safety.
* User defined module data:: Associating data with loaded modules.
* Module loaders for libltdl:: Creating user defined module loaders.
* Distributing libltdl:: How to distribute libltdl with your package.
--- 165,171 ----
* Libltdl interface:: How to use libltdl in your programs.
* Modules for libltdl:: Creating modules that can be @code{dlopen}ed.
! * Thread Safety in libltdl:: Registering callbacks for multi-thread safety.
* User defined module data:: Associating data with loaded modules.
* Module loaders for libltdl:: Creating user defined module loaders.
* Distributing libltdl:: How to distribute libltdl with your package.
***************
*** 1063,1068 ****
--- 1063,1077 ----
Display basic configuration options. This provides a way for packages
to determine whether shared or static libraries will be built.
+ @item --preserve-dup-deps
+ Do not remove duplicate dependencies in libraries. When building packages
+ with static libraries, the libraries may depend circularly on each other
+ (shared libs can too, but for those it doesn't matter), so there are
+ situations, where -la -lb -la is required, and the second -la may not be
+ stripped or the link will fail. In cases where these duplications are
+ required, this option will preserve them, only stripping the libraries
+ that libtool knows it can safely.
+
@item --finish
Same as @samp{--mode=finish}.
***************
*** 2637,2643 ****
@menu
* Libltdl interface:: How to use libltdl in your programs.
* Modules for libltdl:: Creating modules that can be @code{dlopen}ed.
! * Thread Saftey in libltdl:: Registering callbacks for multi-thread safety.
* User defined module data:: Associating data with loaded modules.
* Module loaders for libltdl:: Creating user defined module loaders.
* Distributing libltdl:: How to distribute libltdl with your package.
--- 2646,2652 ----
@menu
* Libltdl interface:: How to use libltdl in your programs.
* Modules for libltdl:: Creating modules that can be @code{dlopen}ed.
! * Thread Safety in libltdl:: Registering callbacks for multi-thread safety.
* User defined module data:: Associating data with loaded modules.
* Module loaders for libltdl:: Creating user defined module loaders.
* Distributing libltdl:: How to distribute libltdl with your package.
***************
*** 2934,2940 ****
@end example
! @node Thread Saftey in libltdl
@section Using libtldl in a multi threaded environment
Using the @code{lt_dlmutex_register()} function, and by providing some
--- 2943,2949 ----
@end example
! @node Thread Safety in libltdl
@section Using libtldl in a multi threaded environment
Using the @code{lt_dlmutex_register()} function, and by providing some
***************
*** 3416,3429 ****
sub-makes within libltdl's directory, using automake's @var{SUBDIRS},
for example. Both macros define the shell variables @var{LIBLTDL}, to
the link flag that you should use to link with libltdl, and
! @var{INCLTDL}, to the preprocessor flag that you should use to compile
with programs that include @file{ltdl.h}. It is up to you to use
@samp{AC_SUBST} to ensure that this variable will be available in
@file{Makefile}s, or add them to variables that are @samp{AC_SUBST}ed by
default, such as @var{LIBS} and @var{CPPFLAGS}.
If you're using the convenience libltdl, @var{LIBLTDL} will be the
! pathname for the convenience version of libltdl and @var{INCLTDL} will be
@samp{-I} followed by the directory that contains libltdl, both starting
with @samp{$@{top_builddir@}/} or @samp{$@{top_srcdir@}/}, respectively.
--- 3425,3438 ----
sub-makes within libltdl's directory, using automake's @var{SUBDIRS},
for example. Both macros define the shell variables @var{LIBLTDL}, to
the link flag that you should use to link with libltdl, and
! @var{LTDLINCL}, to the preprocessor flag that you should use to compile
with programs that include @file{ltdl.h}. It is up to you to use
@samp{AC_SUBST} to ensure that this variable will be available in
@file{Makefile}s, or add them to variables that are @samp{AC_SUBST}ed by
default, such as @var{LIBS} and @var{CPPFLAGS}.
If you're using the convenience libltdl, @var{LIBLTDL} will be the
! pathname for the convenience version of libltdl and @var{LTDLINCL} will be
@samp{-I} followed by the directory that contains libltdl, both starting
with @samp{$@{top_builddir@}/} or @samp{$@{top_srcdir@}/}, respectively.
***************
*** 3432,3446 ****
@samp{AC_LIBLTDL_INSTALLABLE} may fail to detect it, if libltdl depends
on symbols provided by libraries other than the C library. In this
case, it will needlessly build and install libltdl.}, @var{LIBLTDL} will
! be set to @samp{-lltdl} and @var{INCLTDL} will be empty (which is just a
blind assumption that @file{ltdl.h} is somewhere in the include path if
libltdl is in the library path). If an installable version of libltdl
must be built, its pathname, starting with @samp{$@{top_builddir@}/},
! will be stored in @var{LIBLTDL}, and @var{INCLTDL} will be set just like
in the case of convenience library.
So, when you want to link a program with libltdl, be it a convenience,
! installed or installable library, just compile with @samp{$(INCLTDL)}
and link it with @samp{$(LIBLTDL)}, using libtool.
You should probably also add @samp{AC_LIBTOOL_DLOPEN} to your
--- 3441,3455 ----
@samp{AC_LIBLTDL_INSTALLABLE} may fail to detect it, if libltdl depends
on symbols provided by libraries other than the C library. In this
case, it will needlessly build and install libltdl.}, @var{LIBLTDL} will
! be set to @samp{-lltdl} and @var{LTDLINCL} will be empty (which is just a
blind assumption that @file{ltdl.h} is somewhere in the include path if
libltdl is in the library path). If an installable version of libltdl
must be built, its pathname, starting with @samp{$@{top_builddir@}/},
! will be stored in @var{LIBLTDL}, and @var{LTDLINCL} will be set just like
in the case of convenience library.
So, when you want to link a program with libltdl, be it a convenience,
! installed or installable library, just compile with @samp{$(LTDLINCL)}
and link it with @samp{$(LIBLTDL)}, using libtool.
You should probably also add @samp{AC_LIBTOOL_DLOPEN} to your
***************
*** 3463,3470 ****
dnl Enable building of the convenience library
dnl and set LIBLTDL accordingly
AC_LIBLTDL_CONVENIENCE
! dnl Substitute INCLTDL and LIBLTDL in the Makefiles
! AC_SUBST(INCLTDL)
AC_SUBST(LIBLTDL)
dnl Check for dlopen support
AC_LIBTOOL_DLOPEN
--- 3472,3479 ----
dnl Enable building of the convenience library
dnl and set LIBLTDL accordingly
AC_LIBLTDL_CONVENIENCE
! dnl Substitute LTDLINCL and LIBLTDL in the Makefiles
! AC_SUBST(LTDLINCL)
AC_SUBST(LIBLTDL)
dnl Check for dlopen support
AC_LIBTOOL_DLOPEN
***************
*** 3480,3486 ****
...
SUBDIRS = libltdl
! INCLUDES = $(INCLTDL)
myprog_LDFLAGS = -export-dynamic
# The quotes around -dlopen below fool automake <= 1.4 into accepting it
--- 3489,3495 ----
...
SUBDIRS = libltdl
! INCLUDES = $(LTDLINCL)
myprog_LDFLAGS = -export-dynamic
# The quotes around -dlopen below fool automake <= 1.4 into accepting it
***************
*** 4106,4115 ****
@table @code
@item aix3*
@itemx aix4*
! AIX compilers have no PIC flags, since AIX has been ported only to
! PowerPC and RS/6000 chips. @footnote{All code compiled for the PowerPC
! and RS/6000 chips (@code{powerpc-*-*}, @code{powerpcle-*-*}, and
! @code{rs6000-*-*}) is position-independent, regardless of the operating
system or compiler suite. So, ``regular objects'' can be used to build
shared libraries on these systems and no special PIC compiler flags are
required.}
--- 4115,4124 ----
@table @code
@item aix3*
@itemx aix4*
! Most AIX compilers have no PIC flags, since AIX (with the exception of
! AIX for IA-64) runs on PowerPC and RS/6000 chips. @footnote{All code compiled
! for the PowerPC and RS/6000 chips (@code{powerpc-*-*}, @code{powerpcle-*-*},
! and @code{rs6000-*-*}) is position-independent, regardless of the operating
system or compiler suite. So, ``regular objects'' can be used to build
shared libraries on these systems and no special PIC compiler flags are
required.}
***************
*** 4148,4162 ****
other's symbols, it might be necessary to list one of those archives
both before and after the other one. Libtool does not currently cope
with this situation well, since dupicate libraries are removed from
! thr link line.
!
! If you find yourself developing on a host that requires you to list
! libraries multiple times in order for it to generate correctly linked
! objects, you can defeat libtool's removal algorithm like this:
!
! @example
! $ libtool ... -lfoo -lbar -Wl,-lfoo
! @end example
@node Archivers
@subsection Archivers
--- 4157,4165 ----
other's symbols, it might be necessary to list one of those archives
both before and after the other one. Libtool does not currently cope
with this situation well, since dupicate libraries are removed from
! the link line by default. Libtool provides the command line option
! @samp{--preserve-dup-deps} to preserve all duplicate dependencies
! in cases where it is necessary.
@node Archivers
@subsection Archivers
Index: libtool/libltdl/Makefile.am
diff -c libtool/libltdl/Makefile.am:1.40.2.1 libtool/libltdl/Makefile.am:1.40.2.2
*** libtool/libltdl/Makefile.am:1.40.2.1 Mon Sep 10 21:22:03 2001
--- libtool/libltdl/Makefile.am Tue Sep 11 15:28:19 2001
***************
*** 27,33 ****
## Because we do not have automatic dependency tracking:
ltdl.lo: ltdl.h config.h
! $(OBJECTS): libtool
libtool: $(LIBTOOL_DEPS)
$(SHELL) ./config.status --recheck
--- 27,33 ----
## Because we do not have automatic dependency tracking:
ltdl.lo: ltdl.h config.h
! $(OBJECTS) $(libltdl_la_OBJECTS) $(libltdlc_la_OBJECTS): libtool
libtool: $(LIBTOOL_DEPS)
$(SHELL) ./config.status --recheck
Index: libtool/libltdl/ltdl.c
diff -c libtool/libltdl/ltdl.c:1.134.2.6 libtool/libltdl/ltdl.c:1.134.2.15
*** libtool/libltdl/ltdl.c:1.134.2.6 Mon Sep 10 23:18:52 2001
--- libtool/libltdl/ltdl.c Tue Oct 22 21:39:55 2002
***************
*** 94,99 ****
--- 94,103 ----
#include "ltdl.h"
+ #if WITH_DMALLOC
+ # include <dmalloc.h>
+ #endif
+
***************
*** 166,171 ****
--- 170,187 ----
/* The following macros reduce the amount of typing needed to cast
assigned memory. */
+ #if WITH_DMALLOC
+
+ #define LT_DLMALLOC(tp, n) ((tp *) xmalloc ((n) * sizeof(tp)))
+ #define LT_DLREALLOC(tp, p, n) ((tp *) xrealloc ((p), (n) * sizeof(tp)))
+ #define LT_DLFREE(p) \
+ LT_STMT_START { if (p) (p) = (xfree (p), (lt_ptr) 0); } LT_STMT_END
+
+ #define LT_EMALLOC(tp, n) ((tp *) xmalloc ((n) * sizeof(tp)))
+ #define LT_EREALLOC(tp, p, n) ((tp *) xrealloc ((p), (n) * sizeof(tp)))
+
+ #else
+
#define LT_DLMALLOC(tp, n) ((tp *) lt_dlmalloc ((n) * sizeof(tp)))
#define LT_DLREALLOC(tp, p, n) ((tp *) rpl_realloc ((p), (n) * sizeof(tp)))
#define LT_DLFREE(p) \
***************
*** 174,181 ****
#define LT_EMALLOC(tp, n) ((tp *) lt_emalloc ((n) * sizeof(tp)))
#define LT_EREALLOC(tp, p, n) ((tp *) lt_erealloc ((p), (n) * sizeof(tp)))
#define LT_DLMEM_REASSIGN(p, q) LT_STMT_START { \
! if ((p) != (q)) { lt_dlfree (p); (p) = (q); (q) = 0; } \
} LT_STMT_END
--- 190,199 ----
#define LT_EMALLOC(tp, n) ((tp *) lt_emalloc ((n) * sizeof(tp)))
#define LT_EREALLOC(tp, p, n) ((tp *) lt_erealloc ((p), (n) * sizeof(tp)))
+ #endif
+
#define LT_DLMEM_REASSIGN(p, q) LT_STMT_START { \
! if ((p) != (q)) { if (p) lt_dlfree (p); (p) = (q); (q) = 0; } \
} LT_STMT_END
***************
*** 187,197 ****
static char *strdup LT_PARAMS((const char *str));
! char *
strdup(str)
const char *str;
{
! char *tmp = 0;
if (str)
{
--- 205,215 ----
static char *strdup LT_PARAMS((const char *str));
! static char *
strdup(str)
const char *str;
{
! char *tmp = NULL;
if (str)
{
***************
*** 213,228 ****
static int strcmp LT_PARAMS((const char *str1, const char *str2));
! int
strcmp (str1, str2)
const char *str1;
const char *str2;
{
if (str1 == str2)
return 0;
! if (str1 == 0)
return -1;
! if (str2 == 0)
return 1;
for (;*str1 && *str2; ++str1, ++str2)
--- 231,246 ----
static int strcmp LT_PARAMS((const char *str1, const char *str2));
! static int
strcmp (str1, str2)
const char *str1;
const char *str2;
{
if (str1 == str2)
return 0;
! if (str1 == NULL)
return -1;
! if (str2 == NULL)
return 1;
for (;*str1 && *str2; ++str1, ++str2)
***************
*** 245,251 ****
static const char *strchr LT_PARAMS((const char *str, int ch));
! const char*
strchr(str, ch)
const char *str;
int ch;
--- 263,269 ----
static const char *strchr LT_PARAMS((const char *str, int ch));
! static const char*
strchr(str, ch)
const char *str;
int ch;
***************
*** 271,282 ****
static const char *strrchr LT_PARAMS((const char *str, int ch));
! const char*
strrchr(str, ch)
const char *str;
int ch;
{
! const char *p, *q = 0;
for (p = str; *p != LT_EOS_CHAR; ++p)
{
--- 289,300 ----
static const char *strrchr LT_PARAMS((const char *str, int ch));
! static const char*
strrchr(str, ch)
const char *str;
int ch;
{
! const char *p, *q = NULL;
for (p = str; *p != LT_EOS_CHAR; ++p)
{
***************
*** 305,311 ****
static lt_ptr memcpy LT_PARAMS((lt_ptr dest, const lt_ptr src, size_t size));
! lt_ptr
memcpy (dest, src, size)
lt_ptr dest;
const lt_ptr src;
--- 323,329 ----
static lt_ptr memcpy LT_PARAMS((lt_ptr dest, const lt_ptr src, size_t size));
! static lt_ptr
memcpy (dest, src, size)
lt_ptr dest;
const lt_ptr src;
***************
*** 329,335 ****
static lt_ptr memmove LT_PARAMS((lt_ptr dest, const lt_ptr src, size_t size));
! lt_ptr
memmove (dest, src, size)
lt_ptr dest;
const lt_ptr src;
--- 347,353 ----
static lt_ptr memmove LT_PARAMS((lt_ptr dest, const lt_ptr src, size_t size));
! static lt_ptr
memmove (dest, src, size)
lt_ptr dest;
const lt_ptr src;
***************
*** 364,385 ****
#undef realloc
#define realloc rpl_realloc
! lt_ptr
realloc (ptr, size)
lt_ptr ptr;
size_t size;
{
! if (size <= 0)
{
/* For zero or less bytes, free the original memory */
! if (ptr != 0)
{
lt_dlfree (ptr);
}
return (lt_ptr) 0;
}
! else if (ptr == 0)
{
/* Allow reallocation of a NULL pointer. */
return lt_dlmalloc (size);
--- 382,403 ----
#undef realloc
#define realloc rpl_realloc
! static lt_ptr
realloc (ptr, size)
lt_ptr ptr;
size_t size;
{
! if (size == 0)
{
/* For zero or less bytes, free the original memory */
! if (ptr != NULL)
{
lt_dlfree (ptr);
}
return (lt_ptr) 0;
}
! else if (ptr == NULL)
{
/* Allow reallocation of a NULL pointer. */
return lt_dlmalloc (size);
***************
*** 408,414 ****
static error_t argz_append LT_PARAMS((char **pargz, size_t *pargz_len,
const char *buf, size_t buf_len));
! error_t
argz_append (pargz, pargz_len, buf, buf_len)
char **pargz;
size_t *pargz_len;
--- 426,432 ----
static error_t argz_append LT_PARAMS((char **pargz, size_t *pargz_len,
const char *buf, size_t buf_len));
! static error_t
argz_append (pargz, pargz_len, buf, buf_len)
char **pargz;
size_t *pargz_len;
***************
*** 450,456 ****
static error_t argz_create_sep LT_PARAMS((const char *str, int delim,
char **pargz, size_t *pargz_len));
! error_t
argz_create_sep (str, delim, pargz, pargz_len)
const char *str;
int delim;
--- 468,474 ----
static error_t argz_create_sep LT_PARAMS((const char *str, int delim,
char **pargz, size_t *pargz_len));
! static error_t
argz_create_sep (str, delim, pargz, pargz_len)
const char *str;
int delim;
***************
*** 458,464 ****
size_t *pargz_len;
{
size_t argz_len;
! char *argz = 0;
assert (str);
assert (pargz);
--- 476,482 ----
size_t *pargz_len;
{
size_t argz_len;
! char *argz = NULL;
assert (str);
assert (pargz);
***************
*** 513,519 ****
static error_t argz_insert LT_PARAMS((char **pargz, size_t *pargz_len,
char *before, const char *entry));
! error_t
argz_insert (pargz, pargz_len, before, entry)
char **pargz;
size_t *pargz_len;
--- 531,537 ----
static error_t argz_insert LT_PARAMS((char **pargz, size_t *pargz_len,
char *before, const char *entry));
! static error_t
argz_insert (pargz, pargz_len, before, entry)
char **pargz;
size_t *pargz_len;
***************
*** 524,534 ****
assert (pargz_len);
assert (entry && *entry);
- /* Either PARGZ/PARGZ_LEN is empty and BEFORE is NULL,
- or BEFORE points into an address within the ARGZ vector. */
- assert ((!*pargz && !*pargz_len && !before)
- || ((*pargz <= before) && (before < (*pargz + *pargz_len))));
-
/* No BEFORE address indicates ENTRY should be inserted after the
current last element. */
if (!before)
--- 542,547 ----
***************
*** 575,581 ****
static char *argz_next LT_PARAMS((char *argz, size_t argz_len,
const char *entry));
! char *
argz_next (argz, argz_len, entry)
char *argz;
size_t argz_len;
--- 588,594 ----
static char *argz_next LT_PARAMS((char *argz, size_t argz_len,
const char *entry));
! static char *
argz_next (argz, argz_len, entry)
char *argz;
size_t argz_len;
***************
*** 620,626 ****
static void argz_stringify LT_PARAMS((char *argz, size_t argz_len,
int sep));
! void
argz_stringify (argz, argz_len, sep)
char *argz;
size_t argz_len;
--- 633,639 ----
static void argz_stringify LT_PARAMS((char *argz, size_t argz_len,
int sep));
! static void
argz_stringify (argz, argz_len, sep)
char *argz;
size_t argz_len;
***************
*** 744,754 ****
/* The mutex functions stored here are global, and are necessarily the
same for all threads that wish to share access to libltdl. */
! static lt_dlmutex_lock *lt_dlmutex_lock_func = 0;
! static lt_dlmutex_unlock *lt_dlmutex_unlock_func = 0;
! static lt_dlmutex_seterror *lt_dlmutex_seterror_func = 0;
! static lt_dlmutex_geterror *lt_dlmutex_geterror_func = 0;
! static const char *lt_dllast_error = 0;
/* Either set or reset the mutex functions. Either all the arguments must
--- 757,767 ----
/* The mutex functions stored here are global, and are necessarily the
same for all threads that wish to share access to libltdl. */
! static lt_dlmutex_lock *lt_dlmutex_lock_func = NULL;
! static lt_dlmutex_unlock *lt_dlmutex_unlock_func = NULL;
! static lt_dlmutex_seterror *lt_dlmutex_seterror_func = NULL;
! static lt_dlmutex_geterror *lt_dlmutex_geterror_func = NULL;
! static const char *lt_dllast_error = NULL;
/* Either set or reset the mutex functions. Either all the arguments must
***************
*** 797,803 ****
/* --- ERROR HANDLING --- */
! static const char **user_error_strings = 0;
static int errorcount = LT_ERROR_MAX;
int
--- 810,816 ----
/* --- ERROR HANDLING --- */
! static const char **user_error_strings = NULL;
static int errorcount = LT_ERROR_MAX;
int
***************
*** 806,812 ****
{
int errindex = 0;
int result = -1;
! const char **temp = (const char **) 0;
assert (diagnostic);
--- 819,825 ----
{
int errindex = 0;
int result = -1;
! const char **temp = NULL;
assert (diagnostic);
***************
*** 856,862 ****
return errors;
}
! lt_ptr
lt_emalloc (size)
size_t size;
{
--- 869,875 ----
return errors;
}
! static lt_ptr
lt_emalloc (size)
size_t size;
{
***************
*** 866,872 ****
return mem;
}
! lt_ptr
lt_erealloc (addr, size)
lt_ptr addr;
size_t size;
--- 879,885 ----
return mem;
}
! static lt_ptr
lt_erealloc (addr, size)
lt_ptr addr;
size_t size;
***************
*** 877,890 ****
return mem;
}
! char *
lt_estrdup (str)
const char *str;
{
! char *dup = strdup (str);
! if (LT_STRLEN (str) && !dup)
LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
! return dup;
}
--- 890,903 ----
return mem;
}
! static char *
lt_estrdup (str)
const char *str;
{
! char *copy = strdup (str);
! if (LT_STRLEN (str) && !copy)
LT_DLMUTEX_SETERROR (LT_DLSTRERROR (NO_MEMORY));
! return copy;
}
***************
*** 1118,1124 ****
lt_module module;
const char *symbol;
{
! lt_ptr address = 0;
/* sys_shl_open should never return a NULL module handle */
if (module == (lt_module) 0)
--- 1131,1137 ----
lt_module module;
const char *symbol;
{
! lt_ptr address = NULL;
/* sys_shl_open should never return a NULL module handle */
if (module == (lt_module) 0)
***************
*** 1162,1177 ****
const char *filename;
{
lt_dlhandle cur;
! lt_module module = 0;
! const char *errormsg = 0;
! char *searchname = 0;
char *ext;
char self_name_buf[MAX_PATH];
if (!filename)
{
/* Get the name of main module */
! *self_name_buf = 0;
GetModuleFileName (NULL, self_name_buf, sizeof (self_name_buf));
filename = ext = self_name_buf;
}
--- 1175,1190 ----
const char *filename;
{
lt_dlhandle cur;
! lt_module module = NULL;
! const char *errormsg = NULL;
! char *searchname = NULL;
char *ext;
char self_name_buf[MAX_PATH];
if (!filename)
{
/* Get the name of main module */
! *self_name_buf = '\0';
GetModuleFileName (NULL, self_name_buf, sizeof (self_name_buf));
filename = ext = self_name_buf;
}
***************
*** 1221,1227 ****
{
if (!cur->module)
{
! cur = 0;
break;
}
--- 1234,1240 ----
{
if (!cur->module)
{
! cur = NULL;
break;
}
***************
*** 1237,1243 ****
if (cur || !module)
{
LT_DLMUTEX_SETERROR (LT_DLSTRERROR (CANNOT_OPEN));
! module = 0;
}
return module;
--- 1250,1256 ----
if (cur || !module)
{
LT_DLMUTEX_SETERROR (LT_DLSTRERROR (CANNOT_OPEN));
! module = NULL;
}
return module;
***************
*** 1343,1355 ****
lt_module module;
const char *symbol;
{
! lt_ptr address = 0;
image_id image = (image_id) module;
if (get_image_symbol (image, symbol, B_SYMBOL_TYPE_ANY, address) != B_OK)
{
LT_DLMUTEX_SETERROR (LT_DLSTRERROR (SYMBOL_NOT_FOUND));
! address = 0;
}
return address;
--- 1356,1368 ----
lt_module module;
const char *symbol;
{
! lt_ptr address = NULL;
image_id image = (image_id) module;
if (get_image_symbol (image, symbol, B_SYMBOL_TYPE_ANY, address) != B_OK)
{
LT_DLMUTEX_SETERROR (LT_DLSTRERROR (SYMBOL_NOT_FOUND));
! address = NULL;
}
return address;
***************
*** 1386,1392 ****
{
LT_DLMUTEX_SETERROR (LT_DLSTRERROR (CANNOT_OPEN));
LT_DLFREE (module);
! module = 0;
}
return module;
--- 1399,1405 ----
{
LT_DLMUTEX_SETERROR (LT_DLSTRERROR (CANNOT_OPEN));
LT_DLFREE (module);
! module = NULL;
}
return module;
***************
*** 1448,1455 ****
const lt_dlsymlist *syms;
} lt_dlsymlists_t;
! static const lt_dlsymlist *default_preloaded_symbols = 0;
! static lt_dlsymlists_t *preloaded_symbols = 0;
static int
presym_init (loader_data)
--- 1461,1468 ----
const lt_dlsymlist *syms;
} lt_dlsymlists_t;
! static const lt_dlsymlist *default_preloaded_symbols = NULL;
! static lt_dlsymlists_t *preloaded_symbols = NULL;
static int
presym_init (loader_data)
***************
*** 1459,1465 ****
LT_DLMUTEX_LOCK ();
! preloaded_symbols = 0;
if (default_preloaded_symbols)
{
errors = lt_dlpreload (default_preloaded_symbols);
--- 1472,1478 ----
LT_DLMUTEX_LOCK ();
! preloaded_symbols = NULL;
if (default_preloaded_symbols)
{
errors = lt_dlpreload (default_preloaded_symbols);
***************
*** 1485,1491 ****
lists = lists->next;
LT_DLFREE (tmp);
}
! preloaded_symbols = 0;
LT_DLMUTEX_UNLOCK ();
--- 1498,1504 ----
lists = lists->next;
LT_DLFREE (tmp);
}
! preloaded_symbols = NULL;
LT_DLMUTEX_UNLOCK ();
***************
*** 1594,1600 ****
lt_module module;
{
/* Just to silence gcc -Wall */
! module = 0;
return 0;
}
--- 1607,1613 ----
lt_module module;
{
/* Just to silence gcc -Wall */
! module = NULL;
return 0;
}
***************
*** 1685,1697 ****
static int lt_argz_insertinorder LT_PARAMS((char **pargz,
size_t *pargz_len,
const char *entry));
static int lt_dlpath_insertdir LT_PARAMS((char **ppath,
char *before,
const char *dir));
! static char *user_search_path= 0;
! static lt_dlloader *loaders = 0;
! static lt_dlhandle handles = 0;
static int initialized = 0;
/* Initialize libltdl. */
--- 1698,1718 ----
static int lt_argz_insertinorder LT_PARAMS((char **pargz,
size_t *pargz_len,
const char *entry));
+ static int lt_argz_insertdir LT_PARAMS((char **pargz,
+ size_t *pargz_len,
+ const char *dirnam,
+ struct dirent *dp));
static int lt_dlpath_insertdir LT_PARAMS((char **ppath,
char *before,
const char *dir));
+ static int list_files_by_dir LT_PARAMS((const char *dirnam,
+ char **pargz,
+ size_t *pargz_len));
+ static int file_not_found LT_PARAMS((void));
! static char *user_search_path= NULL;
! static lt_dlloader *loaders = NULL;
! static lt_dlhandle handles = NULL;
static int initialized = 0;
/* Initialize libltdl. */
***************
*** 1705,1712 ****
/* Initialize only at first call. */
if (++initialized == 1)
{
! handles = 0;
! user_search_path = 0; /* empty search path */
#if HAVE_LIBDL && !defined(__CYGWIN__)
errors += lt_dlloader_add (lt_dlloader_next (0), &sys_dl, "dlopen");
--- 1726,1733 ----
/* Initialize only at first call. */
if (++initialized == 1)
{
! handles = NULL;
! user_search_path = NULL; /* empty search path */
#if HAVE_LIBDL && !defined(__CYGWIN__)
errors += lt_dlloader_add (lt_dlloader_next (0), &sys_dl, "dlopen");
***************
*** 1841,1847 ****
LT_DLMEM_REASSIGN (loader, next);
}
! loaders = 0;
}
done:
--- 1862,1868 ----
LT_DLMEM_REASSIGN (loader, next);
}
! loaders = NULL;
}
done:
***************
*** 1902,1908 ****
}
else
{
! cur->info.filename = 0;
}
while (loader)
--- 1923,1929 ----
}
else
{
! cur->info.filename = NULL;
}
while (loader)
***************
*** 1911,1917 ****
cur->module = loader->module_open (data, filename);
! if (cur->module != 0)
{
break;
}
--- 1932,1938 ----
cur->module = loader->module_open (data, filename);
! if (cur->module != NULL)
{
break;
}
***************
*** 1942,1948 ****
const char *dlname;
{
int error = 0;
! char *filename = 0;
size_t filename_len = 0;
size_t dirname_len = LT_STRLEN (dirname);
--- 1963,1969 ----
const char *dlname;
{
int error = 0;
! char *filename = NULL;
size_t filename_len = 0;
size_t dirname_len = LT_STRLEN (dirname);
***************
*** 1952,1958 ****
#ifdef LT_DIRSEP_CHAR
/* Only canonicalized names (i.e. with DIRSEP chars already converted)
should make it into this function: */
! assert (strchr (dirname, LT_DIRSEP_CHAR) == 0);
#endif
if (dirname[dirname_len -1] == '/')
--- 1973,1979 ----
#ifdef LT_DIRSEP_CHAR
/* Only canonicalized names (i.e. with DIRSEP chars already converted)
should make it into this function: */
! assert (strchr (dirname, LT_DIRSEP_CHAR) == NULL);
#endif
if (dirname[dirname_len -1] == '/')
***************
*** 2036,2042 ****
const char *path;
char **pcanonical;
{
! char *canonical = 0;
assert (path && *path);
assert (pcanonical);
--- 2057,2063 ----
const char *path;
char **pcanonical;
{
! char *canonical = NULL;
assert (path && *path);
assert (pcanonical);
***************
*** 2138,2148 ****
{
int result = 0;
int filenamesize = 0;
! int lenbase = LT_STRLEN (base_name);
size_t argz_len = 0;
! char * argz = 0;
! char * filename = 0;
! char * canonical = 0;
LT_DLMUTEX_LOCK ();
--- 2159,2169 ----
{
int result = 0;
int filenamesize = 0;
! size_t lenbase = LT_STRLEN (base_name);
size_t argz_len = 0;
! char *argz = NULL;
! char *filename = NULL;
! char *canonical = NULL;
LT_DLMUTEX_LOCK ();
***************
*** 2159,2168 ****
goto cleanup;
{
! char *dir_name = 0;
while ((dir_name = argz_next (argz, argz_len, dir_name)))
{
! int lendir = LT_STRLEN (dir_name);
if (lendir +1 +lenbase >= filenamesize)
{
--- 2180,2189 ----
goto cleanup;
{
! char *dir_name = NULL;
while ((dir_name = argz_next (argz, argz_len, dir_name)))
{
! size_t lendir = LT_STRLEN (dir_name);
if (lendir +1 +lenbase >= filenamesize)
{
***************
*** 2173,2179 ****
goto cleanup;
}
! strncpy (filename, dir_name, lendir);
if (base_name && *base_name)
{
if (filename[lendir -1] != '/')
--- 2194,2202 ----
goto cleanup;
}
! assert (filenamesize > lendir);
! strcpy (filename, dir_name);
!
if (base_name && *base_name)
{
if (filename[lendir -1] != '/')
***************
*** 2224,2230 ****
LT_DLFREE (*pdir);
*pdir = lt_estrdup (filename);
! is_done = (*pdir == 0) ? -1 : 1;
}
return is_done;
--- 2247,2253 ----
LT_DLFREE (*pdir);
*pdir = lt_estrdup (filename);
! is_done = (*pdir == NULL) ? -1 : 1;
}
return is_done;
***************
*** 2236,2242 ****
const char *base_name;
char **pdir;
{
! FILE *file = 0;
foreach_dirinpath (search_path, base_name, find_file_callback, pdir, &file);
--- 2259,2265 ----
const char *base_name;
char **pdir;
{
! FILE *file = NULL;
foreach_dirinpath (search_path, base_name, find_file_callback, pdir, &file);
***************
*** 2249,2265 ****
lt_ptr data;
lt_ptr ignored;
{
! lt_dlhandle *handle = (lt_dlhandle *) data;
! int found = access (filename, R_OK);
/* Bail out if file cannot be read... */
! if (!found)
return 0;
/* Try to dlopen the file, but do not continue searching in any
case. */
if (tryall_dlopen (handle, filename) != 0)
! *handle = 0;
return 1;
}
--- 2272,2288 ----
lt_ptr data;
lt_ptr ignored;
{
! lt_dlhandle *handle = (lt_dlhandle *) data;
! int notfound = access (filename, R_OK);
/* Bail out if file cannot be read... */
! if (notfound)
return 0;
/* Try to dlopen the file, but do not continue searching in any
case. */
if (tryall_dlopen (handle, filename) != 0)
! *handle = NULL;
return 1;
}
***************
*** 2288,2297 ****
char *deplibs;
{
#if LTDL_DLOPEN_DEPLIBS
! char *p, *save_search_path = 0;
int depcount = 0;
int i;
! char **names = 0;
#endif
int errors = 0;
--- 2311,2320 ----
char *deplibs;
{
#if LTDL_DLOPEN_DEPLIBS
! char *p, *save_search_path = NULL;
int depcount = 0;
int i;
! char **names = NULL;
#endif
int errors = 0;
***************
*** 2327,2333 ****
if (strncmp(p, "-L", 2) == 0 || strncmp(p, "-R", 2) == 0)
{
char save = *end;
! *end = 0; /* set a temporary string terminator */
if (lt_dladdsearchdir(p+2))
{
goto cleanup;
--- 2350,2356 ----
if (strncmp(p, "-L", 2) == 0 || strncmp(p, "-R", 2) == 0)
{
char save = *end;
! *end = '\0'; /* set a temporary string terminator */
if (lt_dladdsearchdir(p+2))
{
goto cleanup;
***************
*** 2384,2390 ****
{
char *name;
char save = *end;
! *end = 0; /* set a temporary string terminator */
if (strncmp(p, "-l", 2) == 0)
{
size_t name_len = 3+ /* "lib" */ LT_STRLEN (p + 2);
--- 2407,2413 ----
{
char *name;
char save = *end;
! *end = '\0'; /* set a temporary string terminator */
if (strncmp(p, "-l", 2) == 0)
{
size_t name_len = 3+ /* "lib" */ LT_STRLEN (p + 2);
***************
*** 2473,2479 ****
/* remove the leading and trailing "'" from str
and store the result in dest */
const char *end = strrchr (str, '\'');
! int len = LT_STRLEN (str);
char *tmp;
LT_DLFREE (*dest);
--- 2496,2502 ----
/* remove the leading and trailing "'" from str
and store the result in dest */
const char *end = strrchr (str, '\'');
! size_t len = LT_STRLEN (str);
char *tmp;
LT_DLFREE (*dest);
***************
*** 2490,2496 ****
}
else
{
! *dest = 0;
}
return 0;
--- 2513,2519 ----
}
else
{
! *dest = NULL;
}
return 0;
***************
*** 2511,2532 ****
return 0;
}
! int
try_dlopen (phandle, filename)
lt_dlhandle *phandle;
const char *filename;
{
! const char * ext = 0;
! const char * saved_error = 0;
! char * canonical = 0;
! char * base_name = 0;
! char * dir = 0;
! char * name = 0;
int errors = 0;
lt_dlhandle newhandle;
assert (phandle);
! assert (*phandle == 0);
LT_DLMUTEX_GETERROR (saved_error);
--- 2534,2555 ----
return 0;
}
! static int
try_dlopen (phandle, filename)
lt_dlhandle *phandle;
const char *filename;
{
! const char * ext = NULL;
! const char * saved_error = NULL;
! char * canonical = NULL;
! char * base_name = NULL;
! char * dir = NULL;
! char * name = NULL;
int errors = 0;
lt_dlhandle newhandle;
assert (phandle);
! assert (*phandle == NULL);
LT_DLMUTEX_GETERROR (saved_error);
***************
*** 2534,2540 ****
if (!filename)
{
*phandle = (lt_dlhandle) LT_EMALLOC (struct lt_dlhandle_struct, 1);
! if (*phandle == 0)
return 1;
memset (*phandle, 0, sizeof(struct lt_dlhandle_struct));
--- 2557,2563 ----
if (!filename)
{
*phandle = (lt_dlhandle) LT_EMALLOC (struct lt_dlhandle_struct, 1);
! if (*phandle == NULL)
return 1;
memset (*phandle, 0, sizeof(struct lt_dlhandle_struct));
***************
*** 2591,2604 ****
if (ext && strcmp (ext, archive_ext) == 0)
{
/* this seems to be a libtool module */
! FILE * file = 0;
! char * dlname = 0;
! char * old_name = 0;
! char * libdir = 0;
! char * deplibs = 0;
! char * line = 0;
size_t line_len;
- int i;
/* if we can't find the installed flag, it is probably an
installed libtool archive, produced with an old version
--- 2614,2626 ----
if (ext && strcmp (ext, archive_ext) == 0)
{
/* this seems to be a libtool module */
! FILE * file = NULL;
! char * dlname = NULL;
! char * old_name = NULL;
! char * libdir = NULL;
! char * deplibs = NULL;
! char * line = NULL;
size_t line_len;
/* if we can't find the installed flag, it is probably an
installed libtool archive, produced with an old version
***************
*** 2614,2636 ****
}
/* canonicalize the module name */
! for (i = 0; i < ext - base_name; ++i)
! {
! if (isalnum ((int)(base_name[i])))
! {
! name[i] = base_name[i];
! }
! else
! {
! name[i] = '_';
! }
! }
! name[ext - base_name] = LT_EOS_CHAR;
! /* Now try to open the .la file. If there is no directory name
! component, try to find it first in user_search_path and then other
! prescribed paths. Otherwise (or in any case if the module was not
! yet found) try opening just the module name as passed. */
if (!dir)
{
const char *search_path;
--- 2636,2661 ----
}
/* canonicalize the module name */
! {
! size_t i;
! for (i = 0; i < ext - base_name; ++i)
! {
! if (isalnum ((int)(base_name[i])))
! {
! name[i] = base_name[i];
! }
! else
! {
! name[i] = '_';
! }
! }
! name[ext - base_name] = LT_EOS_CHAR;
! }
! /* Now try to open the .la file. If there is no directory name
! component, try to find it first in user_search_path and then other
! prescribed paths. Otherwise (or in any case if the module was not
! yet found) try opening just the module name as passed. */
if (!dir)
{
const char *search_path;
***************
*** 2689,2695 ****
/* read the .la file */
while (!feof (file))
{
! if (!fgets (line, line_len, file))
{
break;
}
--- 2714,2720 ----
/* read the .la file */
while (!feof (file))
{
! if (!fgets (line, (int) line_len, file))
{
break;
}
***************
*** 2699,2705 ****
while (line[LT_STRLEN(line) -1] != '\n')
{
line = LT_DLREALLOC (char, line, line_len *2);
! if (!fgets (&line[line_len -1], line_len +1, file))
{
break;
}
--- 2724,2730 ----
while (line[LT_STRLEN(line) -1] != '\n')
{
line = LT_DLREALLOC (char, line, line_len *2);
! if (!fgets (&line[line_len -1], (int) line_len +1, file))
{
break;
}
***************
*** 2757,2763 ****
errors += trim (&dlname, &line[sizeof (STR_LIBRARY_NAMES) - 1]);
if (!errors
&& dlname
! && (last_libname = strrchr (dlname, ' ')) != 0)
{
last_libname = lt_estrdup (last_libname + 1);
if (!last_libname)
--- 2782,2788 ----
errors += trim (&dlname, &line[sizeof (STR_LIBRARY_NAMES) - 1]);
if (!errors
&& dlname
! && (last_libname = strrchr (dlname, ' ')) != NULL)
{
last_libname = lt_estrdup (last_libname + 1);
if (!last_libname)
***************
*** 2778,2784 ****
/* allocate the handle */
*phandle = (lt_dlhandle) LT_EMALLOC (struct lt_dlhandle_struct, 1);
! if (*phandle == 0)
++errors;
if (errors)
--- 2803,2809 ----
/* allocate the handle */
*phandle = (lt_dlhandle) LT_EMALLOC (struct lt_dlhandle_struct, 1);
! if (*phandle == NULL)
++errors;
if (errors)
***************
*** 2822,2828 ****
{
/* not a libtool module */
*phandle = (lt_dlhandle) LT_EMALLOC (struct lt_dlhandle_struct, 1);
! if (*phandle == 0)
{
++errors;
goto cleanup;
--- 2847,2853 ----
{
/* not a libtool module */
*phandle = (lt_dlhandle) LT_EMALLOC (struct lt_dlhandle_struct, 1);
! if (*phandle == NULL)
{
++errors;
goto cleanup;
***************
*** 2847,2853 ****
#endif
)))
{
! tryall_dlopen (&newhandle, filename);
}
if (!newhandle)
--- 2872,2881 ----
#endif
)))
{
! if (tryall_dlopen (&newhandle, filename) != 0)
! {
! newhandle = NULL;
! }
}
if (!newhandle)
***************
*** 2886,2892 ****
lt_dlopen (filename)
const char *filename;
{
! lt_dlhandle handle = 0;
/* Just incase we missed a code path in try_dlopen() that reports
an error, but forgets to reset handle... */
--- 2914,2920 ----
lt_dlopen (filename)
const char *filename;
{
! lt_dlhandle handle = NULL;
/* Just incase we missed a code path in try_dlopen() that reports
an error, but forgets to reset handle... */
***************
*** 2898,2907 ****
/* If the last error messge store was `FILE_NOT_FOUND', then return
non-zero. */
! int
file_not_found ()
{
! const char *error = 0;
LT_DLMUTEX_GETERROR (error);
if (error == LT_DLSTRERROR (FILE_NOT_FOUND))
--- 2926,2935 ----
/* If the last error messge store was `FILE_NOT_FOUND', then return
non-zero. */
! static int
file_not_found ()
{
! const char *error = NULL;
LT_DLMUTEX_GETERROR (error);
if (error == LT_DLSTRERROR (FILE_NOT_FOUND))
***************
*** 2918,2929 ****
lt_dlopenext (filename)
const char *filename;
{
! lt_dlhandle handle = 0;
! char * tmp = 0;
! char * ext = 0;
! int len;
int errors = 0;
- int file_found = 1; /* until proven otherwise */
if (!filename)
{
--- 2946,2956 ----
lt_dlopenext (filename)
const char *filename;
{
! lt_dlhandle handle = NULL;
! char * tmp = NULL;
! char * ext = NULL;
! size_t len;
int errors = 0;
if (!filename)
{
***************
*** 3002,3008 ****
}
! int
lt_argz_insert (pargz, pargz_len, before, entry)
char **pargz;
size_t *pargz_len;
--- 3029,3035 ----
}
! static int
lt_argz_insert (pargz, pargz_len, before, entry)
char **pargz;
size_t *pargz_len;
***************
*** 3028,3040 ****
return 0;
}
! int
lt_argz_insertinorder (pargz, pargz_len, entry)
char **pargz;
size_t *pargz_len;
const char *entry;
{
! char *before = 0;
assert (pargz);
assert (pargz_len);
--- 3055,3067 ----
return 0;
}
! static int
lt_argz_insertinorder (pargz, pargz_len, entry)
char **pargz;
size_t *pargz_len;
const char *entry;
{
! char *before = NULL;
assert (pargz);
assert (pargz_len);
***************
*** 3052,3067 ****
return lt_argz_insert (pargz, pargz_len, before, entry);
}
! int
lt_argz_insertdir (pargz, pargz_len, dirnam, dp)
char **pargz;
size_t *pargz_len;
const char *dirnam;
struct dirent *dp;
{
! char *buf = 0;
size_t buf_len = 0;
! char *end = 0;
size_t end_offset = 0;
size_t dir_len = 0;
int errors = 0;
--- 3079,3094 ----
return lt_argz_insert (pargz, pargz_len, before, entry);
}
! static int
lt_argz_insertdir (pargz, pargz_len, dirnam, dp)
char **pargz;
size_t *pargz_len;
const char *dirnam;
struct dirent *dp;
{
! char *buf = NULL;
size_t buf_len = 0;
! char *end = NULL;
size_t end_offset = 0;
size_t dir_len = 0;
int errors = 0;
***************
*** 3118,3130 ****
return errors;
}
! int
list_files_by_dir (dirnam, pargz, pargz_len)
const char *dirnam;
char **pargz;
size_t *pargz_len;
{
! DIR *dirp = 0;
int errors = 0;
assert (dirnam && *dirnam);
--- 3145,3157 ----
return errors;
}
! static int
list_files_by_dir (dirnam, pargz, pargz_len)
const char *dirnam;
char **pargz;
size_t *pargz_len;
{
! DIR *dirp = NULL;
int errors = 0;
assert (dirnam && *dirnam);
***************
*** 3135,3141 ****
dirp = opendir (dirnam);
if (dirp)
{
! struct dirent *dp = 0;
while ((dp = readdir (dirp)))
if (dp->d_name[0] != '.')
--- 3162,3168 ----
dirp = opendir (dirnam);
if (dirp)
{
! struct dirent *dp = NULL;
while ((dp = readdir (dirp)))
if (dp->d_name[0] != '.')
***************
*** 3166,3172 ****
= (int (*) LT_PARAMS((const char *filename, lt_ptr data))) data1;
int is_done = 0;
! char *argz = 0;
size_t argz_len = 0;
if (list_files_by_dir (dirname, &argz, &argz_len) != 0)
--- 3193,3199 ----
= (int (*) LT_PARAMS((const char *filename, lt_ptr data))) data1;
int is_done = 0;
! char *argz = NULL;
size_t argz_len = 0;
if (list_files_by_dir (dirname, &argz, &argz_len) != 0)
***************
*** 3175,3181 ****
goto cleanup;
{
! char *filename = 0;
while ((filename = argz_next (argz, argz_len, filename)))
if ((is_done = (*func) (filename, data2)))
break;
--- 3202,3208 ----
goto cleanup;
{
! char *filename = NULL;
while ((filename = argz_next (argz, argz_len, filename)))
if ((is_done = (*func) (filename, data2)))
break;
***************
*** 3285,3290 ****
--- 3312,3320 ----
errors += handle->loader->module_close (data, handle->module);
errors += unload_deplibs(handle);
+ /* It is up to the callers to free the data itself. */
+ LT_DLFREE (handle->caller_data);
+
LT_DLFREE (handle->info.filename);
LT_DLFREE (handle->info.name);
LT_DLFREE (handle);
***************
*** 3309,3315 ****
lt_dlhandle handle;
const char *symbol;
{
! int lensym;
char lsym[LT_SYMBOL_LENGTH];
char *sym;
lt_ptr address;
--- 3339,3345 ----
lt_dlhandle handle;
const char *symbol;
{
! size_t lensym;
char lsym[LT_SYMBOL_LENGTH];
char *sym;
lt_ptr address;
***************
*** 3409,3423 ****
return error ? error : LT_DLSTRERROR (UNKNOWN);
}
! int
lt_dlpath_insertdir (ppath, before, dir)
char **ppath;
char *before;
const char *dir;
{
int errors = 0;
! char *canonical = 0;
! char *argz = 0;
size_t argz_len = 0;
assert (ppath);
--- 3439,3453 ----
return error ? error : LT_DLSTRERROR (UNKNOWN);
}
! static int
lt_dlpath_insertdir (ppath, before, dir)
char **ppath;
char *before;
const char *dir;
{
int errors = 0;
! char *canonical = NULL;
! char *argz = NULL;
size_t argz_len = 0;
assert (ppath);
***************
*** 3432,3444 ****
assert (canonical && *canonical);
/* If *PPATH is empty, set it to DIR. */
! if (*ppath == 0)
{
assert (!before); /* BEFORE cannot be set without PPATH. */
assert (dir); /* Without DIR, don't call this function! */
*ppath = lt_estrdup (dir);
! if (*ppath == 0)
++errors;
return errors;
--- 3462,3474 ----
assert (canonical && *canonical);
/* If *PPATH is empty, set it to DIR. */
! if (*ppath == NULL)
{
assert (!before); /* BEFORE cannot be set without PPATH. */
assert (dir); /* Without DIR, don't call this function! */
*ppath = lt_estrdup (dir);
! if (*ppath == NULL)
++errors;
return errors;
***************
*** 3672,3678 ****
lt_ptr data;
{
int n_elements = 0;
! lt_ptr stale = (lt_ptr) 0;
int i;
/* This needs to be locked so that the caller data can be updated
--- 3702,3708 ----
lt_ptr data;
{
int n_elements = 0;
! lt_ptr stale = NULL;
int i;
/* This needs to be locked so that the caller data can be updated
***************
*** 3701,3707 ****
if (!temp)
{
! stale = 0;
goto done;
}
--- 3731,3737 ----
if (!temp)
{
! stale = NULL;
goto done;
}
***************
*** 3761,3772 ****
const char *loader_name;
{
int errors = 0;
! lt_dlloader *node = 0, *ptr = 0;
! if ((dlloader == 0) /* diagnose null parameters */
! || (dlloader->module_open == 0)
! || (dlloader->module_close == 0)
! || (dlloader->find_sym == 0))
{
LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
return 1;
--- 3791,3802 ----
const char *loader_name;
{
int errors = 0;
! lt_dlloader *node = NULL, *ptr = NULL;
! if ((dlloader == NULL) /* diagnose null parameters */
! || (dlloader->module_open == NULL)
! || (dlloader->module_close == NULL)
! || (dlloader->find_sym == NULL))
{
LT_DLMUTEX_SETERROR (LT_DLSTRERROR (INVALID_LOADER));
return 1;
***************
*** 3777,3783 ****
if (!node)
return 1;
! node->next = 0;
node->loader_name = loader_name;
node->sym_prefix = dlloader->sym_prefix;
node->dlloader_exit = dlloader->dlloader_exit;
--- 3807,3813 ----
if (!node)
return 1;
! node->next = NULL;
node->loader_name = loader_name;
node->sym_prefix = dlloader->sym_prefix;
node->dlloader_exit = dlloader->dlloader_exit;
***************
*** 3913,3919 ****
lt_dlloader_name (place)
lt_dlloader *place;
{
! const char *name = 0;
if (place)
{
--- 3943,3949 ----
lt_dlloader_name (place)
lt_dlloader *place;
{
! const char *name = NULL;
if (place)
{
***************
*** 3933,3939 ****
lt_dlloader_data (place)
lt_dlloader *place;
{
! lt_user_data *data = 0;
if (place)
{
--- 3963,3969 ----
lt_dlloader_data (place)
lt_dlloader *place;
{
! lt_user_data *data = NULL;
if (place)
{
***************
*** 3953,3959 ****
lt_dlloader_find (loader_name)
const char *loader_name;
{
! lt_dlloader *place = 0;
LT_DLMUTEX_LOCK ();
for (place = loaders; place; place = place->next)
--- 3983,3989 ----
lt_dlloader_find (loader_name)
const char *loader_name;
{
! lt_dlloader *place = NULL;
LT_DLMUTEX_LOCK ();
for (place = loaders; place; place = place->next)