1
0
mirror of https://github.com/moparisthebest/wget synced 2024-07-03 16:38:41 -04:00

[svn] Upgrade to libtool 1.4.2.

This commit is contained in:
hniksic 2001-12-11 02:38:34 -08:00
parent 1dee527a56
commit aa76fd748c
5 changed files with 635 additions and 416 deletions

View File

@ -1,3 +1,13 @@
2001-12-11 Hrvoje Niksic <hniksic@arsdigita.com>
* config.sub: Ditto.
* config.guess: Ditto.
* aclocal.m4: Ditto.
* ltmain.sh: Upgrade to libtool 1.4.2.
2001-12-11 Hrvoje Niksic <hniksic@arsdigita.com> 2001-12-11 Hrvoje Niksic <hniksic@arsdigita.com>
* configure.in: Check for md5_calc rather than MD5Update when * configure.in: Check for md5_calc rather than MD5Update when

514
aclocal.m4 vendored
View File

@ -279,6 +279,7 @@ AC_SUBST($1)dnl
## the same distribution terms that you use for the rest of that program. ## the same distribution terms that you use for the rest of that program.
# serial 46 AC_PROG_LIBTOOL # serial 46 AC_PROG_LIBTOOL
AC_DEFUN([AC_PROG_LIBTOOL], AC_DEFUN([AC_PROG_LIBTOOL],
[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl [AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
@ -404,9 +405,30 @@ _LT_AC_LTCONFIG_HACK
]) ])
# AC_LIBTOOL_HEADER_ASSERT
# ------------------------
AC_DEFUN([AC_LIBTOOL_HEADER_ASSERT],
[AC_CACHE_CHECK([whether $CC supports assert without backlinking],
[lt_cv_func_assert_works],
[case $host in
*-*-solaris*)
if test "$GCC" = yes && test "$with_gnu_ld" != yes; then
case `$CC --version 2>/dev/null` in
[[12]].*) lt_cv_func_assert_works=no ;;
*) lt_cv_func_assert_works=yes ;;
esac
fi
;;
esac])
if test "x$lt_cv_func_assert_works" = xyes; then
AC_CHECK_HEADERS(assert.h)
fi
])# AC_LIBTOOL_HEADER_ASSERT
# _LT_AC_CHECK_DLFCN # _LT_AC_CHECK_DLFCN
# -------------------- # --------------------
AC_DEFUN(_LT_AC_CHECK_DLFCN, AC_DEFUN([_LT_AC_CHECK_DLFCN],
[AC_CHECK_HEADERS(dlfcn.h) [AC_CHECK_HEADERS(dlfcn.h)
])# _LT_AC_CHECK_DLFCN ])# _LT_AC_CHECK_DLFCN
@ -424,10 +446,10 @@ AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], [dnl
# [They come from Ultrix. What could be older than Ultrix?!! ;)] # [They come from Ultrix. What could be older than Ultrix?!! ;)]
# Character class describing NM global symbol codes. # Character class describing NM global symbol codes.
[symcode='[BCDEGRST]'] symcode='[[BCDEGRST]]'
# Regexp to match symbols that can be accessed directly from C. # Regexp to match symbols that can be accessed directly from C.
[sympat='\([_A-Za-z][_A-Za-z0-9]*\)'] sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
# Transform the above into a raw symbol and a C symbol. # Transform the above into a raw symbol and a C symbol.
symxfrm='\1 \2\3 \3' symxfrm='\1 \2\3 \3'
@ -435,25 +457,29 @@ symxfrm='\1 \2\3 \3'
# Transform an extracted symbol line into a proper C declaration # Transform an extracted symbol line into a proper C declaration
lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'" lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'"
# Transform an extracted symbol line into symbol name and symbol address
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'"
# Define system-specific variables. # Define system-specific variables.
case $host_os in case $host_os in
aix*) aix*)
[symcode='[BCDT]'] symcode='[[BCDT]]'
;; ;;
cygwin* | mingw* | pw32*) cygwin* | mingw* | pw32*)
[symcode='[ABCDGISTW]'] symcode='[[ABCDGISTW]]'
;; ;;
hpux*) # Its linker distinguishes data from code symbols hpux*) # Its linker distinguishes data from code symbols
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_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*) irix*)
[symcode='[BCDEGRST]'] symcode='[[BCDEGRST]]'
;; ;;
solaris* | sysv5*) solaris* | sysv5*)
[symcode='[BDT]'] symcode='[[BDT]]'
;; ;;
sysv4) sysv4)
[symcode='[DFNSTU]'] symcode='[[DFNSTU]]'
;; ;;
esac esac
@ -467,14 +493,14 @@ esac
# If we're using GNU nm, then use its standard symbol codes. # If we're using GNU nm, then use its standard symbol codes.
if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
[symcode='[ABCDGISTW]'] symcode='[[ABCDGISTW]]'
fi fi
# Try without a prefix undercore, then with it. # Try without a prefix undercore, then with it.
for ac_symprfx in "" "_"; do for ac_symprfx in "" "_"; do
# Write the raw and C identifiers. # Write the raw and C identifiers.
[lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'"] lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'"
# Check to see that the pipe works correctly. # Check to see that the pipe works correctly.
pipe_works=no pipe_works=no
@ -516,23 +542,23 @@ EOF
cat <<EOF >> conftest.$ac_ext cat <<EOF >> conftest.$ac_ext
#if defined (__STDC__) && __STDC__ #if defined (__STDC__) && __STDC__
# define lt_ptr_t void * # define lt_ptr void *
#else #else
# define lt_ptr_t char * # define lt_ptr char *
# define const # define const
#endif #endif
/* The mapping between symbol names and symbols. */ /* The mapping between symbol names and symbols. */
const struct { const struct {
const char *name; const char *name;
lt_ptr_t address; lt_ptr address;
} }
[lt_preloaded_symbols[] =] lt_preloaded_symbols[[]] =
{ {
EOF EOF
sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr_t) \&\2},/" < "$nlist" >> conftest.$ac_ext sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext
cat <<\EOF >> conftest.$ac_ext cat <<\EOF >> conftest.$ac_ext
{0, (lt_ptr_t) 0} {0, (lt_ptr) 0}
}; };
#ifdef __cplusplus #ifdef __cplusplus
@ -576,10 +602,13 @@ done
global_symbol_pipe="$lt_cv_sys_global_symbol_pipe" global_symbol_pipe="$lt_cv_sys_global_symbol_pipe"
if test -z "$lt_cv_sys_global_symbol_pipe"; then if test -z "$lt_cv_sys_global_symbol_pipe"; then
global_symbol_to_cdecl= global_symbol_to_cdecl=
global_symbol_to_c_name_address=
else else
global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl" global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl"
global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address"
fi fi
if test -z "$global_symbol_pipe$global_symbol_to_cdecl"; then if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address";
then
AC_MSG_RESULT(failed) AC_MSG_RESULT(failed)
else else
AC_MSG_RESULT(ok) AC_MSG_RESULT(ok)
@ -597,16 +626,17 @@ if test "X${PATH_SEPARATOR+set}" != Xset; then
*-DOS) lt_cv_sys_path_separator=';' ;; *-DOS) lt_cv_sys_path_separator=';' ;;
*) lt_cv_sys_path_separator=':' ;; *) lt_cv_sys_path_separator=':' ;;
esac esac
PATH_SEPARATOR=$lt_cv_sys_path_separator
fi fi
])# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR ])# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
# _LT_AC_PROG_ECHO_BACKSLASH # _LT_AC_PROG_ECHO_BACKSLASH
# -------------------------- # --------------------------
# Add some code to the start of the generated configure script which # Add some code to the start of the generated configure script which
# will find an echo command which doesn;t interpret backslashes. # will find an echo command which doesn't interpret backslashes.
AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH], AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH],
[ifdef([AC_DIVERSION_NOTICE], [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)], [ifdef([AC_DIVERSION_NOTICE], [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
[AC_DIVERT_PUSH(NOTICE)]) [AC_DIVERT_PUSH(NOTICE)])
_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
# Check that we are running under the correct shell. # Check that we are running under the correct shell.
@ -672,7 +702,7 @@ else
# #
# So, first we look for a working echo in the user's PATH. # So, first we look for a working echo in the user's PATH.
IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}" IFS="${IFS= }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR
for dir in $PATH /usr/ucb; do for dir in $PATH /usr/ucb; do
if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
@ -761,7 +791,7 @@ AC_DIVERT_POP
# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, # _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) # ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
# ------------------------------------------------------------------ # ------------------------------------------------------------------
AC_DEFUN(_LT_AC_TRY_DLOPEN_SELF, AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF],
[if test "$cross_compiling" = yes; then : [if test "$cross_compiling" = yes; then :
[$4] [$4]
else else
@ -848,7 +878,7 @@ rm -fr conftest*
# AC_LIBTOOL_DLOPEN_SELF # AC_LIBTOOL_DLOPEN_SELF
# ------------------- # -------------------
AC_DEFUN(AC_LIBTOOL_DLOPEN_SELF, AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF],
[if test "x$enable_dlopen" != xyes; then [if test "x$enable_dlopen" != xyes; then
enable_dlopen=unknown enable_dlopen=unknown
enable_dlopen_self=unknown enable_dlopen_self=unknown
@ -870,16 +900,22 @@ else
;; ;;
*) *)
AC_CHECK_LIB(dl, dlopen, [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], AC_CHECK_FUNC([shl_load],
[AC_CHECK_FUNC(dlopen, lt_cv_dlopen="dlopen", [lt_cv_dlopen="shl_load"],
[AC_CHECK_FUNC(shl_load, lt_cv_dlopen="shl_load", [AC_CHECK_LIB([dld], [shl_load],
[AC_CHECK_LIB(svld, dlopen, [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"],
[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], [AC_CHECK_FUNC([dlopen],
[AC_CHECK_LIB(dld, shl_load, [lt_cv_dlopen="dlopen"],
[lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"]) [AC_CHECK_LIB([dl], [dlopen],
[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
[AC_CHECK_LIB([svld], [dlopen],
[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
[AC_CHECK_LIB([dld], [dld_link],
[lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"])
])
]) ])
]) ])
]) ])
]) ])
;; ;;
esac esac
@ -942,10 +978,10 @@ AC_DEFUN([_LT_AC_LTCONFIG_HACK],
# Sed substitution that helps us do robust quoting. It backslashifies # Sed substitution that helps us do robust quoting. It backslashifies
# metacharacters that are still active within double-quoted strings. # metacharacters that are still active within double-quoted strings.
Xsed='sed -e s/^X//' Xsed='sed -e s/^X//'
[sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'] sed_quote_subst='s/\([[\\"\\`$\\\\]]\)/\\\1/g'
# Same as above, but do not quote variable references. # Same as above, but do not quote variable references.
[double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g'] double_quote_subst='s/\([[\\"\\`\\\\]]\)/\\\1/g'
# Sed substitution to delay expansion of an escaped shell variable in a # Sed substitution to delay expansion of an escaped shell variable in a
# double_quote_subst'ed string. # double_quote_subst'ed string.
@ -1014,8 +1050,15 @@ old_postinstall_cmds='chmod 644 $oldlib'
old_postuninstall_cmds= old_postuninstall_cmds=
if test -n "$RANLIB"; then if test -n "$RANLIB"; then
case $host_os in
openbsd*)
old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds"
;;
*)
old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
;;
esac
old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
fi fi
# Allow CC to be a program name with arguments. # Allow CC to be a program name with arguments.
@ -1041,7 +1084,7 @@ AC_MSG_RESULT($objdir)
## FIXME: this should be a separate macro ## FIXME: this should be a separate macro
## ##
AC_ARG_WITH(pic, AC_ARG_WITH(pic,
[ --with-pic try to use only PIC/non-PIC objects [default=use both]], [ --with-pic try to use only PIC/non-PIC objects [default=use both]],
pic_mode="$withval", pic_mode=default) pic_mode="$withval", pic_mode=default)
test -z "$pic_mode" && pic_mode=default test -z "$pic_mode" && pic_mode=default
@ -1069,7 +1112,7 @@ AC_CACHE_VAL(lt_cv_prog_cc_pic,
# libC (AIX C++ library), which obviously doesn't included in libraries # libC (AIX C++ library), which obviously doesn't included in libraries
# list by gcc. This cause undefined symbols with -static flags. # list by gcc. This cause undefined symbols with -static flags.
# This hack allows C programs to be linked with "-static -ldl", but # This hack allows C programs to be linked with "-static -ldl", but
# we not sure about C++ programs. # not sure about C++ programs.
lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC" lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC"
;; ;;
amigaos*) amigaos*)
@ -1104,13 +1147,13 @@ AC_CACHE_VAL(lt_cv_prog_cc_pic,
# PORTME Check for PIC flags for the system compiler. # PORTME Check for PIC flags for the system compiler.
case $host_os in case $host_os in
aix3* | aix4* | aix5*) aix3* | aix4* | aix5*)
lt_cv_prog_cc_wl='-Wl,'
# All AIX code is PIC. # All AIX code is PIC.
if test "$host_cpu" = ia64; then if test "$host_cpu" = ia64; then
# AIX 5 now supports IA64 processor # AIX 5 now supports IA64 processor
lt_cv_prog_cc_static='-Bstatic' lt_cv_prog_cc_static='-Bstatic'
lt_cv_prog_cc_wl='-Wl,'
else else
lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp'
fi fi
;; ;;
@ -1166,9 +1209,9 @@ AC_CACHE_VAL(lt_cv_prog_cc_pic,
lt_cv_prog_cc_pic='-KPIC' lt_cv_prog_cc_pic='-KPIC'
lt_cv_prog_cc_static='-Bstatic' lt_cv_prog_cc_static='-Bstatic'
if test "x$host_vendor" = xsni; then if test "x$host_vendor" = xsni; then
lt_cv_prog_cc_wl='-LD' lt_cv_prog_cc_wl='-LD'
else else
lt_cv_prog_cc_wl='-Wl,' lt_cv_prog_cc_wl='-Wl,'
fi fi
;; ;;
@ -1237,7 +1280,7 @@ fi
# Check for any special shared library compilation flags. # Check for any special shared library compilation flags.
if test -n "$lt_cv_prog_cc_shlib"; then if test -n "$lt_cv_prog_cc_shlib"; then
AC_MSG_WARN([\`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries]) AC_MSG_WARN([\`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries])
if echo "$old_CC $old_CFLAGS " | [egrep -e "[ ]$lt_cv_prog_cc_shlib[ ]"] >/dev/null; then : if echo "$old_CC $old_CFLAGS " | egrep -e "[[ ]]$lt_cv_prog_cc_shlib[[ ]]" >/dev/null; then :
else else
AC_MSG_WARN([add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure]) AC_MSG_WARN([add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure])
lt_cv_prog_cc_can_build_shared=no lt_cv_prog_cc_can_build_shared=no
@ -1319,6 +1362,8 @@ if test x"$compiler_c_o" = x"yes"; then
lt_cv_compiler_o_lo=no lt_cv_compiler_o_lo=no
save_CFLAGS="$CFLAGS" save_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -c -o conftest.lo" CFLAGS="$CFLAGS -c -o conftest.lo"
save_objext="$ac_objext"
ac_objext=lo
AC_TRY_COMPILE([], [int some_variable = 0;], [dnl AC_TRY_COMPILE([], [int some_variable = 0;], [dnl
# The compiler can only warn and ignore the option if not recognized # The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings # So say no if there are warnings
@ -1328,10 +1373,11 @@ if test x"$compiler_c_o" = x"yes"; then
lt_cv_compiler_o_lo=yes lt_cv_compiler_o_lo=yes
fi fi
]) ])
ac_objext="$save_objext"
CFLAGS="$save_CFLAGS" CFLAGS="$save_CFLAGS"
]) ])
compiler_o_lo=$lt_cv_compiler_o_lo compiler_o_lo=$lt_cv_compiler_o_lo
AC_MSG_RESULT([$compiler_c_lo]) AC_MSG_RESULT([$compiler_o_lo])
else else
compiler_o_lo=no compiler_o_lo=no
fi fi
@ -1436,7 +1482,7 @@ exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
extract_expsyms_cmds= extract_expsyms_cmds=
case $host_os in case $host_os in
cygwin* | mingw* | pw32* ) cygwin* | mingw* | pw32*)
# FIXME: the MSVC++ port hasn't been tested in a loooong time # FIXME: the MSVC++ port hasn't been tested in a loooong time
# When not using gcc, we currently assume that we are using # When not using gcc, we currently assume that we are using
# Microsoft Visual C++. # Microsoft Visual C++.
@ -1444,7 +1490,9 @@ cygwin* | mingw* | pw32* )
with_gnu_ld=no with_gnu_ld=no
fi fi
;; ;;
openbsd*)
with_gnu_ld=no
;;
esac esac
ld_shlibs=yes ld_shlibs=yes
@ -1531,7 +1579,7 @@ EOF
# can override, but on older systems we have to supply one (in ltdll.c) # can override, but on older systems we have to supply one (in ltdll.c)
if test "x$lt_cv_need_dllmain" = "xyes"; then if test "x$lt_cv_need_dllmain" = "xyes"; then
ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext " ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext "
ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < [$]0 > $output_objdir/$soname-ltdll.c~ ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~
test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~' test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~'
else else
ltdll_obj= ltdll_obj=
@ -1544,24 +1592,24 @@ EOF
# Be careful not to strip the DATA tag left be newer dlltools. # Be careful not to strip the DATA tag left be newer dlltools.
export_symbols_cmds="$ltdll_cmds"' export_symbols_cmds="$ltdll_cmds"'
$DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~ $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~
[sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//"] < $output_objdir/$soname-def > $export_symbols' sed -e "1,/EXPORTS/d" -e "s/ @ [[0-9]]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols'
# If the export-symbols file already is a .def file (1st line # If the export-symbols file already is a .def file (1st line
# is EXPORTS), use it as is. # is EXPORTS), use it as is.
# If DATA tags from a recent dlltool are present, honour them! # If DATA tags from a recent dlltool are present, honour them!
archive_expsym_cmds='if test "x`head -1 $export_symbols`" = xEXPORTS; then archive_expsym_cmds='if test "x`head -1 $export_symbols`" = xEXPORTS; then
cp $export_symbols $output_objdir/$soname-def; cp $export_symbols $output_objdir/$soname-def;
else else
echo EXPORTS > $output_objdir/$soname-def; echo EXPORTS > $output_objdir/$soname-def;
_lt_hint=1; _lt_hint=1;
cat $export_symbols | while read symbol; do cat $export_symbols | while read symbol; do
set dummy \$symbol; set dummy \$symbol;
case \[$]# in case \[$]# in
2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;; 2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;;
*) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;; *) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;;
esac; esac;
_lt_hint=`expr 1 + \$_lt_hint`; _lt_hint=`expr 1 + \$_lt_hint`;
done; done;
fi~ fi~
'"$ltdll_cmds"' '"$ltdll_cmds"'
$CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
@ -1656,41 +1704,6 @@ else
;; ;;
aix4* | aix5*) aix4* | aix5*)
# When large executables or shared objects are built, AIX ld can
# have problems creating the table of contents. If linking a library
# or program results in "error TOC overflow" add -mminimal-toc to
# CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
# enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
archive_cmds=''
hardcode_libdir_separator=':'
if test "$GCC" = yes; then
collect2name=`${CC} -print-prog-name=collect2`
if test -f "$collect2name" && \
strings "$collect2name" | grep resolve_lib_name >/dev/null
then
# We have reworked collect2
hardcode_direct=yes
else
# We have old collect2
hardcode_direct=unsupported
# It fails to find uninstalled libraries when the uninstalled
# path is not listed in the libpath. Setting hardcode_minus_L
# to unsupported forces relinking
hardcode_minus_L=yes
hardcode_libdir_flag_spec='-L$libdir'
hardcode_libdir_separator=
fi
shared_flag='-shared'
else
if test "$host_cpu" = ia64; then
shared_flag='-G'
else
shared_flag='${wl}-bM:SRE'
fi
hardcode_direct=yes
fi
if test "$host_cpu" = ia64; then if test "$host_cpu" = ia64; then
# On IA64, the linker does run time linking by default, so we don't # On IA64, the linker does run time linking by default, so we don't
# have to do anything special. # have to do anything special.
@ -1698,38 +1711,89 @@ else
exp_sym_flag='-Bexport' exp_sym_flag='-Bexport'
no_entry_flag="" no_entry_flag=""
else else
# Test if we are trying to use run time linking, or normal AIX style linking.
# If -brtl is somewhere in LDFLAGS, we need to do run time linking.
aix_use_runtimelinking=no aix_use_runtimelinking=no
for ld_flag in $LDFLAGS; do
if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl" ); then # Test if we are trying to use run time linking or normal
aix_use_runtimelinking=yes # AIX style linking. If -brtl is somewhere in LDFLAGS, we
break # need to do runtime linking.
fi case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
done 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
exp_sym_flag='-bexport' exp_sym_flag='-bexport'
no_entry_flag='-bnoentry' no_entry_flag='-bnoentry'
fi fi
# When large executables or shared objects are built, AIX ld can
# have problems creating the table of contents. If linking a library
# or program results in "error TOC overflow" add -mminimal-toc to
# CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
# enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
hardcode_direct=yes
archive_cmds=''
hardcode_libdir_separator=':'
if test "$GCC" = yes; then
case $host_os in aix4.[[012]]|aix4.[[012]].*)
collect2name=`${CC} -print-prog-name=collect2`
if test -f "$collect2name" && \
strings "$collect2name" | grep resolve_lib_name >/dev/null
then
# We have reworked collect2
hardcode_direct=yes
else
# We have old collect2
hardcode_direct=unsupported
# It fails to find uninstalled libraries when the uninstalled
# path is not listed in the libpath. Setting hardcode_minus_L
# to unsupported forces relinking
hardcode_minus_L=yes
hardcode_libdir_flag_spec='-L$libdir'
hardcode_libdir_separator=
fi
esac
shared_flag='-shared'
else
# not using gcc
if test "$host_cpu" = ia64; then
shared_flag='${wl}-G'
else
if test "$aix_use_runtimelinking" = yes; then
shared_flag='${wl}-G'
else
shared_flag='${wl}-bM:SRE'
fi
fi
fi
# It seems that -bexpall can do strange things, so it is better to # It seems that -bexpall can do strange things, so it is better to
# generate a list of symbols to export. # generate a list of symbols to export.
always_export_symbols=yes always_export_symbols=yes
if test "$aix_use_runtimelinking" = yes; then if test "$aix_use_runtimelinking" = yes; then
# Warning - without using the other runtime loading flags (-brtl),
# -berok will link without error, but may produce a broken library.
allow_undefined_flag='-berok'
hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib'
allow_undefined_flag=' -Wl,-G' archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
else else
if test "$host_cpu" = ia64; then if test "$host_cpu" = ia64; then
hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
allow_undefined_flag="-znodefs" allow_undefined_flag="-z nodefs"
archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
else else
hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib' hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib'
# Warning - without using the other run time loading flags, -berok will # Warning - without using the other run time loading flags,
# link without error, but may produce a broken library. # -berok will link without error, but may produce a broken library.
allow_undefined_flag='${wl}-berok" allow_undefined_flag='${wl}-berok'
# This is a bit strange, but is similar to how AIX traditionally builds # This is a bit strange, but is similar to how AIX traditionally builds
# it's shared libraries. # it's shared libraries.
archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $objdir/$libname$release.a $objdir/$soname' archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $objdir/$libname$release.a $objdir/$soname'
fi fi
fi fi
;; ;;
@ -1761,11 +1825,18 @@ else
;; ;;
darwin* | rhapsody*) darwin* | rhapsody*)
allow_undefined_flag='-undefined suppress' case "$host_os" in
rhapsody* | darwin1.[[012]])
allow_undefined_flag='-undefined suppress'
;;
*) # Darwin 1.3 on
allow_undefined_flag='-flat_namespace -undefined suppress'
;;
esac
# FIXME: Relying on posixy $() will cause problems for # FIXME: Relying on posixy $() will cause problems for
# cross-compilation, but unfortunately the echo tests do not # cross-compilation, but unfortunately the echo tests do not
# yet detect zsh echo's removal of \ escapes. # yet detect zsh echo's removal of \ escapes.
archive_cmds='$CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs$linkopts -install_name $rpath/$soname $(test -n "$verstring" -a x$verstring != x0.0 && echo $verstring)' 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 # We need to add '_' to the symbols in $export_symbols first
#archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols' #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
hardcode_direct=yes hardcode_direct=yes
@ -1840,7 +1911,7 @@ else
;; ;;
newsos6) newsos6)
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=yes hardcode_direct=yes
hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
hardcode_libdir_separator=: hardcode_libdir_separator=:
@ -1848,10 +1919,24 @@ else
;; ;;
openbsd*) openbsd*)
archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
hardcode_libdir_flag_spec='-R$libdir'
hardcode_direct=yes hardcode_direct=yes
hardcode_shlibpath_var=no 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
case "$host_os" in
openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
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
fi
;; ;;
os2*) os2*)
@ -1896,10 +1981,39 @@ else
hardcode_shlibpath_var=no hardcode_shlibpath_var=no
runpath_var=LD_RUN_PATH runpath_var=LD_RUN_PATH
hardcode_runpath_var=yes hardcode_runpath_var=yes
export_dynamic_flag_spec='${wl}-Bexport'
;; ;;
solaris*) solaris*)
# gcc --version < 3.0 without binutils cannot create self contained
# shared libraries reliably, requiring libgcc.a to resolve some of
# the object symbols generated in some cases. Libraries that use
# assert need libgcc.a to resolve __eprintf, for example. Linking
# a copy of libgcc.a into every shared library to guarantee resolving
# such symbols causes other problems: According to Tim Van Holder
# <tim.van.holder@pandora.be>, C++ libraries end up with a separate
# (to the application) exception stack for one thing.
no_undefined_flag=' -z defs' no_undefined_flag=' -z defs'
if test "$GCC" = yes; then
case `$CC --version 2>/dev/null` in
[[12]].*)
cat <<EOF 1>&2
*** Warning: Releases of GCC earlier than version 3.0 cannot reliably
*** create self contained shared libraries on Solaris systems, without
*** introducing a dependency on libgcc.a. Therefore, libtool is disabling
*** -no-undefined support, which will at least allow you to build shared
*** libraries. However, you may find that when you link such libraries
*** into an application without using GCC, you have to manually add
*** \`gcc --print-libgcc-file-name\` to the link command. We urge you to
*** upgrade to a newer version of GCC. Another option is to rebuild your
*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer.
EOF
no_undefined_flag=
;;
esac
fi
# $CC -shared without GNU ld will not create a library from C++ # $CC -shared without GNU ld will not create a library from C++
# object files and a static libstdc++, better avoid it by now # object files and a static libstdc++, better avoid it by now
archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
@ -1908,7 +2022,7 @@ else
hardcode_libdir_flag_spec='-R$libdir' hardcode_libdir_flag_spec='-R$libdir'
hardcode_shlibpath_var=no hardcode_shlibpath_var=no
case $host_os in case $host_os in
[solaris2.[0-5] | solaris2.[0-5].*]) ;; solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
*) # Supported since Solaris 2.6 (maybe 2.5.1?) *) # Supported since Solaris 2.6 (maybe 2.5.1?)
whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;; whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;;
esac esac
@ -1931,7 +2045,7 @@ else
sysv4) sysv4)
if test "x$host_vendor" = xsno; then if test "x$host_vendor" = xsno; then
archive_cmds='$LD -G -Bsymbolic -h $soname -o $lib $libobjs $deplibs $linkopts' archive_cmds='$LD -G -Bsymbolic -h $soname -o $lib $libobjs $deplibs $linker_flags'
hardcode_direct=yes # is this really true??? hardcode_direct=yes # is this really true???
else else
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
@ -2100,22 +2214,24 @@ aix4* | aix5*)
# depend on `.', always an invalid library. This was fixed in # depend on `.', always an invalid library. This was fixed in
# development snapshots of GCC prior to 3.0. # development snapshots of GCC prior to 3.0.
case $host_os in case $host_os in
[ aix4 | aix4.[01] | aix4.[01].*)] aix4 | aix4.[[01]] | aix4.[[01]].*)
if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
echo ' yes ' echo ' yes '
echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then
: :
else else
can_build_shared=no can_build_shared=no
fi fi
;; ;;
esac esac
# AIX (on Power*) has no versioning support, so currently we can not hardcode correct # AIX (on Power*) has no versioning support, so currently we can
# soname into executable. Probably we can add versioning support to # not hardcode correct soname into executable. Probably we can
# collect2, so additional links can be useful in future. # add versioning support to collect2, so additional links can
# be useful in future.
if test "$aix_use_runtimelinking" = yes; then if test "$aix_use_runtimelinking" = yes; then
# If using run time linking (on AIX 4.2 or later) use lib<name>.so instead of # If using run time linking (on AIX 4.2 or later) use lib<name>.so
# lib<name>.a to let people know that these are not typical AIX shared libraries. # instead of lib<name>.a to let people know that these are not
# typical AIX shared libraries.
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
else else
# We preserve .a as extension for shared libraries through AIX4.2 # We preserve .a as extension for shared libraries through AIX4.2
@ -2124,14 +2240,13 @@ aix4* | aix5*)
soname_spec='${libname}${release}.so$major' soname_spec='${libname}${release}.so$major'
fi fi
shlibpath_var=LIBPATH shlibpath_var=LIBPATH
deplibs_check_method=pass_all
fi fi
;; ;;
amigaos*) amigaos*)
library_names_spec='$libname.ixlibrary $libname.a' library_names_spec='$libname.ixlibrary $libname.a'
# Create ${libname}_ixlibrary.a entries in /sys/libs. # Create ${libname}_ixlibrary.a entries in /sys/libs.
finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | [$Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\'']`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done' finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
;; ;;
beos*) beos*)
@ -2162,7 +2277,7 @@ cygwin* | mingw* | pw32*)
case $GCC,$host_os in case $GCC,$host_os in
yes,cygwin*) yes,cygwin*)
library_names_spec='$libname.dll.a' library_names_spec='$libname.dll.a'
soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | [sed -e 's/[.]/-/g']`${versuffix}.dll' soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~ postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~
dldir=$destdir/`dirname \$dlpath`~ dldir=$destdir/`dirname \$dlpath`~
test -d \$dldir || mkdir -p \$dldir~ test -d \$dldir || mkdir -p \$dldir~
@ -2172,14 +2287,14 @@ cygwin* | mingw* | pw32*)
$rm \$dlpath' $rm \$dlpath'
;; ;;
yes,mingw*) yes,mingw*)
library_names_spec='${libname}`echo ${release} | [sed -e 's/[.]/-/g']`${versuffix}.dll' 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"` sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g"`
;; ;;
yes,pw32*) yes,pw32*)
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
;; ;;
*) *)
library_names_spec='${libname}`echo ${release} | [sed -e 's/[.]/-/g']`${versuffix}.dll $libname.lib' library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll $libname.lib'
;; ;;
esac esac
dynamic_linker='Win32 ld.exe' dynamic_linker='Win32 ld.exe'
@ -2337,9 +2452,19 @@ newsos6)
openbsd*) openbsd*)
version_type=sunos version_type=sunos
if test "$with_gnu_ld" = yes; then need_lib_prefix=no
need_lib_prefix=no need_version=no
need_version=no if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
case "$host_os" in
openbsd2.[[89]] | openbsd2.[[89]].*)
shlibpath_overrides_runpath=no
;;
*)
shlibpath_overrides_runpath=yes
;;
esac
else
shlibpath_overrides_runpath=yes
fi fi
library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
@ -2456,6 +2581,41 @@ AC_MSG_RESULT([$can_build_shared])
## ##
## END FIXME ## END FIXME
## FIXME: this should be a separate macro
##
AC_MSG_CHECKING([whether to build shared libraries])
test "$can_build_shared" = "no" && enable_shared=no
# On AIX, shared libraries and static libraries use the same namespace, and
# are all built from PIC.
case "$host_os" in
aix3*)
test "$enable_shared" = yes && enable_static=no
if test -n "$RANLIB"; then
archive_cmds="$archive_cmds~\$RANLIB \$lib"
postinstall_cmds='$RANLIB $lib'
fi
;;
aix4*)
if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
test "$enable_shared" = yes && enable_static=no
fi
;;
esac
AC_MSG_RESULT([$enable_shared])
##
## END FIXME
## FIXME: this should be a separate macro
##
AC_MSG_CHECKING([whether to build static libraries])
# Make sure either enable_shared or enable_static is yes.
test "$enable_shared" = yes || enable_static=yes
AC_MSG_RESULT([$enable_static])
##
## END FIXME
if test "$hardcode_action" = relink; then if test "$hardcode_action" = relink; then
# Fast installation is not supported # Fast installation is not supported
enable_fast_install=no enable_fast_install=no
@ -2555,6 +2715,7 @@ if test -f "$ltmain"; then
old_striplib striplib file_magic_cmd export_symbols_cmds \ old_striplib striplib file_magic_cmd export_symbols_cmds \
deplibs_check_method allow_undefined_flag no_undefined_flag \ deplibs_check_method allow_undefined_flag no_undefined_flag \
finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \ finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \
global_symbol_to_c_name_address \
hardcode_libdir_flag_spec hardcode_libdir_separator \ hardcode_libdir_flag_spec hardcode_libdir_separator \
sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do
@ -2621,12 +2782,12 @@ SHELL=$lt_SHELL
# Whether or not to build shared libraries. # Whether or not to build shared libraries.
build_libtool_libs=$enable_shared build_libtool_libs=$enable_shared
# Whether or not to add -lc for building shared libraries.
build_libtool_need_lc=$need_lc
# Whether or not to build static libraries. # Whether or not to build static libraries.
build_old_libs=$enable_static build_old_libs=$enable_static
# Whether or not to add -lc for building shared libraries.
build_libtool_need_lc=$need_lc
# Whether or not to optimize for fast installation. # Whether or not to optimize for fast installation.
fast_install=$enable_fast_install fast_install=$enable_fast_install
@ -2792,6 +2953,9 @@ global_symbol_pipe=$lt_global_symbol_pipe
# Transform the output of nm in a proper C declaration # Transform the output of nm in a proper C declaration
global_symbol_to_cdecl=$lt_global_symbol_to_cdecl global_symbol_to_cdecl=$lt_global_symbol_to_cdecl
# Transform the output of nm in a C name address pair
global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address
# This is the shared library runtime path variable. # This is the shared library runtime path variable.
runpath_var=$runpath_var runpath_var=$runpath_var
@ -2914,9 +3078,9 @@ EOF
# return TRUE; # return TRUE;
# } # }
# /* ltdll.c ends here */ # /* ltdll.c ends here */
# This is a source program that is used to create import libraries # This is a source program that is used to create import libraries
# on Windows for dlls which lack them. Don't remove nor modify the # on Windows for dlls which lack them. Don't remove nor modify the
# starting and closing comments # starting and closing comments
# /* impgen.c starts here */ # /* impgen.c starts here */
# /* Copyright (C) 1999-2000 Free Software Foundation, Inc. # /* Copyright (C) 1999-2000 Free Software Foundation, Inc.
# #
@ -3273,6 +3437,7 @@ test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_CANONICAL_HOST])dnl
AC_REQUIRE([AC_CANONICAL_BUILD])dnl AC_REQUIRE([AC_CANONICAL_BUILD])dnl
AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl
ac_prog=ld ac_prog=ld
if test "$GCC" = yes; then if test "$GCC" = yes; then
# Check if gcc -print-prog-name=ld gives a path. # Check if gcc -print-prog-name=ld gives a path.
@ -3286,8 +3451,8 @@ if test "$GCC" = yes; then
esac esac
case $ac_prog in case $ac_prog in
# Accept absolute paths. # Accept absolute paths.
[[\\/]* | [A-Za-z]:[\\/]*)] [[\\/]]* | [[A-Za-z]]:[[\\/]]*)
[re_direlt='/[^/][^/]*/\.\./'] re_direlt='/[[^/]][[^/]]*/\.\./'
# Canonicalize the path of ld # Canonicalize the path of ld
ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
@ -3311,7 +3476,7 @@ else
fi fi
AC_CACHE_VAL(lt_cv_path_LD, AC_CACHE_VAL(lt_cv_path_LD,
[if test -z "$LD"; then [if test -z "$LD"; then
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
for ac_dir in $PATH; do for ac_dir in $PATH; do
test -z "$ac_dir" && ac_dir=. test -z "$ac_dir" && ac_dir=.
if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
@ -3375,7 +3540,7 @@ lt_cv_deplibs_check_method='unknown'
# `unknown' -- same as none, but documents that we really don't know. # `unknown' -- same as none, but documents that we really don't know.
# 'pass_all' -- all dependencies passed with no checks. # 'pass_all' -- all dependencies passed with no checks.
# 'test_compile' -- check by making test program. # 'test_compile' -- check by making test program.
# ['file_magic [regex]'] -- check by looking for files in library path # 'file_magic [[regex]]' -- check by looking for files in library path
# which responds to the $file_magic_cmd with a given egrep regex. # which responds to the $file_magic_cmd with a given egrep regex.
# If you have `file' or equivalent on your system and you're not sure # If you have `file' or equivalent on your system and you're not sure
# whether `pass_all' will *always* work, you probably want this one. # whether `pass_all' will *always* work, you probably want this one.
@ -3390,7 +3555,7 @@ beos*)
;; ;;
bsdi4*) bsdi4*)
[lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'] lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
lt_cv_file_magic_cmd='/usr/bin/file -L' lt_cv_file_magic_cmd='/usr/bin/file -L'
lt_cv_file_magic_test_file=/shlib/libc.so lt_cv_file_magic_test_file=/shlib/libc.so
;; ;;
@ -3404,7 +3569,7 @@ darwin* | rhapsody*)
lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library'
lt_cv_file_magic_cmd='/usr/bin/file -L' lt_cv_file_magic_cmd='/usr/bin/file -L'
case "$host_os" in case "$host_os" in
rhapsody* | darwin1.[012]) rhapsody* | darwin1.[[012]])
lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1` lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1`
;; ;;
*) # Darwin 1.3 on *) # Darwin 1.3 on
@ -3419,7 +3584,7 @@ freebsd*)
i*86 ) i*86 )
# Not sure whether the presence of OpenBSD here was a mistake. # Not sure whether the presence of OpenBSD here was a mistake.
# Let's accept both of them until this is cleared up. # Let's accept both of them until this is cleared up.
[lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library'] lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library'
lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_cmd=/usr/bin/file
lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
;; ;;
@ -3434,7 +3599,7 @@ gnu*)
;; ;;
hpux10.20*|hpux11*) hpux10.20*|hpux11*)
[lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'] lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_cmd=/usr/bin/file
lt_cv_file_magic_test_file=/usr/lib/libc.sl lt_cv_file_magic_test_file=/usr/lib/libc.sl
;; ;;
@ -3453,7 +3618,7 @@ irix5* | irix6*)
*) libmagic=never-match;; *) libmagic=never-match;;
esac esac
# this will be overridden with pass_all, but let us keep it just in case # this will be overridden with pass_all, but let us keep it just in case
[lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1"] lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1"
;; ;;
esac esac
lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*`
@ -3463,29 +3628,39 @@ irix5* | irix6*)
# This must be Linux ELF. # This must be Linux ELF.
linux-gnu*) linux-gnu*)
case $host_cpu in case $host_cpu in
alpha* | i*86 | powerpc* | sparc* | ia64* ) alpha* | hppa* | i*86 | powerpc* | sparc* | ia64* )
lt_cv_deplibs_check_method=pass_all ;; lt_cv_deplibs_check_method=pass_all ;;
*) *)
# glibc up to 2.1.1 does not perform some relocations on ARM # glibc up to 2.1.1 does not perform some relocations on ARM
[lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' ;;] lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;;
esac esac
lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
;; ;;
netbsd*) netbsd*)
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
[lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'] lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so\.[[0-9]]+\.[[0-9]]+$'
else else
[lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so$'] lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so$'
fi fi
;; ;;
newos6*) newos6*)
[lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'] lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
lt_cv_file_magic_cmd=/usr/bin/file lt_cv_file_magic_cmd=/usr/bin/file
lt_cv_file_magic_test_file=/usr/lib/libnls.so lt_cv_file_magic_test_file=/usr/lib/libnls.so
;; ;;
openbsd*)
lt_cv_file_magic_cmd=/usr/bin/file
lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object'
else
lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library'
fi
;;
osf3* | osf4* | osf5*) osf3* | osf4* | osf5*)
# this will be overridden with pass_all, but let us keep it just in case # this will be overridden with pass_all, but let us keep it just in case
lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' lt_cv_deplibs_check_method='file_magic COFF format alpha shared library'
@ -3502,14 +3677,14 @@ solaris*)
lt_cv_file_magic_test_file=/lib/libc.so lt_cv_file_magic_test_file=/lib/libc.so
;; ;;
[sysv5uw[78]* | sysv4*uw2*)] sysv5uw[[78]]* | sysv4*uw2*)
lt_cv_deplibs_check_method=pass_all lt_cv_deplibs_check_method=pass_all
;; ;;
sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
case $host_vendor in case $host_vendor in
motorola) motorola)
[lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'] lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
;; ;;
ncr) ncr)
@ -3517,11 +3692,11 @@ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
;; ;;
sequent) sequent)
lt_cv_file_magic_cmd='/bin/file' lt_cv_file_magic_cmd='/bin/file'
[lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'] lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
;; ;;
sni) sni)
lt_cv_file_magic_cmd='/bin/file' lt_cv_file_magic_cmd='/bin/file'
[lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib"] 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 lt_cv_file_magic_test_file=/lib/libc.so
;; ;;
esac esac
@ -3535,13 +3710,14 @@ deplibs_check_method=$lt_cv_deplibs_check_method
# AC_PROG_NM - find the path to a BSD-compatible name lister # AC_PROG_NM - find the path to a BSD-compatible name lister
AC_DEFUN([AC_PROG_NM], AC_DEFUN([AC_PROG_NM],
[AC_MSG_CHECKING([for BSD-compatible nm]) [AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl
AC_MSG_CHECKING([for BSD-compatible nm])
AC_CACHE_VAL(lt_cv_path_NM, AC_CACHE_VAL(lt_cv_path_NM,
[if test -n "$NM"; then [if test -n "$NM"; then
# Let the user override the test. # Let the user override the test.
lt_cv_path_NM="$NM" lt_cv_path_NM="$NM"
else else
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
test -z "$ac_dir" && ac_dir=. test -z "$ac_dir" && ac_dir=.
tmp_nm=$ac_dir/${ac_tool_prefix}nm tmp_nm=$ac_dir/${ac_tool_prefix}nm

240
config.guess vendored
View File

@ -3,7 +3,7 @@
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
# Free Software Foundation, Inc. # Free Software Foundation, Inc.
timestamp='2001-04-20' timestamp='2001-09-04'
# This file is free software; you can redistribute it and/or modify it # 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 # under the terms of the GNU General Public License as published by
@ -52,7 +52,7 @@ version="\
GNU config.guess ($timestamp) GNU config.guess ($timestamp)
Originally written by Per Bothner. Originally written by Per Bothner.
Copyright (C) 1992, 93, 94, 95, 96, 97, 98, 99, 2000 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
Free Software Foundation, Inc. Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO This is free software; see the source for copying conditions. There is NO
@ -95,25 +95,25 @@ trap 'rm -f $dummy.c $dummy.o $dummy.rel $dummy; exit 1' 1 2 15
# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
# use `HOST_CC' if defined, but it is deprecated. # use `HOST_CC' if defined, but it is deprecated.
case $CC_FOR_BUILD,$HOST_CC,$CC in set_cc_for_build='case $CC_FOR_BUILD,$HOST_CC,$CC in
,,) echo "int dummy(){}" > $dummy.c ,,) echo "int dummy(){}" > $dummy.c ;
for c in cc gcc c89 ; do for c in cc gcc c89 ; do
($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1 ($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1 ;
if test $? = 0 ; then if test $? = 0 ; then
CC_FOR_BUILD="$c"; break CC_FOR_BUILD="$c"; break ;
fi fi ;
done done ;
rm -f $dummy.c $dummy.o $dummy.rel rm -f $dummy.c $dummy.o $dummy.rel ;
if test x"$CC_FOR_BUILD" = x ; then if test x"$CC_FOR_BUILD" = x ; then
CC_FOR_BUILD=no_compiler_found CC_FOR_BUILD=no_compiler_found ;
fi fi
;; ;;
,,*) CC_FOR_BUILD=$CC ;; ,,*) CC_FOR_BUILD=$CC ;;
,*,*) CC_FOR_BUILD=$HOST_CC ;; ,*,*) CC_FOR_BUILD=$HOST_CC ;;
esac esac'
# This is needed to find uname on a Pyramid OSx when run in the BSD universe. # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
# (ghazi@noc.rutgers.edu 8/24/94.) # (ghazi@noc.rutgers.edu 1994-08-24)
if (test -f /.attbin/uname) >/dev/null 2>&1 ; then if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
PATH=$PATH:/.attbin ; export PATH PATH=$PATH:/.attbin ; export PATH
fi fi
@ -150,6 +150,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
# to ELF recently, or will in the future. # to ELF recently, or will in the future.
case "${UNAME_MACHINE}" in case "${UNAME_MACHINE}" in
i386|sparc|amiga|arm*|hp300|mvme68k|vax|atari|luna68k|mac68k|news68k|next68k|pc532|sun3*|x68k) 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 \ if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
| grep __ELF__ >/dev/null | grep __ELF__ >/dev/null
then then
@ -204,6 +205,7 @@ main:
jsr \$26,exit jsr \$26,exit
.end main .end main
EOF EOF
eval $set_cc_for_build
$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
if test "$?" = 0 ; then if test "$?" = 0 ; then
case `./$dummy` in case `./$dummy` in
@ -225,6 +227,9 @@ EOF
2-307) 2-307)
UNAME_MACHINE="alphaev67" UNAME_MACHINE="alphaev67"
;; ;;
2-1307)
UNAME_MACHINE="alphaev68"
;;
esac esac
fi fi
rm -f $dummy.s $dummy rm -f $dummy.s $dummy
@ -328,6 +333,9 @@ EOF
aushp:SunOS:*:*) aushp:SunOS:*:*)
echo sparc-auspex-sunos${UNAME_RELEASE} echo sparc-auspex-sunos${UNAME_RELEASE}
exit 0 ;; exit 0 ;;
sparc*:NetBSD:*)
echo `uname -p`-unknown-netbsd${UNAME_RELEASE}
exit 0 ;;
atari*:OpenBSD:*:*) atari*:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE} echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;; exit 0 ;;
@ -385,6 +393,7 @@ EOF
echo clipper-intergraph-clix${UNAME_RELEASE} echo clipper-intergraph-clix${UNAME_RELEASE}
exit 0 ;; exit 0 ;;
mips:*:*:UMIPS | mips:*:*:RISCos) mips:*:*:UMIPS | mips:*:*:RISCos)
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c sed 's/^ //' << EOF >$dummy.c
#ifdef __cplusplus #ifdef __cplusplus
#include <stdio.h> /* for printf() prototype */ #include <stdio.h> /* for printf() prototype */
@ -475,6 +484,7 @@ EOF
exit 0 ;; exit 0 ;;
*:AIX:2:3) *:AIX:2:3)
if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c sed 's/^ //' << EOF >$dummy.c
#include <sys/systemcfg.h> #include <sys/systemcfg.h>
@ -553,6 +563,7 @@ EOF
fi ;; fi ;;
esac esac
if [ "${HP_ARCH}" = "" ]; then if [ "${HP_ARCH}" = "" ]; then
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c sed 's/^ //' << EOF >$dummy.c
#define _HPUX_SOURCE #define _HPUX_SOURCE
@ -586,9 +597,9 @@ EOF
exit (0); exit (0);
} }
EOF EOF
(CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy` (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi
rm -f $dummy.c $dummy rm -f $dummy.c $dummy
fi ;; fi ;;
esac esac
echo ${HP_ARCH}-hp-hpux${HPUX_REV} echo ${HP_ARCH}-hp-hpux${HPUX_REV}
@ -598,6 +609,7 @@ EOF
echo ia64-hp-hpux${HPUX_REV} echo ia64-hp-hpux${HPUX_REV}
exit 0 ;; exit 0 ;;
3050*:HI-UX:*:*) 3050*:HI-UX:*:*)
eval $set_cc_for_build
sed 's/^ //' << EOF >$dummy.c sed 's/^ //' << EOF >$dummy.c
#include <unistd.h> #include <unistd.h>
int int
@ -633,7 +645,7 @@ EOF
9000/8??:4.3bsd:*:*) 9000/8??:4.3bsd:*:*)
echo hppa1.0-hp-bsd echo hppa1.0-hp-bsd
exit 0 ;; exit 0 ;;
*9??*:MPE/iX:*:*) *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
echo hppa1.0-hp-mpeix echo hppa1.0-hp-mpeix
exit 0 ;; exit 0 ;;
hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
@ -677,12 +689,13 @@ EOF
echo xmp-cray-unicos echo xmp-cray-unicos
exit 0 ;; exit 0 ;;
CRAY*Y-MP:*:*:*) CRAY*Y-MP:*:*:*)
echo ymp-cray-unicos${UNAME_RELEASE} echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;; exit 0 ;;
CRAY*[A-Z]90:*:*:*) CRAY*[A-Z]90:*:*:*)
echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
-e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
-e 's/\.[^.]*$/.X/'
exit 0 ;; exit 0 ;;
CRAY*TS:*:*:*) CRAY*TS:*:*:*)
echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
@ -763,97 +776,29 @@ EOF
echo ${UNAME_MACHINE}-unknown-linux-gnu echo ${UNAME_MACHINE}-unknown-linux-gnu
exit 0 ;; exit 0 ;;
mips:Linux:*:*) mips:Linux:*:*)
cat >$dummy.c <<EOF case `sed -n '/^byte/s/^.*: \(.*\) endian/\1/p' < /proc/cpuinfo` in
#ifdef __cplusplus big) echo mips-unknown-linux-gnu && exit 0 ;;
#include <stdio.h> /* for printf() prototype */ little) echo mipsel-unknown-linux-gnu && exit 0 ;;
int main (int argc, char *argv[]) { esac
#else
int main (argc, argv) int argc; char *argv[]; {
#endif
#ifdef __MIPSEB__
printf ("%s-unknown-linux-gnu\n", argv[1]);
#endif
#ifdef __MIPSEL__
printf ("%sel-unknown-linux-gnu\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
;; ;;
ppc:Linux:*:*) ppc:Linux:*:*)
# Determine Lib Version echo powerpc-unknown-linux-gnu
cat >$dummy.c <<EOF exit 0 ;;
#include <features.h> ppc64:Linux:*:*)
#if defined(__GLIBC__) echo powerpc64-unknown-linux-gnu
extern char __libc_version[];
extern char __libc_release[];
#endif
main(argc, argv)
int argc;
char *argv[];
{
#if defined(__GLIBC__)
printf("%s %s\n", __libc_version, __libc_release);
#else
printf("unknown\n");
#endif
return 0;
}
EOF
LIBC=""
$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null
if test "$?" = 0 ; then
./$dummy | grep 1\.99 > /dev/null
if test "$?" = 0 ; then LIBC="libc1" ; fi
fi
rm -f $dummy.c $dummy
echo powerpc-unknown-linux-gnu${LIBC}
exit 0 ;; exit 0 ;;
alpha:Linux:*:*) alpha:Linux:*:*)
cat <<EOF >$dummy.s case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
.data EV5) UNAME_MACHINE=alphaev5 ;;
\$Lformat: EV56) UNAME_MACHINE=alphaev56 ;;
.byte 37,100,45,37,120,10,0 # "%d-%x\n" PCA56) UNAME_MACHINE=alphapca56 ;;
.text PCA57) UNAME_MACHINE=alphapca56 ;;
.globl main EV6) UNAME_MACHINE=alphaev6 ;;
.align 4 EV67) UNAME_MACHINE=alphaev67 ;;
.ent main EV68*) UNAME_MACHINE=alphaev68 ;;
main: esac
.frame \$30,16,\$26,0 objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
ldgp \$29,0(\$27) if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
.prologue 1
.long 0x47e03d80 # implver \$0
lda \$2,-1
.long 0x47e20c21 # amask \$2,\$1
lda \$16,\$Lformat
mov \$0,\$17
not \$1,\$18
jsr \$26,printf
ldgp \$29,0(\$26)
mov 0,\$16
jsr \$26,exit
.end main
EOF
LIBC=""
$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
if test "$?" = 0 ; then
case `./$dummy` in
0-0) UNAME_MACHINE="alpha" ;;
1-0) UNAME_MACHINE="alphaev5" ;;
1-1) UNAME_MACHINE="alphaev56" ;;
1-101) UNAME_MACHINE="alphapca56" ;;
2-303) UNAME_MACHINE="alphaev6" ;;
2-307) UNAME_MACHINE="alphaev67" ;;
esac
objdump --private-headers $dummy | \
grep ld.so.1 > /dev/null
if test "$?" = 0 ; then
LIBC="libc1"
fi
fi
rm -f $dummy.s $dummy
echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
exit 0 ;; exit 0 ;;
parisc:Linux:*:* | hppa:Linux:*:*) parisc:Linux:*:* | hppa:Linux:*:*)
@ -883,40 +828,30 @@ EOF
# The BFD linker knows what the default object file format is, so # 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 # 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. # problems with other programs or directories called `ld' in the path.
ld_supported_emulations=`cd /; ld --help 2>&1 \ ld_supported_targets=`cd /; ld --help 2>&1 \
| sed -ne '/supported emulations:/!d | sed -ne '/supported targets:/!d
s/[ ][ ]*/ /g s/[ ][ ]*/ /g
s/.*supported emulations: *// s/.*supported targets: *//
s/ .*// s/ .*//
p'` p'`
case "$ld_supported_emulations" in case "$ld_supported_targets" in
i*86linux) elf32-i386)
echo "${UNAME_MACHINE}-pc-linux-gnuaout"
exit 0
;;
elf_i*86)
TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
;; ;;
i*86coff) a.out-i386-linux)
echo "${UNAME_MACHINE}-pc-linux-gnuaout"
exit 0 ;;
coff-i386)
echo "${UNAME_MACHINE}-pc-linux-gnucoff" echo "${UNAME_MACHINE}-pc-linux-gnucoff"
exit 0 exit 0 ;;
;; "")
esac # Either a pre-BFD a.out linker (linux-gnuoldld) or
# Either a pre-BFD a.out linker (linux-gnuoldld) # one that does not give us useful --help.
# or one that does not give us useful --help. echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
# GCC wants to distinguish between linux-gnuoldld and linux-gnuaout. exit 0 ;;
# If ld does not provide *any* "supported emulations:"
# that means it is gnuoldld.
test -z "$ld_supported_emulations" && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0
case "${UNAME_MACHINE}" in
i*86)
VENDOR=pc;
;;
*)
VENDOR=unknown;
;;
esac esac
# Determine whether the default compiler is a.out or elf # Determine whether the default compiler is a.out or elf
eval $set_cc_for_build
cat >$dummy.c <<EOF cat >$dummy.c <<EOF
#include <features.h> #include <features.h>
#ifdef __cplusplus #ifdef __cplusplus
@ -928,15 +863,15 @@ EOF
#ifdef __ELF__ #ifdef __ELF__
# ifdef __GLIBC__ # ifdef __GLIBC__
# if __GLIBC__ >= 2 # if __GLIBC__ >= 2
printf ("%s-${VENDOR}-linux-gnu\n", argv[1]); printf ("%s-pc-linux-gnu\n", argv[1]);
# else # else
printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]); printf ("%s-pc-linux-gnulibc1\n", argv[1]);
# endif # endif
# else # else
printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]); printf ("%s-pc-linux-gnulibc1\n", argv[1]);
# endif # endif
#else #else
printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]); printf ("%s-pc-linux-gnuaout\n", argv[1]);
#endif #endif
return 0; return 0;
} }
@ -945,9 +880,10 @@ EOF
rm -f $dummy.c $dummy rm -f $dummy.c $dummy
test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0 test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
;; ;;
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. earlier versions
# are messed up and put the nodename in both sysname and nodename.
i*86:DYNIX/ptx:4*:*) i*86:DYNIX/ptx:4*:*)
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
# earlier versions are messed up and put the nodename in both
# sysname and nodename.
echo i386-sequent-sysv4 echo i386-sequent-sysv4
exit 0 ;; exit 0 ;;
i*86:UNIX_SV:4.2MP:2.*) i*86:UNIX_SV:4.2MP:2.*)
@ -966,14 +902,13 @@ EOF
echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
fi fi
exit 0 ;; exit 0 ;;
i*86:*:5:7*) i*86:*:5:[78]*)
# Fixed at (any) Pentium or better case `/bin/uname -X | grep "^Machine"` in
UNAME_MACHINE=i586 *486*) UNAME_MACHINE=i486 ;;
if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then *Pentium) UNAME_MACHINE=i586 ;;
echo ${UNAME_MACHINE}-sco-sysv${UNAME_RELEASE}uw${UNAME_VERSION} *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
else esac
echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE} echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
fi
exit 0 ;; exit 0 ;;
i*86:*:3.2:*) i*86:*:3.2:*)
if test -f /usr/options/cb.name; then if test -f /usr/options/cb.name; then
@ -1067,8 +1002,8 @@ EOF
echo ns32k-sni-sysv echo ns32k-sni-sysv
fi fi
exit 0 ;; exit 0 ;;
PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
# says <Richard.M.Bartel@ccMail.Census.GOV> # says <Richard.M.Bartel@ccMail.Census.GOV>
echo i586-unisys-sysv4 echo i586-unisys-sysv4
exit 0 ;; exit 0 ;;
*:UNIX_System_V:4*:FTX*) *:UNIX_System_V:4*:FTX*)
@ -1080,6 +1015,10 @@ EOF
# From seanf@swdc.stratus.com. # From seanf@swdc.stratus.com.
echo i860-stratus-sysv4 echo i860-stratus-sysv4
exit 0 ;; exit 0 ;;
*:VOS:*:*)
# From Paul.Green@stratus.com.
echo hppa1.1-stratus-vos
exit 0 ;;
mc68*:A/UX:*:*) mc68*:A/UX:*:*)
echo m68k-apple-aux${UNAME_RELEASE} echo m68k-apple-aux${UNAME_RELEASE}
exit 0 ;; exit 0 ;;
@ -1172,11 +1111,18 @@ EOF
*:ITS:*:*) *:ITS:*:*)
echo pdp10-unknown-its echo pdp10-unknown-its
exit 0 ;; exit 0 ;;
i*86:XTS-300:*:STOP)
echo ${UNAME_MACHINE}-unknown-stop
exit 0 ;;
i*86:atheos:*:*)
echo ${UNAME_MACHINE}-unknown-atheos
exit 0 ;;
esac esac
#echo '(No uname command or uname output not recognized.)' 1>&2 #echo '(No uname command or uname output not recognized.)' 1>&2
#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
eval $set_cc_for_build
cat >$dummy.c <<EOF cat >$dummy.c <<EOF
#ifdef _SEQUENT_ #ifdef _SEQUENT_
# include <sys/types.h> # include <sys/types.h>

149
config.sub vendored
View File

@ -3,7 +3,7 @@
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
# Free Software Foundation, Inc. # Free Software Foundation, Inc.
timestamp='2001-04-20' timestamp='2001-09-07'
# This file is (in principle) common to ALL GNU software. # This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software # The presence of a machine in this file suggests that SOME GNU software
@ -117,7 +117,7 @@ esac
# Here we must recognize all the valid KERNEL-OS combinations. # Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in case $maybe_os in
nto-qnx* | linux-gnu* | storm-chaos* | os2-emx*) nto-qnx* | linux-gnu* | storm-chaos* | os2-emx* | windows32-*)
os=-$maybe_os os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
;; ;;
@ -157,6 +157,14 @@ case $os in
os=-vxworks os=-vxworks
basic_machine=$1 basic_machine=$1
;; ;;
-chorusos*)
os=-chorusos
basic_machine=$1
;;
-chorusrdb)
os=-chorusrdb
basic_machine=$1
;;
-hiux*) -hiux*)
os=-hiuxwe2 os=-hiuxwe2
;; ;;
@ -215,26 +223,36 @@ esac
case $basic_machine in case $basic_machine in
# Recognize the basic CPU types without company name. # Recognize the basic CPU types without company name.
# Some are omitted here because they have special meanings below. # Some are omitted here because they have special meanings below.
tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc \ 1750a | 580 \
| arm | arme[lb] | arm[bl]e | armv[2345] | armv[345][lb] | strongarm | xscale \ | a29k \
| pyramid | mn10200 | mn10300 | tron | a29k \ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
| 580 | i960 | h8300 \ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
| x86 | ppcbe | mipsbe | mipsle | shbe | shle \ | c4x | clipper \
| hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \ | d10v | d30v | dsp16xx \
| hppa64 \ | fr30 \
| alpha | alphaev[4-8] | alphaev56 | alphapca5[67] \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
| alphaev6[78] \ | i370 | i860 | i960 | ia64 \
| we32k | ns16k | clipper | i370 | sh | sh[34] \ | m32r | m68000 | m68k | m88k | mcore \
| powerpc | powerpcle \ | mips16 | mips64 | mips64el | mips64orion | mips64orionel \
| 1750a | dsp16xx | pdp10 | pdp11 \ | mips64vr4100 | mips64vr4100el | mips64vr4300 \
| mips16 | mips64 | mipsel | mips64el \ | mips64vr4300el | mips64vr5000 | mips64vr5000el \
| mips64orion | mips64orionel | mipstx39 | mipstx39el \ | mipsbe | mipseb | mipsel | mipsle | mipstx39 | mipstx39el \
| mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \ | mipsisa32 \
| mips64vr5000 | miprs64vr5000el | mcore | s390 | s390x \ | mn10200 | mn10300 \
| sparc | sparclet | sparclite | sparc64 | sparcv9 | sparcv9b \ | ns16k | ns32k \
| v850 | c4x \ | openrisc \
| thumb | d10v | d30v | fr30 | avr | openrisc | tic80 \ | pdp10 | pdp11 | pj | pjl \
| pj | pjl | h8500) | 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 basic_machine=$basic_machine-unknown
;; ;;
m6811 | m68hc11 | m6812 | m68hc12) m6811 | m68hc11 | m6812 | m68hc12)
@ -242,7 +260,7 @@ case $basic_machine in
basic_machine=$basic_machine-unknown basic_machine=$basic_machine-unknown
os=-none os=-none
;; ;;
m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | w65) m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
;; ;;
# We use `pc' rather than `unknown' # We use `pc' rather than `unknown'
@ -257,31 +275,43 @@ case $basic_machine in
exit 1 exit 1
;; ;;
# Recognize the basic CPU types with company name. # Recognize the basic CPU types with company name.
# FIXME: clean up the formatting here. 580-* \
vax-* | tahoe-* | i*86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \ | a29k-* \
| m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | c[123]* \ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
| arm-* | armbe-* | armle-* | armv*-* | strongarm-* | xscale-* \ | alphapca5[67]-* | arc-* \
| mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \ | arm-* | armbe-* | armle-* | armv*-* \
| power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \ | bs2000-* \
| xmp-* | ymp-* \ | c[123]* | c30-* | [cjt]90-* | c54x-* \
| x86-* | ppcbe-* | mipsbe-* | mipsle-* | shbe-* | shle-* \ | clipper-* | cray2-* | cydra-* \
| hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* \ | d10v-* | d30v-* \
| hppa2.0n-* | hppa64-* \ | elxsi-* \
| alpha-* | alphaev[4-8]-* | alphaev56-* | alphapca5[67]-* \ | f30[01]-* | f700-* | fr30-* | fx80-* \
| alphaev6[78]-* \ | h8300-* | h8500-* \
| we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
| clipper-* | orion-* \ | i*86-* | i860-* | i960-* | ia64-* \
| sparclite-* | pdp10-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \ | m32r-* \
| sparc64-* | sparcv9-* | sparcv9b-* | sparc86x-* \ | m68000-* | m680[01234]0-* | m68360-* | m683?2-* | m68k-* \
| mips16-* | mips64-* | mipsel-* \ | m88110-* | m88k-* | mcore-* \
| mips64el-* | mips64orion-* | mips64orionel-* \ | mips-* | mips16-* | mips64-* | mips64el-* | mips64orion-* \
| mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \ | mips64orionel-* | mips64vr4100-* | mips64vr4100el-* \
| mipstx39-* | mipstx39el-* | mcore-* \ | mips64vr4300-* | mips64vr4300el-* | mipsbe-* | mipseb-* \
| f30[01]-* | f700-* | s390-* | s390x-* | sv1-* | t3e-* \ | mipsle-* | mipsel-* | mipstx39-* | mipstx39el-* \
| [cjt]90-* \ | none-* | np1-* | ns16k-* | ns32k-* \
| m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \ | orion-* \
| thumb-* | v850-* | d30v-* | tic30-* | tic80-* | c30-* | fr30-* \ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
| bs2000-* | tic54x-* | c54x-* | x86_64-* | pj-* | pjl-*) | 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-*)
;; ;;
# Recognize the various machine names and aliases which stand # Recognize the various machine names and aliases which stand
# for a CPU type and a company and sometimes even an OS. # for a CPU type and a company and sometimes even an OS.
@ -727,6 +757,16 @@ case $basic_machine in
ppcle-* | powerpclittle-*) ppcle-* | powerpclittle-*)
basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` 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/^[^-]*-//'`
;;
ps2) ps2)
basic_machine=i386-ibm basic_machine=i386-ibm
;; ;;
@ -881,6 +921,10 @@ case $basic_machine in
basic_machine=hppa1.1-winbond basic_machine=hppa1.1-winbond
os=-proelf os=-proelf
;; ;;
windows32)
basic_machine=i386-pc
os=-windows32-msvcrt
;;
xmp) xmp)
basic_machine=xmp-cray basic_machine=xmp-cray
os=-unicos os=-unicos
@ -934,7 +978,7 @@ case $basic_machine in
we32k) we32k)
basic_machine=we32k-att basic_machine=we32k-att
;; ;;
sh3 | sh4) sh3 | sh4 | sh3eb | sh4eb)
basic_machine=sh-unknown basic_machine=sh-unknown
;; ;;
sparc | sparcv9 | sparcv9b) sparc | sparcv9 | sparcv9b)
@ -1018,11 +1062,13 @@ case $os in
| -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -chorusos* | -chorusrdb* \
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
| -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
| -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \ | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \
| -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* | -os2*) | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
| -os2* | -vos*)
# Remember, each alternative MUST END IN *, to match a version number. # Remember, each alternative MUST END IN *, to match a version number.
;; ;;
-qnx*) -qnx*)
@ -1346,6 +1392,9 @@ case $basic_machine in
-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
vendor=atari vendor=atari
;; ;;
-vos*)
vendor=stratus
;;
esac esac
basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
;; ;;

138
ltmain.sh
View File

@ -55,8 +55,8 @@ modename="$progname"
# Constants. # Constants.
PROGRAM=ltmain.sh PROGRAM=ltmain.sh
PACKAGE=libtool PACKAGE=libtool
VERSION=1.4 VERSION=1.4.2
TIMESTAMP=" (1.920 2001/04/24 23:26:18)" TIMESTAMP=" (1.922.2.53 2001/09/11 03:18:52)"
default_mode= default_mode=
help="Try \`$progname --help' for more information." help="Try \`$progname --help' for more information."
@ -84,6 +84,9 @@ if test "${LANG+set}" = set; then
save_LANG="$LANG"; LANG=C; export LANG save_LANG="$LANG"; LANG=C; export LANG
fi fi
# Make sure IFS has a sensible default
: ${IFS=" "}
if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
echo "$modename: not configured to build any kind of library" 1>&2 echo "$modename: not configured to build any kind of library" 1>&2
echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2
@ -202,6 +205,11 @@ if test -n "$prevopt"; then
exit 1 exit 1
fi fi
# If this variable is set in any of the actions, the command in it
# will be execed at the end. This prevents here-documents from being
# left over by shells.
exec_cmd=
if test -z "$show_help"; then if test -z "$show_help"; then
# Infer the operation mode. # Infer the operation mode.
@ -329,7 +337,7 @@ if test -z "$show_help"; then
-Wc,*) -Wc,*)
args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"` args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"`
lastarg= lastarg=
IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' save_ifs="$IFS"; IFS=','
for arg in $args; do for arg in $args; do
IFS="$save_ifs" IFS="$save_ifs"
@ -615,6 +623,10 @@ compiler."
# Now arrange that obj and lo_libobj become the same file # Now arrange that obj and lo_libobj become the same file
$show "(cd $xdir && $LN_S $baseobj $libobj)" $show "(cd $xdir && $LN_S $baseobj $libobj)"
if $run eval '(cd $xdir && $LN_S $baseobj $libobj)'; then if $run eval '(cd $xdir && $LN_S $baseobj $libobj)'; then
# Unlock the critical section if it was locked
if test "$need_locks" != no; then
$run $rm "$lockfile"
fi
exit 0 exit 0
else else
error=$? error=$?
@ -1031,6 +1043,17 @@ compiler."
# These systems don't actually have a C library (as such) # These systems don't actually have a C library (as such)
test "X$arg" = "X-lc" && continue 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
;;
esac esac
fi fi
deplibs="$deplibs $arg" deplibs="$deplibs $arg"
@ -1122,7 +1145,7 @@ compiler."
-Wc,*) -Wc,*)
args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'` args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'`
arg= arg=
IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' save_ifs="$IFS"; IFS=','
for flag in $args; do for flag in $args; do
IFS="$save_ifs" IFS="$save_ifs"
case $flag in case $flag in
@ -1140,7 +1163,7 @@ compiler."
-Wl,*) -Wl,*)
args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'` args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'`
arg= arg=
IFS="${IFS= }"; save_ifs="$IFS"; IFS=',' save_ifs="$IFS"; IFS=','
for flag in $args; do for flag in $args; do
IFS="$save_ifs" IFS="$save_ifs"
case $flag in case $flag in
@ -1750,7 +1773,7 @@ compiler."
if test -f "$output_objdir/$soname-def"; then : if test -f "$output_objdir/$soname-def"; then :
else else
$show "extracting exported symbol list from \`$soname'" $show "extracting exported symbol list from \`$soname'"
IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' save_ifs="$IFS"; IFS='~'
eval cmds=\"$extract_expsyms_cmds\" eval cmds=\"$extract_expsyms_cmds\"
for cmd in $cmds; do for cmd in $cmds; do
IFS="$save_ifs" IFS="$save_ifs"
@ -1763,7 +1786,7 @@ compiler."
# Create $newlib # Create $newlib
if test -f "$output_objdir/$newlib"; then :; else if test -f "$output_objdir/$newlib"; then :; else
$show "generating import library for \`$soname'" $show "generating import library for \`$soname'"
IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' save_ifs="$IFS"; IFS='~'
eval cmds=\"$old_archive_from_expsyms_cmds\" eval cmds=\"$old_archive_from_expsyms_cmds\"
for cmd in $cmds; do for cmd in $cmds; do
IFS="$save_ifs" IFS="$save_ifs"
@ -1911,17 +1934,17 @@ compiler."
echo "*** Therefore, libtool will create a static module, that should work " echo "*** Therefore, libtool will create a static module, that should work "
echo "*** as long as the dlopening application is linked with the -dlopen flag." echo "*** as long as the dlopening application is linked with the -dlopen flag."
if test -z "$global_symbol_pipe"; then if test -z "$global_symbol_pipe"; then
echo echo
echo "*** However, this would only work if libtool was able to extract symbol" echo "*** However, this would only work if libtool was able to extract symbol"
echo "*** lists from a program, using \`nm' or equivalent, but libtool could" echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
echo "*** not find such a program. So, this module is probably useless." echo "*** not find such a program. So, this module is probably useless."
echo "*** \`nm' from GNU binutils and a full rebuild may help." echo "*** \`nm' from GNU binutils and a full rebuild may help."
fi fi
if test "$build_old_libs" = no; then if test "$build_old_libs" = no; then
build_libtool_libs=module build_libtool_libs=module
build_old_libs=yes build_old_libs=yes
else else
build_libtool_libs=no build_libtool_libs=no
fi fi
fi fi
else else
@ -2175,7 +2198,7 @@ compiler."
else else
# Parse the version information argument. # Parse the version information argument.
IFS="${IFS= }"; save_ifs="$IFS"; IFS=':' save_ifs="$IFS"; IFS=':'
set dummy $vinfo 0 0 0 set dummy $vinfo 0 0 0
IFS="$save_ifs" IFS="$save_ifs"
@ -2312,6 +2335,16 @@ compiler."
if test -z "$vinfo" && test -n "$release"; then if test -z "$vinfo" && test -n "$release"; then
major= major=
verstring="0.0" verstring="0.0"
case $version_type in
darwin)
# we can't check for "0.0" in archive_cmds due to quoting
# problems, so we reset it completely
verstring=""
;;
*)
verstring="0.0"
;;
esac
if test "$need_version" = no; then if test "$need_version" = no; then
versuffix= versuffix=
else else
@ -2408,6 +2441,9 @@ compiler."
*-*-netbsd*) *-*-netbsd*)
# Don't link with libc until the a.out ld.so is fixed. # 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.
;;
*) *)
# Add libc to deplibs on all other systems if necessary. # Add libc to deplibs on all other systems if necessary.
if test $build_libtool_need_lc = "yes"; then if test $build_libtool_need_lc = "yes"; then
@ -2784,7 +2820,7 @@ EOF
export_symbols="$output_objdir/$libname.exp" export_symbols="$output_objdir/$libname.exp"
$run $rm $export_symbols $run $rm $export_symbols
eval cmds=\"$export_symbols_cmds\" eval cmds=\"$export_symbols_cmds\"
IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' save_ifs="$IFS"; IFS='~'
for cmd in $cmds; do for cmd in $cmds; do
IFS="$save_ifs" IFS="$save_ifs"
$show "$cmd" $show "$cmd"
@ -2860,7 +2896,7 @@ EOF
else else
eval cmds=\"$archive_cmds\" eval cmds=\"$archive_cmds\"
fi fi
IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' save_ifs="$IFS"; IFS='~'
for cmd in $cmds; do for cmd in $cmds; do
IFS="$save_ifs" IFS="$save_ifs"
$show "$cmd" $show "$cmd"
@ -2988,7 +3024,7 @@ EOF
output="$obj" output="$obj"
eval cmds=\"$reload_cmds\" eval cmds=\"$reload_cmds\"
IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' save_ifs="$IFS"; IFS='~'
for cmd in $cmds; do for cmd in $cmds; do
IFS="$save_ifs" IFS="$save_ifs"
$show "$cmd" $show "$cmd"
@ -3024,7 +3060,7 @@ EOF
reload_objs="$libobjs $reload_conv_objs" reload_objs="$libobjs $reload_conv_objs"
output="$libobj" output="$libobj"
eval cmds=\"$reload_cmds\" eval cmds=\"$reload_cmds\"
IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' save_ifs="$IFS"; IFS='~'
for cmd in $cmds; do for cmd in $cmds; do
IFS="$save_ifs" IFS="$save_ifs"
$show "$cmd" $show "$cmd"
@ -3287,27 +3323,25 @@ extern \"C\" {
#undef lt_preloaded_symbols #undef lt_preloaded_symbols
#if defined (__STDC__) && __STDC__ #if defined (__STDC__) && __STDC__
# define lt_ptr_t void * # define lt_ptr void *
#else #else
# define lt_ptr_t char * # define lt_ptr char *
# define const # define const
#endif #endif
/* The mapping between symbol names and symbols. */ /* The mapping between symbol names and symbols. */
const struct { const struct {
const char *name; const char *name;
lt_ptr_t address; lt_ptr address;
} }
lt_preloaded_symbols[] = lt_preloaded_symbols[] =
{\ {\
" "
sed -n -e 's/^: \([^ ]*\) $/ {\"\1\", (lt_ptr_t) 0},/p' \ eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$dlsyms"
-e 's/^. \([^ ]*\) \([^ ]*\)$/ {"\2", (lt_ptr_t) \&\2},/p' \
< "$nlist" >> "$output_objdir/$dlsyms"
$echo >> "$output_objdir/$dlsyms" "\ $echo >> "$output_objdir/$dlsyms" "\
{0, (lt_ptr_t) 0} {0, (lt_ptr) 0}
}; };
/* This works around a problem in FreeBSD linker */ /* This works around a problem in FreeBSD linker */
@ -3618,8 +3652,9 @@ else
# relink executable if necessary # relink executable if necessary
if test -n \"\$relink_command\"; then if test -n \"\$relink_command\"; then
if (eval \$relink_command); then : if relink_command_output=\`eval \$relink_command 2>&1\`; then :
else else
$echo \"\$relink_command_output\" >&2
$rm \"\$progdir/\$file\" $rm \"\$progdir/\$file\"
exit 1 exit 1
fi fi
@ -3790,7 +3825,7 @@ fi\
eval cmds=\"$old_archive_cmds\" eval cmds=\"$old_archive_cmds\"
fi fi
IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' save_ifs="$IFS"; IFS='~'
for cmd in $cmds; do for cmd in $cmds; do
IFS="$save_ifs" IFS="$save_ifs"
$show "$cmd" $show "$cmd"
@ -4165,7 +4200,7 @@ relink_command=\"$relink_command\""
# Do each command in the postinstall commands. # Do each command in the postinstall commands.
lib="$destdir/$realname" lib="$destdir/$realname"
eval cmds=\"$postinstall_cmds\" eval cmds=\"$postinstall_cmds\"
IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' save_ifs="$IFS"; IFS='~'
for cmd in $cmds; do for cmd in $cmds; do
IFS="$save_ifs" IFS="$save_ifs"
$show "$cmd" $show "$cmd"
@ -4352,7 +4387,7 @@ relink_command=\"$relink_command\""
# Do each command in the postinstall commands. # Do each command in the postinstall commands.
eval cmds=\"$old_postinstall_cmds\" eval cmds=\"$old_postinstall_cmds\"
IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' save_ifs="$IFS"; IFS='~'
for cmd in $cmds; do for cmd in $cmds; do
IFS="$save_ifs" IFS="$save_ifs"
$show "$cmd" $show "$cmd"
@ -4368,11 +4403,10 @@ relink_command=\"$relink_command\""
if test -n "$current_libdirs"; then if test -n "$current_libdirs"; then
# Maybe just do a dry run. # Maybe just do a dry run.
test -n "$run" && current_libdirs=" -n$current_libdirs" test -n "$run" && current_libdirs=" -n$current_libdirs"
exec $SHELL $0 --finish$current_libdirs exec_cmd='$SHELL $0 --finish$current_libdirs'
exit 1 else
exit 0
fi fi
exit 0
;; ;;
# libtool finish mode # libtool finish mode
@ -4391,7 +4425,7 @@ relink_command=\"$relink_command\""
if test -n "$finish_cmds"; then if test -n "$finish_cmds"; then
# Do each command in the finish commands. # Do each command in the finish commands.
eval cmds=\"$finish_cmds\" eval cmds=\"$finish_cmds\"
IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' save_ifs="$IFS"; IFS='~'
for cmd in $cmds; do for cmd in $cmds; do
IFS="$save_ifs" IFS="$save_ifs"
$show "$cmd" $show "$cmd"
@ -4575,11 +4609,8 @@ relink_command=\"$relink_command\""
LANG="$save_LANG"; export LANG LANG="$save_LANG"; export LANG
fi fi
# Now actually exec the command. # Now prepare to actually exec the command.
eval "exec \$cmd$args" exec_cmd='"$cmd"$args'
$echo "$modename: cannot exec \$cmd$args"
exit 1
else else
# Display what would be done. # Display what would be done.
if test -n "$shlibpath_var"; then if test -n "$shlibpath_var"; then
@ -4641,14 +4672,14 @@ relink_command=\"$relink_command\""
# Don't error if the file doesn't exist and rm -f was used. # Don't error if the file doesn't exist and rm -f was used.
if (test -L "$file") >/dev/null 2>&1 \ if (test -L "$file") >/dev/null 2>&1 \
|| (test -h "$file") >/dev/null 2>&1 \ || (test -h "$file") >/dev/null 2>&1 \
|| test -f "$file"; then || test -f "$file"; then
: :
elif test -d "$file"; then elif test -d "$file"; then
exit_status=1 exit_status=1
continue continue
elif test "$rmforce" = yes; then elif test "$rmforce" = yes; then
continue continue
fi fi
rmfiles="$file" rmfiles="$file"
@ -4670,7 +4701,7 @@ relink_command=\"$relink_command\""
if test -n "$library_names"; then if test -n "$library_names"; then
# Do each command in the postuninstall commands. # Do each command in the postuninstall commands.
eval cmds=\"$postuninstall_cmds\" eval cmds=\"$postuninstall_cmds\"
IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' save_ifs="$IFS"; IFS='~'
for cmd in $cmds; do for cmd in $cmds; do
IFS="$save_ifs" IFS="$save_ifs"
$show "$cmd" $show "$cmd"
@ -4685,7 +4716,7 @@ relink_command=\"$relink_command\""
if test -n "$old_library"; then if test -n "$old_library"; then
# Do each command in the old_postuninstall commands. # Do each command in the old_postuninstall commands.
eval cmds=\"$old_postuninstall_cmds\" eval cmds=\"$old_postuninstall_cmds\"
IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' save_ifs="$IFS"; IFS='~'
for cmd in $cmds; do for cmd in $cmds; do
IFS="$save_ifs" IFS="$save_ifs"
$show "$cmd" $show "$cmd"
@ -4744,11 +4775,18 @@ relink_command=\"$relink_command\""
;; ;;
esac esac
$echo "$modename: invalid operation mode \`$mode'" 1>&2 if test -z "$exec_cmd"; then
$echo "$generic_help" 1>&2 $echo "$modename: invalid operation mode \`$mode'" 1>&2
exit 1 $echo "$generic_help" 1>&2
exit 1
fi
fi # test -z "$show_help" fi # test -z "$show_help"
if test -n "$exec_cmd"; then
eval exec $exec_cmd
exit 1
fi
# We need to display help for each of the modes. # We need to display help for each of the modes.
case $mode in case $mode in
"") $echo \ "") $echo \