1# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
2## Copyright 1996, 1997, 1998, 1999, 2000, 2001
3## Free Software Foundation, Inc.
4## Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
5##
6## This program is free software; you can redistribute it and/or modify
7## it under the terms of the GNU General Public License as published by
8## the Free Software Foundation; either version 2 of the License, or
9## (at your option) any later version.
10##
11## This program is distributed in the hope that it will be useful, but
12## WITHOUT ANY WARRANTY; without even the implied warranty of
13## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14## General Public License for more details.
15##
16## You should have received a copy of the GNU General Public License
17## along with this program; if not, write to the Free Software
18## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19##
20## As a special exception to the GNU General Public License, if you
21## distribute this file as part of a program that contains a
22## configuration script generated by Autoconf, you may include it under
23## the same distribution terms that you use for the rest of that program.
24
25# serial 47 AC_PROG_LIBTOOL
26
27# AC_PROG_LIBTOOL
28# ---------------
29AC_DEFUN([AC_PROG_LIBTOOL],
30[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl
31dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX
32dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX.
33  AC_PROVIDE_IFELSE([AC_PROG_CXX],
34    [AC_LIBTOOL_CXX],
35    [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX
36  ])])
37
38dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly.
39dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run
40dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both.
41  AC_PROVIDE_IFELSE([AC_PROG_GCJ],
42    [AC_LIBTOOL_GCJ],
43    [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
44      [AC_LIBTOOL_GCJ],
45      [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],
46	[AC_LIBTOOL_GCJ],
47      [ifdef([AC_PROG_GCJ],
48	     [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ])])
49       ifdef([A][M_PROG_GCJ],
50	     [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ])])
51       ifdef([LT_AC_PROG_GCJ],
52	     [define([LT_AC_PROG_GCJ],
53		defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ])])])])
54])])# AC_PROG_LIBTOOL
55
56
57# _AC_PROG_LIBTOOL
58# ----------------
59AC_DEFUN([_AC_PROG_LIBTOOL],
60[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
61AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl
62AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl
63
64# This can be used to rebuild libtool when needed
65LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
66
67# Always use our own libtool.
68LIBTOOL='$(SHELL) $(top_builddir)/libtool'
69AC_SUBST(LIBTOOL)dnl
70
71# Prevent multiple expansion
72define([AC_PROG_LIBTOOL], [])
73])# _AC_PROG_LIBTOOL
74
75
76# AC_LIBTOOL_SETUP
77# ----------------
78AC_DEFUN([AC_LIBTOOL_SETUP],
79[AC_PREREQ(2.50)dnl
80AC_REQUIRE([AC_ENABLE_SHARED])dnl
81AC_REQUIRE([AC_ENABLE_STATIC])dnl
82AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
83AC_REQUIRE([AC_CANONICAL_HOST])dnl
84AC_REQUIRE([AC_CANONICAL_BUILD])dnl
85AC_REQUIRE([AC_PROG_CC])dnl
86AC_REQUIRE([AC_PROG_LD])dnl
87AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
88AC_REQUIRE([AC_PROG_NM])dnl
89AC_REQUIRE([LT_AC_PROG_SED])dnl
90
91AC_REQUIRE([AC_PROG_LN_S])dnl
92AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
93# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers!
94AC_REQUIRE([AC_OBJEXT])dnl
95AC_REQUIRE([AC_EXEEXT])dnl
96dnl
97
98AC_LIBTOOL_SYS_MAX_CMD_LEN
99AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
100AC_LIBTOOL_OBJDIR
101
102AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
103_LT_AC_PROG_ECHO_BACKSLASH
104
105case $host_os in
106aix3*)
107  # AIX sometimes has problems with the GCC collect2 program.  For some
108  # reason, if we set the COLLECT_NAMES environment variable, the problems
109  # vanish in a puff of smoke.
110  if test "X${COLLECT_NAMES+set}" != Xset; then
111    COLLECT_NAMES=
112    export COLLECT_NAMES
113  fi
114  ;;
115esac
116
117# Sed substitution that helps us do robust quoting.  It backslashifies
118# metacharacters that are still active within double-quoted strings.
119Xsed='sed -e s/^X//'
120[sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g']
121
122# Same as above, but do not quote variable references.
123[double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g']
124
125# Sed substitution to delay expansion of an escaped shell variable in a
126# double_quote_subst'ed string.
127delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
128
129# Sed substitution to avoid accidental globbing in evaled expressions
130no_glob_subst='s/\*/\\\*/g'
131
132# Constants:
133rm="rm -f"
134
135# Global variables:
136default_ofile=libtool
137can_build_shared=yes
138
139# All known linkers require a `.a' archive for static linking (except M$VC,
140# which needs '.lib').
141libext=a
142ltmain="$ac_aux_dir/ltmain.sh"
143ofile="$default_ofile"
144with_gnu_ld="$lt_cv_prog_gnu_ld"
145
146AC_CHECK_TOOL(RANLIB, ranlib, :)
147AC_CHECK_TOOL(STRIP, strip, :)
148
149old_CC="$CC"
150old_CFLAGS="$CFLAGS"
151
152# Set sane defaults for various variables
153test -z "$AR" && AR=ar
154test -z "$AR_FLAGS" && AR_FLAGS=cru
155test -z "$AS" && AS=as
156test -z "$CC" && CC=cc
157test -z "$LTCC" && LTCC=$CC
158test -z "$DLLTOOL" && DLLTOOL=dlltool
159test -z "$LD" && LD=ld
160test -z "$LN_S" && LN_S="ln -s"
161test -z "$MAGIC_CMD" && MAGIC_CMD=file
162test -z "$NM" && NM=nm
163test -z "$SED" && SED=sed
164test -z "$OBJDUMP" && OBJDUMP=objdump
165test -z "$RANLIB" && RANLIB=:
166test -z "$STRIP" && STRIP=:
167test -z "$ac_objext" && ac_objext=o
168
169# Determine commands to create old-style static archives.
170old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
171old_postinstall_cmds='chmod 644 $oldlib'
172old_postuninstall_cmds=
173
174if test -n "$RANLIB"; then
175  case $host_os in
176  openbsd*)
177    old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds"
178    ;;
179  *)
180    old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
181    ;;
182  esac
183  old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
184fi
185
186# Only perform the check for file, if the check method requires it
187case $deplibs_check_method in
188file_magic*)
189  if test "$file_magic_cmd" = '$MAGIC_CMD'; then
190    AC_PATH_MAGIC
191  fi
192  ;;
193esac
194
195ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no)
196ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
197enable_win32_dll=yes, enable_win32_dll=no)
198
199AC_ARG_ENABLE([libtool-lock],
200    [AC_HELP_STRING([--disable-libtool-lock],
201	[avoid locking (might break parallel builds)])])
202test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
203
204AC_ARG_WITH([pic],
205    [AC_HELP_STRING([--with-pic],
206	[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
207    [pic_mode="$withval"],
208    [pic_mode=default])
209test -z "$pic_mode" && pic_mode=default
210
211# Use C for the default configuration in the libtool script
212tagname=
213AC_LIBTOOL_LANG_C_CONFIG
214_LT_AC_TAGCONFIG
215])# AC_LIBTOOL_SETUP
216
217
218# _LT_AC_SYS_COMPILER
219# -------------------
220AC_DEFUN([_LT_AC_SYS_COMPILER],
221[AC_REQUIRE([AC_PROG_CC])dnl
222
223# If no C compiler was specified, use CC.
224LTCC=${LTCC-"$CC"}
225
226# Allow CC to be a program name with arguments.
227set dummy $CC
228compiler="[$]2"
229])# _LT_AC_SYS_COMPILER
230
231
232# _LT_AC_SYS_LIBPATH_AIX
233# ----------------------
234# Links a minimal program and checks the executable
235# for the system default hardcoded library path. In most cases,
236# this is /usr/lib:/lib, but when the MPI compilers are used
237# the location of the communication and MPI libs are included too.
238# If we don't find anything, use the default library path according
239# to the aix ld manual.
240AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX],
241[AC_LINK_IFELSE(AC_LANG_PROGRAM,[
242aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
243}'`
244# Check for a 64-bit object if we didn't find anything.
245if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
246}'`; fi],[])
247if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
248])# _LT_AC_SYS_LIBPATH_AIX
249
250
251# _LT_AC_PROG_ECHO_BACKSLASH
252# --------------------------
253# Add some code to the start of the generated configure script which
254# will find an echo command which doesn't interpret backslashes.
255AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH],
256[ifdef([AC_DIVERSION_NOTICE],
257	     [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
258	 [AC_DIVERT_PUSH(NOTICE)])
259
260# Check that we are running under the correct shell.
261SHELL=${CONFIG_SHELL-/bin/sh}
262
263case X$ECHO in
264X*--fallback-echo)
265  # Remove one level of quotation (which was required for Make).
266  ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
267  ;;
268esac
269
270echo=${ECHO-echo}
271if test "X[$]1" = X--no-reexec; then
272  # Discard the --no-reexec flag, and continue.
273  shift
274elif test "X[$]1" = X--fallback-echo; then
275  # Avoid inline document here, it may be left over
276  :
277elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
278  # Yippee, $echo works!
279  :
280else
281  # Restart under the correct shell.
282  exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
283fi
284
285if test "X[$]1" = X--fallback-echo; then
286  # used as fallback echo
287  shift
288  cat <<EOF
289[$]*
290EOF
291  exit 0
292fi
293
294# The HP-UX ksh and POSIX shell print the target directory to stdout
295# if CDPATH is set.
296if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
297
298if test -z "$ECHO"; then
299if test "X${echo_test_string+set}" != Xset; then
300# find a string as large as possible, as long as the shell can cope with it
301  for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
302    # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
303    if (echo_test_string="`eval $cmd`") 2>/dev/null &&
304       echo_test_string="`eval $cmd`" &&
305       (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
306    then
307      break
308    fi
309  done
310fi
311
312if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
313   echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
314   test "X$echo_testing_string" = "X$echo_test_string"; then
315  :
316else
317  # The Solaris, AIX, and Digital Unix default echo programs unquote
318  # backslashes.  This makes it impossible to quote backslashes using
319  #   echo "$something" | sed 's/\\/\\\\/g'
320  #
321  # So, first we look for a working echo in the user's PATH.
322
323  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
324  for dir in $PATH /usr/ucb; do
325    IFS="$lt_save_ifs"
326    if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
327       test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
328       echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
329       test "X$echo_testing_string" = "X$echo_test_string"; then
330      echo="$dir/echo"
331      break
332    fi
333  done
334  IFS="$lt_save_ifs"
335
336  if test "X$echo" = Xecho; then
337    # We didn't find a better echo, so look for alternatives.
338    if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
339       echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` &&
340       test "X$echo_testing_string" = "X$echo_test_string"; then
341      # This shell has a builtin print -r that does the trick.
342      echo='print -r'
343    elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
344	 test "X$CONFIG_SHELL" != X/bin/ksh; then
345      # If we have ksh, try running configure again with it.
346      ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
347      export ORIGINAL_CONFIG_SHELL
348      CONFIG_SHELL=/bin/ksh
349      export CONFIG_SHELL
350      exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
351    else
352      # Try using printf.
353      echo='printf %s\n'
354      if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
355	 echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
356	 test "X$echo_testing_string" = "X$echo_test_string"; then
357	# Cool, printf works
358	:
359      elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
360	   test "X$echo_testing_string" = 'X\t' &&
361	   echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
362	   test "X$echo_testing_string" = "X$echo_test_string"; then
363	CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
364	export CONFIG_SHELL
365	SHELL="$CONFIG_SHELL"
366	export SHELL
367	echo="$CONFIG_SHELL [$]0 --fallback-echo"
368      elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
369	   test "X$echo_testing_string" = 'X\t' &&
370	   echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
371	   test "X$echo_testing_string" = "X$echo_test_string"; then
372	echo="$CONFIG_SHELL [$]0 --fallback-echo"
373      else
374	# maybe with a smaller string...
375	prev=:
376
377	for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
378	  if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null
379	  then
380	    break
381	  fi
382	  prev="$cmd"
383	done
384
385	if test "$prev" != 'sed 50q "[$]0"'; then
386	  echo_test_string=`eval $prev`
387	  export echo_test_string
388	  exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
389	else
390	  # Oops.  We lost completely, so just stick with echo.
391	  echo=echo
392	fi
393      fi
394    fi
395  fi
396fi
397fi
398
399# Copy echo and quote the copy suitably for passing to libtool from
400# the Makefile, instead of quoting the original, which is used later.
401ECHO=$echo
402if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
403   ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
404fi
405
406AC_SUBST(ECHO)
407AC_DIVERT_POP
408])# _LT_AC_PROG_ECHO_BACKSLASH
409
410
411# _LT_AC_LOCK
412# -----------
413AC_DEFUN([_LT_AC_LOCK],
414[AC_ARG_ENABLE([libtool-lock],
415    [AC_HELP_STRING([--disable-libtool-lock],
416	[avoid locking (might break parallel builds)])])
417test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
418
419# Some flags need to be propagated to the compiler or linker for good
420# libtool support.
421case $host in
422ia64-*-hpux*)
423  # Find out which ABI we are using.
424  echo 'int i;' > conftest.$ac_ext
425  if AC_TRY_EVAL(ac_compile); then
426    case `/usr/bin/file conftest.$ac_objext` in
427    *ELF-32*)
428      HPUX_IA64_MODE="32"
429      ;;
430    *ELF-64*)
431      HPUX_IA64_MODE="64"
432      ;;
433    esac
434  fi
435  rm -rf conftest*
436  ;;
437*-*-irix6*)
438  # Find out which ABI we are using.
439  echo '[#]line __oline__ "configure"' > conftest.$ac_ext
440  if AC_TRY_EVAL(ac_compile); then
441    case `/usr/bin/file conftest.$ac_objext` in
442    *32-bit*)
443      LD="${LD-ld} -32"
444      ;;
445    *N32*)
446      LD="${LD-ld} -n32"
447      ;;
448    *64-bit*)
449      LD="${LD-ld} -64"
450      ;;
451    esac
452  fi
453  rm -rf conftest*
454  ;;
455
456*-*-sco3.2v5*)
457  # On SCO OpenServer 5, we need -belf to get full-featured binaries.
458  SAVE_CFLAGS="$CFLAGS"
459  CFLAGS="$CFLAGS -belf"
460  AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
461    [AC_LANG_PUSH(C)
462     AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
463     AC_LANG_POP])
464  if test x"$lt_cv_cc_needs_belf" != x"yes"; then
465    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
466    CFLAGS="$SAVE_CFLAGS"
467  fi
468  ;;
469ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
470[*-*-cygwin* | *-*-mingw* | *-*-pw32*)
471  AC_CHECK_TOOL(DLLTOOL, dlltool, false)
472  AC_CHECK_TOOL(AS, as, false)
473  AC_CHECK_TOOL(OBJDUMP, objdump, false)
474
475  # recent cygwin and mingw systems supply a stub DllMain which the user
476  # can override, but on older systems we have to supply one
477  AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain,
478    [AC_TRY_LINK([],
479      [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
480      DllMain (0, 0, 0);],
481      [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])])
482
483  case $host/$CC in
484  *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*)
485    # old mingw systems require "-dll" to link a DLL, while more recent ones
486    # require "-mdll"
487    SAVE_CFLAGS="$CFLAGS"
488    CFLAGS="$CFLAGS -mdll"
489    AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch,
490      [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])])
491    CFLAGS="$SAVE_CFLAGS" ;;
492  *-*-cygwin* | *-*-pw32*)
493    # cygwin systems need to pass --dll to the linker, and not link
494    # crt.o which will require a WinMain@16 definition.
495    lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;;
496  esac
497  ;;
498  ])
499esac
500
501need_locks="$enable_libtool_lock"
502
503])# _LT_AC_LOCK
504
505
506# AC_LIBTOOL_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
507#		[OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
508# ----------------------------------------------------------------
509# Check whether the given compiler option works
510AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION],
511[AC_CACHE_CHECK([$1], [$2],
512  [$2=no
513  ifelse([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
514   save_CFLAGS="$CFLAGS"
515   CFLAGS="$CFLAGS $3"
516   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
517   if (eval $ac_compile 2>conftest.err) && test -s $ac_outfile; then
518     # The compiler can only warn and ignore the option if not recognized
519     # So say no if there are warnings
520     if test -s conftest.err; then
521       # Append any errors to the config.log.
522       cat conftest.err 1>&AS_MESSAGE_LOG_FD
523     else
524       $2=yes
525     fi
526   fi
527   $rm conftest*
528   CFLAGS="$save_CFLAGS"
529])
530
531if test x"[$]$2" = xyes; then
532    ifelse([$5], , :, [$5])
533else
534    ifelse([$6], , :, [$6])
535fi
536])# AC_LIBTOOL_COMPILER_OPTION
537
538
539# AC_LIBTOOL_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
540#                          [ACTION-SUCCESS], [ACTION-FAILURE])
541# ------------------------------------------------------------
542# Check whether the given compiler option works
543AC_DEFUN([AC_LIBTOOL_LINKER_OPTION],
544[AC_CACHE_CHECK([$1], [$2],
545  [$2=no
546   save_LDFLAGS="$LDFLAGS"
547   LDFLAGS="$LDFLAGS $3"
548   echo "$lt_simple_link_test_code" > conftest.$ac_ext
549   if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
550     # The compiler can only warn and ignore the option if not recognized
551     # So say no if there are warnings
552     if test -s conftest.err; then
553       # Append any errors to the config.log.
554       cat conftest.err 1>&AS_MESSAGE_LOG_FD
555     else
556       $2=yes
557     fi
558   fi
559   $rm conftest*
560   LDFLAGS="$save_LDFLAGS"
561])
562
563if test x"[$]$2" = xyes; then
564    ifelse([$4], , :, [$4])
565else
566    ifelse([$5], , :, [$5])
567fi
568])# AC_LIBTOOL_LINKER_OPTION
569
570
571# AC_LIBTOOL_SYS_MAX_CMD_LEN
572# --------------------------
573AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN],
574[# find the maximum length of command line arguments
575AC_MSG_CHECKING([the maximum length of command line arguments])
576AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
577  i=0
578  testring="ABCD"
579
580  case $host_os in
581  msdosdjgpp*)
582    # On DJGPP, this test can blow up pretty badly due to problems in libc
583    # (any single argument exceeding 2000 bytes causes a buffer overrun
584    # during glob expansion).  Even if it were fixed, the result of this
585    # check would be larger than it should be.
586    lt_cv_sys_max_cmd_len=12288;    # 12K is about right
587    ;;
588
589  gnu*)
590    # Under GNU Hurd, this test is not required because there is
591    # no limit to the length of command line arguments.
592    # Libtool will interpret -1 as no limit whatsoever
593    lt_cv_sys_max_cmd_len=-1;
594    ;;
595
596  *)
597    # If test is not a shell built-in, we'll probably end up computing a
598    # maximum length that is only half of the actual maximum length, but
599    # we can't tell.
600    while (test "X"`$CONFIG_SHELL [$]0 --fallback-echo "X$testring" 2>/dev/null` \
601	       = "XX$testring") >/dev/null 2>&1 &&
602	    new_result=`expr "X$testring" : ".*" 2>&1` &&
603	    lt_cv_sys_max_cmd_len=$new_result &&
604	    test $i != 17 # 1/2 MB should be enough
605    do
606      i=`expr $i + 1`
607      testring=$testring$testring
608    done
609    testring=
610    # Add a significant safety factor because C++ compilers can tack on massive
611    # amounts of additional arguments before passing them to the linker.
612    # It appears as though 1/2 is a usable value.
613    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
614    ;;
615  esac
616])
617if test -n $lt_cv_sys_max_cmd_len ; then
618  AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
619else
620  AC_MSG_RESULT(none)
621fi
622])# AC_LIBTOOL_SYS_MAX_CMD_LEN
623
624
625# _LT_AC_CHECK_DLFCN
626# --------------------
627AC_DEFUN([_LT_AC_CHECK_DLFCN],
628[AC_CHECK_HEADERS(dlfcn.h)dnl
629])# _LT_AC_CHECK_DLFCN
630
631
632# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
633#                           ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
634# ------------------------------------------------------------------
635AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF],
636[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
637if test "$cross_compiling" = yes; then :
638  [$4]
639else
640  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
641  lt_status=$lt_dlunknown
642  cat > conftest.$ac_ext <<EOF
643[#line __oline__ "configure"
644#include "confdefs.h"
645
646#if HAVE_DLFCN_H
647#include <dlfcn.h>
648#endif
649
650#include <stdio.h>
651
652#ifdef RTLD_GLOBAL
653#  define LT_DLGLOBAL		RTLD_GLOBAL
654#else
655#  ifdef DL_GLOBAL
656#    define LT_DLGLOBAL		DL_GLOBAL
657#  else
658#    define LT_DLGLOBAL		0
659#  endif
660#endif
661
662/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
663   find out it does not work in some platform. */
664#ifndef LT_DLLAZY_OR_NOW
665#  ifdef RTLD_LAZY
666#    define LT_DLLAZY_OR_NOW		RTLD_LAZY
667#  else
668#    ifdef DL_LAZY
669#      define LT_DLLAZY_OR_NOW		DL_LAZY
670#    else
671#      ifdef RTLD_NOW
672#        define LT_DLLAZY_OR_NOW	RTLD_NOW
673#      else
674#        ifdef DL_NOW
675#          define LT_DLLAZY_OR_NOW	DL_NOW
676#        else
677#          define LT_DLLAZY_OR_NOW	0
678#        endif
679#      endif
680#    endif
681#  endif
682#endif
683
684#ifdef __cplusplus
685extern "C" void exit (int);
686#endif
687
688void fnord() { int i=42;}
689int main ()
690{
691  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
692  int status = $lt_dlunknown;
693
694  if (self)
695    {
696      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
697      else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
698      /* dlclose (self); */
699    }
700
701    exit (status);
702}]
703EOF
704  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
705    (./conftest; exit; ) 2>/dev/null
706    lt_status=$?
707    case x$lt_status in
708      x$lt_dlno_uscore) $1 ;;
709      x$lt_dlneed_uscore) $2 ;;
710      x$lt_unknown|x*) $3 ;;
711    esac
712  else :
713    # compilation failed
714    $3
715  fi
716fi
717rm -fr conftest*
718])# _LT_AC_TRY_DLOPEN_SELF
719
720
721# AC_LIBTOOL_DLOPEN_SELF
722# -------------------
723AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF],
724[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
725if test "x$enable_dlopen" != xyes; then
726  enable_dlopen=unknown
727  enable_dlopen_self=unknown
728  enable_dlopen_self_static=unknown
729else
730  lt_cv_dlopen=no
731  lt_cv_dlopen_libs=
732
733  case $host_os in
734  beos*)
735    lt_cv_dlopen="load_add_on"
736    lt_cv_dlopen_libs=
737    lt_cv_dlopen_self=yes
738    ;;
739
740  cygwin* | mingw* | pw32*)
741    lt_cv_dlopen="LoadLibrary"
742    lt_cv_dlopen_libs=
743   ;;
744
745  *)
746    AC_CHECK_FUNC([shl_load],
747	  [lt_cv_dlopen="shl_load"],
748      [AC_CHECK_LIB([dld], [shl_load],
749	    [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"],
750	[AC_CHECK_FUNC([dlopen],
751	      [lt_cv_dlopen="dlopen"],
752	  [AC_CHECK_LIB([dl], [dlopen],
753		[lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
754	    [AC_CHECK_LIB([svld], [dlopen],
755		  [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
756	      [AC_CHECK_LIB([dld], [dld_link],
757		    [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"])
758	      ])
759	    ])
760	  ])
761	])
762      ])
763    ;;
764  esac
765
766  if test "x$lt_cv_dlopen" != xno; then
767    enable_dlopen=yes
768  else
769    enable_dlopen=no
770  fi
771
772  case $lt_cv_dlopen in
773  dlopen)
774    save_CPPFLAGS="$CPPFLAGS"
775    test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
776
777    save_LDFLAGS="$LDFLAGS"
778    eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
779
780    save_LIBS="$LIBS"
781    LIBS="$lt_cv_dlopen_libs $LIBS"
782
783    AC_CACHE_CHECK([whether a program can dlopen itself],
784	  lt_cv_dlopen_self, [dnl
785	  _LT_AC_TRY_DLOPEN_SELF(
786	    lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
787	    lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
788    ])
789
790    if test "x$lt_cv_dlopen_self" = xyes; then
791      LDFLAGS="$LDFLAGS $link_static_flag"
792      AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
793    	  lt_cv_dlopen_self_static, [dnl
794	  _LT_AC_TRY_DLOPEN_SELF(
795	    lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
796	    lt_cv_dlopen_self_static=no,  lt_cv_dlopen_self_static=cross)
797      ])
798    fi
799
800    CPPFLAGS="$save_CPPFLAGS"
801    LDFLAGS="$save_LDFLAGS"
802    LIBS="$save_LIBS"
803    ;;
804  esac
805
806  case $lt_cv_dlopen_self in
807  yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
808  *) enable_dlopen_self=unknown ;;
809  esac
810
811  case $lt_cv_dlopen_self_static in
812  yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
813  *) enable_dlopen_self_static=unknown ;;
814  esac
815fi
816])# AC_LIBTOOL_DLOPEN_SELF
817
818
819# AC_LIBTOOL_PROG_CC_C_O([TAGNAME])
820# ---------------------------------
821# Check to see if options -c and -o are simultaneously supported by compiler
822AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O],
823[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
824AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
825  [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
826  [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
827   $rm -r conftest 2>/dev/null
828   mkdir conftest
829   cd conftest
830   mkdir out
831   ifelse([$1],[],[save_CFLAGS="$CFLAGS"
832		   CFLAGS="$CFLAGS -o out/conftest2.$ac_objext"],
833	  [$1],[CXX],[save_CXXFLAGS="$CXXFLAGS"
834		   CXXFLAGS="$CXXFLAGS -o out/conftest2.$ac_objext"],
835	  [$1],[GCJ],[save_GCJFLAGS="$GCJFLAGS"
836		   GCJFLAGS="$GCJFLAGS -o out/conftest2.$ac_objext"])
837   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
838
839   # According to Tom Tromey, Ian Lance Taylor reported there are C compilers
840   # that will create temporary files in the current directory regardless of
841   # the output directory.  Thus, making CWD read-only will cause this test
842   # to fail, enabling locking or at least warning the user not to do parallel
843   # builds.
844   chmod -w .
845
846   if (eval $ac_compile 2>out/conftest.err) && test -s out/conftest2.$ac_objext
847   then
848     # The compiler can only warn and ignore the option if not recognized
849     # So say no if there are warnings
850     if test -s out/conftest.err; then
851       # Append any errors to the config.log.
852       cat out/conftest.err 1>&AS_MESSAGE_LOG_FD
853     else
854       _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
855     fi
856   fi
857   ifelse([$1],[],[CFLAGS="$save_CFLAGS"],
858	  [$1],[CXX],[CXXFLAGS="$save_CXXFLAGS"],
859	  [$1],[GCJ],[GCJFLAGS="$save_GCJFLAGS"])
860   chmod u+w .
861   $rm conftest* out/*
862   rmdir out
863   cd ..
864   rmdir conftest
865   $rm conftest*
866])
867])# AC_LIBTOOL_PROG_CC_C_O
868
869
870# AC_LIBTOOL_SYS_HARD_LINK_LOCKS([TAGNAME])
871# -----------------------------------------
872# Check to see if we can do hard links to lock some files if needed
873AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS],
874[AC_REQUIRE([_LT_AC_LOCK])dnl
875
876hard_links="nottested"
877if test "$_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
878  # do not overwrite the value of need_locks provided by the user
879  AC_MSG_CHECKING([if we can lock with hard links])
880  hard_links=yes
881  $rm conftest*
882  ln conftest.a conftest.b 2>/dev/null && hard_links=no
883  touch conftest.a
884  ln conftest.a conftest.b 2>&5 || hard_links=no
885  ln conftest.a conftest.b 2>/dev/null && hard_links=no
886  AC_MSG_RESULT([$hard_links])
887  if test "$hard_links" = no; then
888    AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
889    need_locks=warn
890  fi
891else
892  need_locks=no
893fi
894])# AC_LIBTOOL_SYS_HARD_LINK_LOCKS
895
896
897# AC_LIBTOOL_OBJDIR
898# -----------------
899AC_DEFUN([AC_LIBTOOL_OBJDIR],
900[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
901[rm -f .libs 2>/dev/null
902mkdir .libs 2>/dev/null
903if test -d .libs; then
904  lt_cv_objdir=.libs
905else
906  # MS-DOS does not allow filenames that begin with a dot.
907  lt_cv_objdir=_libs
908fi
909rmdir .libs 2>/dev/null])
910objdir=$lt_cv_objdir
911])# AC_LIBTOOL_OBJDIR
912
913
914# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH([TAGNAME])
915# ----------------------------------------------
916# Check hardcoding attributes.
917AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH],
918[AC_MSG_CHECKING([how to hardcode library paths into programs])
919_LT_AC_TAGVAR(hardcode_action, $1)=
920if test -n "$_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)" || \
921   test -n "$_LT_AC_TAGVAR(runpath_var $1)"; then
922
923  # We can hardcode non-existant directories.
924  if test "$_LT_AC_TAGVAR(hardcode_direct, $1)" != no &&
925     # If the only mechanism to avoid hardcoding is shlibpath_var, we
926     # have to relink, otherwise we might link with an installed library
927     # when we should be linking with a yet-to-be-installed one
928     ## test "$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
929     test "$_LT_AC_TAGVAR(hardcode_minus_L, $1)" != no; then
930    # Linking always hardcodes the temporary library directory.
931    _LT_AC_TAGVAR(hardcode_action, $1)=relink
932  else
933    # We can link without hardcoding, and we can hardcode nonexisting dirs.
934    _LT_AC_TAGVAR(hardcode_action, $1)=immediate
935  fi
936else
937  # We cannot hardcode anything, or else we can only hardcode existing
938  # directories.
939  _LT_AC_TAGVAR(hardcode_action, $1)=unsupported
940fi
941AC_MSG_RESULT([$_LT_AC_TAGVAR(hardcode_action, $1)])
942
943if test "$_LT_AC_TAGVAR(hardcode_action, $1)" = relink; then
944  # Fast installation is not supported
945  enable_fast_install=no
946elif test "$shlibpath_overrides_runpath" = yes ||
947     test "$enable_shared" = no; then
948  # Fast installation is not necessary
949  enable_fast_install=needless
950fi
951])# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH
952
953
954# AC_LIBTOOL_SYS_LIB_STRIP
955# ------------------------
956AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP],
957[striplib=
958old_striplib=
959AC_MSG_CHECKING([whether stripping libraries is possible])
960if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then
961  test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
962  test -z "$striplib" && striplib="$STRIP --strip-unneeded"
963  AC_MSG_RESULT([yes])
964else
965  AC_MSG_RESULT([no])
966fi
967])# AC_LIBTOOL_SYS_LIB_STRIP
968
969
970# AC_LIBTOOL_SYS_DYNAMIC_LINKER
971# -----------------------------
972# PORTME Fill in your ld.so characteristics
973AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER],
974[AC_MSG_CHECKING([dynamic linker characteristics])
975library_names_spec=
976libname_spec='lib$name'
977soname_spec=
978postinstall_cmds=
979postuninstall_cmds=
980finish_cmds=
981finish_eval=
982shlibpath_var=
983shlibpath_overrides_runpath=unknown
984version_type=none
985dynamic_linker="$host_os ld.so"
986sys_lib_dlsearch_path_spec="/lib /usr/lib"
987sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
988need_lib_prefix=unknown
989hardcode_into_libs=no
990
991# when you set need_version to no, make sure it does not cause -set_version
992# flags to be left without arguments
993need_version=unknown
994
995case $host_os in
996aix3*)
997  version_type=linux
998  library_names_spec='${libname}${release}.so$versuffix $libname.a'
999  shlibpath_var=LIBPATH
1000
1001  # AIX 3 has no versioning support, so we append a major version to the name.
1002  soname_spec='${libname}${release}.so$major'
1003  ;;
1004
1005aix4* | aix5*)
1006  version_type=linux
1007  if test "$host_cpu" = ia64; then
1008    # AIX 5 supports IA64
1009    library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so'
1010    shlibpath_var=LD_LIBRARY_PATH
1011  else
1012    # With GCC up to 2.95.x, collect2 would create an import file
1013    # for dependence libraries.  The import file would start with
1014    # the line `#! .'.  This would cause the generated library to
1015    # depend on `.', always an invalid library.  This was fixed in
1016    # development snapshots of GCC prior to 3.0.
1017    case $host_os in
1018      aix4 | aix4.[[01]] | aix4.[[01]].*)
1019      if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
1020	   echo ' yes '
1021	   echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then
1022	:
1023      else
1024	can_build_shared=no
1025      fi
1026      ;;
1027    esac
1028    # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
1029    # soname into executable. Probably we can add versioning support to
1030    # collect2, so additional links can be useful in future.
1031    if test "$aix_use_runtimelinking" = yes; then
1032      # If using run time linking (on AIX 4.2 or later) use lib<name>.so
1033      # instead of lib<name>.a to let people know that these are not
1034      # typical AIX shared libraries.
1035      library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
1036    else
1037      # We preserve .a as extension for shared libraries through AIX4.2
1038      # and later when we are not doing run time linking.
1039      library_names_spec='${libname}${release}.a $libname.a'
1040      soname_spec='${libname}${release}.so$major'
1041    fi
1042    shlibpath_var=LIBPATH
1043  fi
1044  ;;
1045
1046amigaos*)
1047  library_names_spec='$libname.ixlibrary $libname.a'
1048  # Create ${libname}_ixlibrary.a entries in /sys/libs.
1049  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'
1050  ;;
1051
1052beos*)
1053  library_names_spec='${libname}.so'
1054  dynamic_linker="$host_os ld.so"
1055  shlibpath_var=LIBRARY_PATH
1056  ;;
1057
1058bsdi4*)
1059  version_type=linux
1060  need_version=no
1061  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
1062  soname_spec='${libname}${release}.so$major'
1063  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
1064  shlibpath_var=LD_LIBRARY_PATH
1065  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
1066  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
1067  # the default ld.so.conf also contains /usr/contrib/lib and
1068  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
1069  # libtool to hard-code these into programs
1070  ;;
1071
1072cygwin* | mingw* | pw32*)
1073  version_type=windows
1074  need_version=no
1075  need_lib_prefix=no
1076  case $GCC,$host_os in
1077  yes,cygwin*)
1078    library_names_spec='$libname.dll.a'
1079    sys_lib_search_path_spec="/lib /lib/w32api /usr/lib /usr/local/lib"
1080    soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
1081    postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~
1082      dldir=$destdir/`dirname \$dlpath`~
1083      test -d \$dldir || mkdir -p \$dldir~
1084      $install_prog .libs/$dlname \$dldir/$dlname'
1085    postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~
1086      dlpath=$dir/\$dldll~
1087       $rm \$dlpath'
1088    ;;
1089  yes,mingw*)
1090    library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
1091    sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://"`
1092    if echo "$sys_lib_search_path_spec" | [egrep ';[C-Z]:/' >/dev/null]; then
1093      # It is most probably a Windows format PATH printed by
1094      # mingw gcc, but we are running on Cygwin. Gcc prints its search
1095      # path with ; separators, and with drive letters. We can handle the
1096      # drive letters (cygwin fileutils understands them), so leave them,
1097      # especially as we might pass files found there to a mingw objdump,
1098      # which wouldn't understand a cygwinified path. Ahh.
1099      sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | sed -e 's/;/ /g'`
1100    else
1101      sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | sed  -e "s/$PATH_SEPARATOR/ /g"`
1102    fi
1103    ;;
1104  yes,pw32*)
1105    library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
1106    ;;
1107  *)
1108    library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll $libname.lib'
1109    ;;
1110  esac
1111  dynamic_linker='Win32 ld.exe'
1112  # FIXME: first we should search . and the directory the executable is in
1113  shlibpath_var=PATH
1114  ;;
1115
1116darwin* | rhapsody*)
1117  dynamic_linker="$host_os dyld"
1118  version_type=darwin
1119  need_lib_prefix=no
1120  need_version=no
1121  # FIXME: Relying on posixy $() will cause problems for
1122  #        cross-compilation, but unfortunately the echo tests do not
1123  #        yet detect zsh echo's removal of \ escapes.
1124  library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)'
1125  soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)'
1126  shlibpath_overrides_runpath=yes
1127  shlibpath_var=DYLD_LIBRARY_PATH
1128  ;;
1129
1130dgux*)
1131  version_type=linux
1132  need_lib_prefix=no
1133  need_version=no
1134  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
1135  soname_spec='${libname}${release}.so$major'
1136  shlibpath_var=LD_LIBRARY_PATH
1137  ;;
1138
1139freebsd1*)
1140  dynamic_linker=no
1141  ;;
1142
1143freebsd*)
1144  objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
1145  version_type=freebsd-$objformat
1146  case $version_type in
1147    freebsd-elf*)
1148      library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
1149      need_version=no
1150      need_lib_prefix=no
1151      ;;
1152    freebsd-*)
1153      library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
1154      need_version=yes
1155      ;;
1156  esac
1157  shlibpath_var=LD_LIBRARY_PATH
1158  case $host_os in
1159  freebsd2*)
1160    shlibpath_overrides_runpath=yes
1161    ;;
1162  freebsd3.[01]* | freebsdelf3.[01]*)
1163    shlibpath_overrides_runpath=yes
1164    hardcode_into_libs=yes
1165    ;;
1166  *) # from 3.2 on
1167    shlibpath_overrides_runpath=no
1168    hardcode_into_libs=yes
1169    ;;
1170  esac
1171  ;;
1172
1173gnu*)
1174  version_type=linux
1175  need_lib_prefix=no
1176  need_version=no
1177  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so'
1178  soname_spec='${libname}${release}.so$major'
1179  shlibpath_var=LD_LIBRARY_PATH
1180  hardcode_into_libs=yes
1181  ;;
1182
1183hpux9* | hpux10* | hpux11*)
1184  # Give a soname corresponding to the major version so that dld.sl refuses to
1185  # link against other versions.
1186  version_type=sunos
1187  need_lib_prefix=no
1188  need_version=no
1189  if test "$host_cpu" = ia64; then
1190    hardcode_into_libs=yes
1191    dynamic_linker="$host_os dld.so"
1192    shlibpath_var=LD_LIBRARY_PATH
1193    shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
1194    library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
1195    soname_spec='${libname}${release}.so$major'
1196    if test "X$HPUX_IA64_MODE" = X32; then
1197      sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
1198    else
1199      sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
1200    fi
1201    sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
1202  else
1203    dynamic_linker="$host_os dld.sl"
1204    shlibpath_var=SHLIB_PATH
1205    shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
1206    library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl'
1207    soname_spec='${libname}${release}.sl$major'
1208  fi
1209  # HP-UX runs *really* slowly unless shared libraries are mode 555.
1210  postinstall_cmds='chmod 555 $lib'
1211  ;;
1212
1213irix5* | irix6* | nonstopux*)
1214  case $host_os in
1215    nonstopux*) version_type=nonstopux ;;
1216    *)          version_type=irix ;;
1217  esac
1218  need_lib_prefix=no
1219  need_version=no
1220  soname_spec='${libname}${release}.so$major'
1221  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so'
1222  case $host_os in
1223  irix5* | nonstopux*)
1224    libsuff= shlibsuff=
1225    ;;
1226  *)
1227    case $LD in # libtool.m4 will add one of these switches to LD
1228    *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;;
1229    *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;;
1230    *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;;
1231    *) libsuff= shlibsuff= libmagic=never-match;;
1232    esac
1233    ;;
1234  esac
1235  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
1236  shlibpath_overrides_runpath=no
1237  sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
1238  sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
1239  ;;
1240
1241# No shared lib support for Linux oldld, aout, or coff.
1242linux*oldld* | linux*aout* | linux*coff*)
1243  dynamic_linker=no
1244  ;;
1245
1246# This must be Linux ELF.
1247linux*)
1248  version_type=linux
1249  need_lib_prefix=no
1250  need_version=no
1251  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
1252  soname_spec='${libname}${release}.so$major'
1253  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
1254  shlibpath_var=LD_LIBRARY_PATH
1255  shlibpath_overrides_runpath=no
1256  # This implies no fast_install, which is unacceptable.
1257  # Some rework will be needed to allow for fast_install
1258  # before this can be enabled.
1259  hardcode_into_libs=yes
1260
1261  # We used to test for /lib/ld.so.1 and disable shared libraries on
1262  # powerpc, because MkLinux only supported shared libraries with the
1263  # GNU dynamic linker.  Since this was broken with cross compilers,
1264  # most powerpc-linux boxes support dynamic linking these days and
1265  # people can always --disable-shared, the test was removed, and we
1266  # assume the GNU/Linux dynamic linker is in use.
1267  dynamic_linker='GNU/Linux ld.so'
1268  ;;
1269
1270netbsd*)
1271  version_type=sunos
1272  need_lib_prefix=no
1273  need_version=no
1274  if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
1275    library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
1276    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
1277    dynamic_linker='NetBSD (a.out) ld.so'
1278  else
1279    library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so'
1280    soname_spec='${libname}${release}.so$major'
1281    dynamic_linker='NetBSD ld.elf_so'
1282  fi
1283  shlibpath_var=LD_LIBRARY_PATH
1284  shlibpath_overrides_runpath=yes
1285  hardcode_into_libs=yes
1286  ;;
1287
1288newsos6)
1289  version_type=linux
1290  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
1291  shlibpath_var=LD_LIBRARY_PATH
1292  shlibpath_overrides_runpath=yes
1293  ;;
1294
1295nto-qnx)
1296  version_type=linux
1297  need_lib_prefix=no
1298  need_version=no
1299  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
1300  soname_spec='${libname}${release}.so$major'
1301  shlibpath_var=LD_LIBRARY_PATH
1302  shlibpath_overrides_runpath=yes
1303  ;;
1304
1305openbsd*)
1306  version_type=sunos
1307  need_lib_prefix=no
1308  need_version=no
1309  library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
1310  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
1311  shlibpath_var=LD_LIBRARY_PATH
1312  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
1313    case $host_os in
1314      openbsd2.[[89]] | openbsd2.[[89]].*)
1315	shlibpath_overrides_runpath=no
1316	;;
1317      *)
1318	shlibpath_overrides_runpath=yes
1319	;;
1320      esac
1321  else
1322    shlibpath_overrides_runpath=yes
1323  fi
1324  ;;
1325
1326os2*)
1327  libname_spec='$name'
1328  need_lib_prefix=no
1329  library_names_spec='$libname.dll $libname.a'
1330  dynamic_linker='OS/2 ld.exe'
1331  shlibpath_var=LIBPATH
1332  ;;
1333
1334osf3* | osf4* | osf5*)
1335  version_type=osf
1336  need_lib_prefix=no
1337  need_version=no
1338  soname_spec='${libname}${release}.so'
1339  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
1340  shlibpath_var=LD_LIBRARY_PATH
1341  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
1342  sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
1343  ;;
1344
1345sco3.2v5*)
1346  version_type=osf
1347  soname_spec='${libname}${release}.so$major'
1348  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
1349  shlibpath_var=LD_LIBRARY_PATH
1350  ;;
1351
1352solaris*)
1353  version_type=linux
1354  need_lib_prefix=no
1355  need_version=no
1356  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
1357  soname_spec='${libname}${release}.so$major'
1358  shlibpath_var=LD_LIBRARY_PATH
1359  shlibpath_overrides_runpath=yes
1360  hardcode_into_libs=yes
1361  # ldd complains unless libraries are executable
1362  postinstall_cmds='chmod +x $lib'
1363  ;;
1364
1365sunos4*)
1366  version_type=sunos
1367  library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
1368  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
1369  shlibpath_var=LD_LIBRARY_PATH
1370  shlibpath_overrides_runpath=yes
1371  if test "$with_gnu_ld" = yes; then
1372    need_lib_prefix=no
1373  fi
1374  need_version=yes
1375  ;;
1376
1377sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
1378  version_type=linux
1379  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
1380  soname_spec='${libname}${release}.so$major'
1381  shlibpath_var=LD_LIBRARY_PATH
1382  case $host_vendor in
1383    sni)
1384      shlibpath_overrides_runpath=no
1385      ;;
1386    motorola)
1387      need_lib_prefix=no
1388      need_version=no
1389      shlibpath_overrides_runpath=no
1390      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
1391      ;;
1392  esac
1393  ;;
1394
1395sysv4*MP*)
1396  if test -d /usr/nec ;then
1397    version_type=linux
1398    library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so'
1399    soname_spec='$libname.so.$major'
1400    shlibpath_var=LD_LIBRARY_PATH
1401  fi
1402  ;;
1403
1404uts4*)
1405  version_type=linux
1406  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
1407  soname_spec='${libname}${release}.so$major'
1408  shlibpath_var=LD_LIBRARY_PATH
1409  ;;
1410
1411*)
1412  dynamic_linker=no
1413  ;;
1414esac
1415AC_MSG_RESULT([$dynamic_linker])
1416test "$dynamic_linker" = no && can_build_shared=no
1417])# AC_LIBTOOL_SYS_DYNAMIC_LINKER
1418
1419
1420# _LT_AC_TAGCONFIG
1421# ----------------
1422AC_DEFUN([_LT_AC_TAGCONFIG],
1423[AC_ARG_WITH([tags],
1424    [AC_HELP_STRING([--with-tags=TAGS],
1425	[include additional configurations @<:@CXX,GCJ@:>@])],
1426    [tagnames="$withval"],
1427    [tagnames="CXX,GCJ"
1428    case $host_os in
1429      mingw*|cygwin*) tagnames="$tagnames,RC" ;;
1430    esac])
1431
1432if test -f "$ltmain" && test -n "$tagnames"; then
1433  if test ! -f "${ofile}"; then
1434    AC_MSG_WARN([output file `$ofile' does not exist])
1435  fi
1436
1437  if test -z "$LTCC"; then
1438    eval "`$SHELL ${ofile} --config | grep '^LTCC='`"
1439    if test -z "$LTCC"; then
1440      AC_MSG_WARN([output file `$ofile' does not look like a libtool script])
1441    else
1442      AC_MSG_WARN([using `LTCC=$LTCC', extracted from `$ofile'])
1443    fi
1444  fi
1445
1446  # Extract list of available tagged configurations in $ofile.
1447  # Note that this assumes the entire list is on one line.
1448  available_tags=`grep "^available_tags=" "${ofile}" | sed -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'`
1449
1450  lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
1451  for tagname in $tagnames; do
1452    IFS="$lt_save_ifs"
1453    # Check whether tagname contains only valid characters
1454    case `$echo "X$tagname" | $Xsed -e 's:[[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]]::g'` in
1455    "") ;;
1456    *)  AC_MSG_ERROR([invalid tag name: $tagname])
1457	;;
1458    esac
1459
1460    if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "${ofile}" > /dev/null
1461    then
1462      AC_MSG_ERROR([tag name \"$tagname\" already exists])
1463    fi
1464
1465    # Update the list of available tags.
1466    if test -n "$tagname"; then
1467      echo appending configuration tag \"$tagname\" to $ofile
1468
1469      case $tagname in
1470      CXX)
1471	AC_LIBTOOL_LANG_CXX_CONFIG
1472	;;
1473
1474      GCJ)
1475	AC_LIBTOOL_LANG_GCJ_CONFIG
1476	;;
1477
1478      RC)
1479	AC_LIBTOOL_LANG_RC_CONFIG
1480	;;
1481
1482      *)
1483	AC_MSG_ERROR([Unsupported tag name: $tagname])
1484	;;
1485      esac
1486
1487      # Append the new tag name to the list of available tags.
1488      available_tags="$available_tags $tagname"
1489    fi
1490  done
1491  IFS="$lt_save_ifs"
1492
1493  # Now substitute the updated list of available tags.
1494  if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' \"$ofile\" > \"${ofile}T\""; then
1495    mv "${ofile}T" "$ofile"
1496    chmod +x "$ofile"
1497  else
1498    rm -f "${ofile}T"
1499    AC_MSG_ERROR([unable to update list of available tagged configurations.])
1500  fi
1501fi
1502])# _LT_AC_TAGCONFIG
1503
1504
1505# AC_LIBTOOL_DLOPEN
1506# -----------------
1507# enable checks for dlopen support
1508AC_DEFUN([AC_LIBTOOL_DLOPEN],
1509 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])
1510])# AC_LIBTOOL_DLOPEN
1511
1512
1513# AC_LIBTOOL_WIN32_DLL
1514# --------------------
1515# declare package support for building win32 dll's
1516AC_DEFUN([AC_LIBTOOL_WIN32_DLL],
1517[AC_BEFORE([$0], [AC_LIBTOOL_SETUP])
1518])# AC_LIBTOOL_WIN32_DLL
1519
1520
1521# AC_ENABLE_SHARED([DEFAULT])
1522# ---------------------------
1523# implement the --enable-shared flag
1524# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
1525AC_DEFUN([AC_ENABLE_SHARED],
1526[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
1527AC_ARG_ENABLE([shared],
1528    [AC_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
1529	[build shared libraries @<:@default=]AC_ENABLE_SHARED_DEFAULT[@:>@])],
1530    [p=${PACKAGE-default}
1531    case $enableval in
1532    yes) enable_shared=yes ;;
1533    no) enable_shared=no ;;
1534    *)
1535      enable_shared=no
1536      # Look at the argument we got.  We use all the common list separators.
1537      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
1538      for pkg in $enableval; do
1539	IFS="$lt_save_ifs"
1540	if test "X$pkg" = "X$p"; then
1541	  enable_shared=yes
1542	fi
1543      done
1544      IFS="$lt_save_ifs"
1545      ;;
1546    esac],
1547    [enable_shared=]AC_ENABLE_SHARED_DEFAULT)
1548])# AC_ENABLE_SHARED
1549
1550
1551# AC_DISABLE_SHARED
1552# -----------------
1553#- set the default shared flag to --disable-shared
1554AC_DEFUN([AC_DISABLE_SHARED],
1555[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
1556AC_ENABLE_SHARED(no)
1557])# AC_DISABLE_SHARED
1558
1559
1560# AC_ENABLE_STATIC([DEFAULT])
1561# ---------------------------
1562# implement the --enable-static flag
1563# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
1564AC_DEFUN([AC_ENABLE_STATIC],
1565[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
1566AC_ARG_ENABLE([static],
1567    [AC_HELP_STRING([--enable-static@<:@=PKGS@:>@],
1568	[build static libraries @<:@default=]AC_ENABLE_STATIC_DEFAULT[@:>@])],
1569    [p=${PACKAGE-default}
1570    case $enableval in
1571    yes) enable_static=yes ;;
1572    no) enable_static=no ;;
1573    *)
1574     enable_static=no
1575      # Look at the argument we got.  We use all the common list separators.
1576      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
1577      for pkg in $enableval; do
1578	IFS="$lt_save_ifs"
1579	if test "X$pkg" = "X$p"; then
1580	  enable_static=yes
1581	fi
1582      done
1583      IFS="$lt_save_ifs"
1584      ;;
1585    esac],
1586    [enable_static=]AC_ENABLE_STATIC_DEFAULT)
1587])# AC_ENABLE_STATIC
1588
1589
1590# AC_DISABLE_STATIC
1591# -----------------
1592# set the default static flag to --disable-static
1593AC_DEFUN([AC_DISABLE_STATIC],
1594[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
1595AC_ENABLE_STATIC(no)
1596])# AC_DISABLE_STATIC
1597
1598
1599# AC_ENABLE_FAST_INSTALL([DEFAULT])
1600# ---------------------------------
1601# implement the --enable-fast-install flag
1602# DEFAULT is either `yes' or `no'.  If omitted, it defaults to `yes'.
1603AC_DEFUN([AC_ENABLE_FAST_INSTALL],
1604[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
1605AC_ARG_ENABLE([fast-install],
1606    [AC_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
1607    [optimize for fast installation @<:@default=]AC_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
1608    [p=${PACKAGE-default}
1609    case $enableval in
1610    yes) enable_fast_install=yes ;;
1611    no) enable_fast_install=no ;;
1612    *)
1613      enable_fast_install=no
1614      # Look at the argument we got.  We use all the common list separators.
1615      lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
1616      for pkg in $enableval; do
1617	IFS="$lt_save_ifs"
1618	if test "X$pkg" = "X$p"; then
1619	  enable_fast_install=yes
1620	fi
1621      done
1622      IFS="$lt_save_ifs"
1623      ;;
1624    esac],
1625    [enable_fast_install=]AC_ENABLE_FAST_INSTALL_DEFAULT)
1626])# AC_ENABLE_FAST_INSTALL
1627
1628
1629# AC_DISABLE_FAST_INSTALL
1630# -----------------------
1631# set the default to --disable-fast-install
1632AC_DEFUN([AC_DISABLE_FAST_INSTALL],
1633[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
1634AC_ENABLE_FAST_INSTALL(no)
1635])# AC_DISABLE_FAST_INSTALL
1636
1637
1638# AC_LIBTOOL_PICMODE([MODE])
1639# --------------------------
1640# implement the --with-pic flag
1641# MODE is either `yes' or `no'.  If omitted, it defaults to `both'.
1642AC_DEFUN([AC_LIBTOOL_PICMODE],
1643[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
1644pic_mode=ifelse($#,1,$1,default)
1645])# AC_LIBTOOL_PICMODE
1646
1647
1648# AC_PATH_TOOL_PREFIX
1649# -------------------
1650# find a file program which can recognise shared library
1651AC_DEFUN([AC_PATH_TOOL_PREFIX],
1652[AC_MSG_CHECKING([for $1])
1653AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
1654[case $MAGIC_CMD in
1655[[\\/*] |  ?:[\\/]*])
1656  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
1657  ;;
1658*)
1659  lt_save_MAGIC_CMD="$MAGIC_CMD"
1660  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
1661dnl $ac_dummy forces splitting on constant user-supplied paths.
1662dnl POSIX.2 word splitting is done only on the output of word expansions,
1663dnl not every word.  This closes a longstanding sh security hole.
1664  ac_dummy="ifelse([$2], , $PATH, [$2])"
1665  for ac_dir in $ac_dummy; do
1666    IFS="$lt_save_ifs"
1667    test -z "$ac_dir" && ac_dir=.
1668    if test -f $ac_dir/$1; then
1669      lt_cv_path_MAGIC_CMD="$ac_dir/$1"
1670      if test -n "$file_magic_test_file"; then
1671	case $deplibs_check_method in
1672	"file_magic "*)
1673	  file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
1674	  MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
1675	  if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
1676	    egrep "$file_magic_regex" > /dev/null; then
1677	    :
1678	  else
1679	    cat <<EOF 1>&2
1680
1681*** Warning: the command libtool uses to detect shared libraries,
1682*** $file_magic_cmd, produces output that libtool cannot recognize.
1683*** The result is that libtool may fail to recognize shared libraries
1684*** as such.  This will affect the creation of libtool libraries that
1685*** depend on shared libraries, but programs linked with such libtool
1686*** libraries will work regardless of this problem.  Nevertheless, you
1687*** may want to report the problem to your system manager and/or to
1688*** bug-libtool@gnu.org
1689
1690EOF
1691	  fi ;;
1692	esac
1693      fi
1694      break
1695    fi
1696  done
1697  IFS="$lt_save_ifs"
1698  MAGIC_CMD="$lt_save_MAGIC_CMD"
1699  ;;
1700esac])
1701MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
1702if test -n "$MAGIC_CMD"; then
1703  AC_MSG_RESULT($MAGIC_CMD)
1704else
1705  AC_MSG_RESULT(no)
1706fi
1707])# AC_PATH_TOOL_PREFIX
1708
1709
1710# AC_PATH_MAGIC
1711# -------------
1712# find a file program which can recognise a shared library
1713AC_DEFUN([AC_PATH_MAGIC],
1714[AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
1715if test -z "$lt_cv_path_MAGIC_CMD"; then
1716  if test -n "$ac_tool_prefix"; then
1717    AC_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
1718  else
1719    MAGIC_CMD=:
1720  fi
1721fi
1722])# AC_PATH_MAGIC
1723
1724
1725# AC_PROG_LD
1726# ----------
1727# find the path to the GNU or non-GNU linker
1728AC_DEFUN([AC_PROG_LD],
1729[AC_ARG_WITH([gnu-ld],
1730    [AC_HELP_STRING([--with-gnu-ld],
1731	[assume the C compiler uses GNU ld @<:@default=no@:>@])],
1732    [test "$withval" = no || with_gnu_ld=yes],
1733    [with_gnu_ld=no])
1734AC_REQUIRE([AC_PROG_CC])dnl
1735AC_REQUIRE([AC_CANONICAL_HOST])dnl
1736AC_REQUIRE([AC_CANONICAL_BUILD])dnl
1737ac_prog=ld
1738if test "$GCC" = yes; then
1739  # Check if gcc -print-prog-name=ld gives a path.
1740  AC_MSG_CHECKING([for ld used by GCC])
1741  case $host in
1742  *-*-mingw*)
1743    # gcc leaves a trailing carriage return which upsets mingw
1744    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
1745  *)
1746    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
1747  esac
1748  case $ac_prog in
1749    # Accept absolute paths.
1750    [[\\/]]* | ?:[[\\/]]*)
1751      re_direlt='/[[^/]][[^/]]*/\.\./'
1752      # Canonicalize the path of ld
1753      ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
1754      while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
1755	ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
1756      done
1757      test -z "$LD" && LD="$ac_prog"
1758      ;;
1759  "")
1760    # If it fails, then pretend we aren't using GCC.
1761    ac_prog=ld
1762    ;;
1763  *)
1764    # If it is relative, then search for the first ld in PATH.
1765    with_gnu_ld=unknown
1766    ;;
1767  esac
1768elif test "$with_gnu_ld" = yes; then
1769  AC_MSG_CHECKING([for GNU ld])
1770else
1771  AC_MSG_CHECKING([for non-GNU ld])
1772fi
1773AC_CACHE_VAL(lt_cv_path_LD,
1774[if test -z "$LD"; then
1775  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
1776  for ac_dir in $PATH; do
1777    IFS="$lt_save_ifs"
1778    test -z "$ac_dir" && ac_dir=.
1779    if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
1780      lt_cv_path_LD="$ac_dir/$ac_prog"
1781      # Check to see if the program is GNU ld.  I'd rather use --version,
1782      # but apparently some GNU ld's only accept -v.
1783      # Break only if it was the GNU/non-GNU ld that we prefer.
1784      if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
1785	test "$with_gnu_ld" != no && break
1786      else
1787	test "$with_gnu_ld" != yes && break
1788      fi
1789    fi
1790  done
1791  IFS="$lt_save_ifs"
1792else
1793  lt_cv_path_LD="$LD" # Let the user override the test with a path.
1794fi])
1795LD="$lt_cv_path_LD"
1796if test -n "$LD"; then
1797  AC_MSG_RESULT($LD)
1798else
1799  AC_MSG_RESULT(no)
1800fi
1801test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
1802AC_PROG_LD_GNU
1803])# AC_PROG_LD
1804
1805
1806# AC_PROG_LD_GNU
1807# --------------
1808AC_DEFUN([AC_PROG_LD_GNU],
1809[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
1810[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
1811if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
1812  lt_cv_prog_gnu_ld=yes
1813else
1814  lt_cv_prog_gnu_ld=no
1815fi])
1816with_gnu_ld=$lt_cv_prog_gnu_ld
1817])# AC_PROG_LD_GNU
1818
1819
1820# AC_PROG_LD_RELOAD_FLAG
1821# ----------------------
1822# find reload flag for linker
1823#   -- PORTME Some linkers may need a different reload flag.
1824AC_DEFUN([AC_PROG_LD_RELOAD_FLAG],
1825[AC_CACHE_CHECK([for $LD option to reload object files],
1826  lt_cv_ld_reload_flag,
1827  [lt_cv_ld_reload_flag='-r'])
1828reload_flag=$lt_cv_ld_reload_flag
1829case $reload_flag in
1830"" | " "*) ;;
1831*) reload_flag=" $reload_flag" ;;
1832esac
1833reload_cmds='$LD$reload_flag -o $output$reload_objs'
1834])# AC_PROG_LD_RELOAD_FLAG
1835
1836
1837# AC_DEPLIBS_CHECK_METHOD
1838# -----------------------
1839# how to check for library dependencies
1840#  -- PORTME fill in with the dynamic library characteristics
1841AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
1842[AC_CACHE_CHECK([how to recognise dependant libraries],
1843lt_cv_deplibs_check_method,
1844[lt_cv_file_magic_cmd='$MAGIC_CMD'
1845lt_cv_file_magic_test_file=
1846lt_cv_deplibs_check_method='unknown'
1847# Need to set the preceding variable on all platforms that support
1848# interlibrary dependencies.
1849# 'none' -- dependencies not supported.
1850# `unknown' -- same as none, but documents that we really don't know.
1851# 'pass_all' -- all dependencies passed with no checks.
1852# 'test_compile' -- check by making test program.
1853# 'file_magic [[regex]]' -- check by looking for files in library path
1854# which responds to the $file_magic_cmd with a given egrep regex.
1855# If you have `file' or equivalent on your system and you're not sure
1856# whether `pass_all' will *always* work, you probably want this one.
1857
1858case $host_os in
1859aix4* | aix5*)
1860  lt_cv_deplibs_check_method=pass_all
1861  ;;
1862
1863beos*)
1864  lt_cv_deplibs_check_method=pass_all
1865  ;;
1866
1867bsdi4*)
1868  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
1869  lt_cv_file_magic_cmd='/usr/bin/file -L'
1870  lt_cv_file_magic_test_file=/shlib/libc.so
1871  ;;
1872
1873cygwin* | mingw* | pw32*)
1874  lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
1875  lt_cv_file_magic_cmd='$OBJDUMP -f'
1876  ;;
1877
1878darwin* | rhapsody*)
1879  lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library'
1880  lt_cv_file_magic_cmd='/usr/bin/file -L'
1881  case "$host_os" in
1882  rhapsody* | darwin1.[[012]])
1883    lt_cv_file_magic_test_file=`/System/Library/Frameworks/System.framework/System`
1884    ;;
1885  *) # Darwin 1.3 on
1886    lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib'
1887    ;;
1888  esac
1889  ;;
1890
1891freebsd*)
1892  if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
1893    case $host_cpu in
1894    i*86 )
1895      # Not sure whether the presence of OpenBSD here was a mistake.
1896      # Let's accept both of them until this is cleared up.
1897      lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library'
1898      lt_cv_file_magic_cmd=/usr/bin/file
1899      lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
1900      ;;
1901    esac
1902  else
1903    lt_cv_deplibs_check_method=pass_all
1904  fi
1905  ;;
1906
1907gnu*)
1908  lt_cv_deplibs_check_method=pass_all
1909  ;;
1910
1911hpux10.20* | hpux11*)
1912  lt_cv_file_magic_cmd=/usr/bin/file
1913  if test "$host_cpu" = ia64; then
1914    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
1915    lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
1916  else
1917    lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
1918    lt_cv_file_magic_test_file=/usr/lib/libc.sl
1919  fi
1920  ;;
1921
1922irix5* | irix6* | nonstopux*)
1923  case $host_os in
1924  irix5* | nonstopux*)
1925    # this will be overridden with pass_all, but let us keep it just in case
1926    lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
1927    ;;
1928  *)
1929    case $LD in
1930    *-32|*"-32 ") libmagic=32-bit;;
1931    *-n32|*"-n32 ") libmagic=N32;;
1932    *-64|*"-64 ") libmagic=64-bit;;
1933    *) libmagic=never-match;;
1934    esac
1935    # this will be overridden with pass_all, but let us keep it just in case
1936    lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1"
1937    ;;
1938  esac
1939  lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*`
1940  lt_cv_deplibs_check_method=pass_all
1941  ;;
1942
1943# This must be Linux ELF.
1944linux*)
1945  case $host_cpu in
1946  alpha* | hppa* | i*86 | ia64* | m68* | mips | mipsel | powerpc* | sparc* | s390* | sh*)
1947    lt_cv_deplibs_check_method=pass_all ;;
1948  *)
1949    # glibc up to 2.1.1 does not perform some relocations on ARM
1950    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;;
1951  esac
1952  lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
1953  ;;
1954
1955netbsd*)
1956  if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
1957    lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so\.[[0-9]]+\.[[0-9]]+$'
1958  else
1959    lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so$'
1960  fi
1961  ;;
1962
1963newos6*)
1964  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
1965  lt_cv_file_magic_cmd=/usr/bin/file
1966  lt_cv_file_magic_test_file=/usr/lib/libnls.so
1967  ;;
1968
1969nto-qnx)
1970  lt_cv_deplibs_check_method=unknown
1971  ;;
1972
1973openbsd*)
1974  lt_cv_file_magic_cmd=/usr/bin/file
1975  lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
1976  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
1977    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object'
1978  else
1979    lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library'
1980  fi
1981  ;;
1982
1983osf3* | osf4* | osf5*)
1984  # this will be overridden with pass_all, but let us keep it just in case
1985  lt_cv_deplibs_check_method='file_magic COFF format alpha shared library'
1986  lt_cv_file_magic_test_file=/shlib/libc.so
1987  lt_cv_deplibs_check_method=pass_all
1988  ;;
1989
1990sco3.2v5*)
1991  lt_cv_deplibs_check_method=pass_all
1992  ;;
1993
1994solaris*)
1995  lt_cv_deplibs_check_method=pass_all
1996  lt_cv_file_magic_test_file=/lib/libc.so
1997  ;;
1998
1999sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
2000  case $host_vendor in
2001  motorola)
2002    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]]'
2003    lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
2004    ;;
2005  ncr)
2006    lt_cv_deplibs_check_method=pass_all
2007    ;;
2008  sequent)
2009    lt_cv_file_magic_cmd='/bin/file'
2010    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
2011    ;;
2012  sni)
2013    lt_cv_file_magic_cmd='/bin/file'
2014    lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
2015    lt_cv_file_magic_test_file=/lib/libc.so
2016    ;;
2017  esac
2018  ;;
2019
2020sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7* | sysv4*uw2*)
2021  lt_cv_deplibs_check_method=pass_all
2022  ;;
2023esac
2024])
2025file_magic_cmd=$lt_cv_file_magic_cmd
2026deplibs_check_method=$lt_cv_deplibs_check_method
2027test -z "$deplibs_check_method" && deplibs_check_method=unknown
2028])# AC_DEPLIBS_CHECK_METHOD
2029
2030
2031# AC_PROG_NM
2032# ----------
2033# find the path to a BSD-compatible name lister
2034AC_DEFUN([AC_PROG_NM],
2035[AC_CACHE_CHECK([for BSD-compatible nm], lt_cv_path_NM,
2036[if test -n "$NM"; then
2037  # Let the user override the test.
2038  lt_cv_path_NM="$NM"
2039else
2040  lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2041  for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
2042    IFS="$lt_save_ifs"
2043    test -z "$ac_dir" && ac_dir=.
2044    tmp_nm="$ac_dir/${ac_tool_prefix}nm"
2045    if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
2046      # Check to see if the nm accepts a BSD-compat flag.
2047      # Adding the `sed 1q' prevents false positives on HP-UX, which says:
2048      #   nm: unknown option "B" ignored
2049      # Tru64's nm complains that /dev/null is an invalid object file
2050      if ("$tmp_nm" -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then
2051	lt_cv_path_NM="$tmp_nm -B"
2052	break
2053      elif ("$tmp_nm" -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
2054	lt_cv_path_NM="$tmp_nm -p"
2055	break
2056      else
2057	lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
2058	continue # so that we can try to find one that supports BSD flags
2059      fi
2060    fi
2061  done
2062  IFS="$lt_save_ifs"
2063  test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
2064fi])
2065NM="$lt_cv_path_NM"
2066])# AC_PROG_NM
2067
2068
2069# AC_CHECK_LIBM
2070# -------------
2071# check for math library
2072AC_DEFUN([AC_CHECK_LIBM],
2073[AC_REQUIRE([AC_CANONICAL_HOST])dnl
2074LIBM=
2075case $host in
2076*-*-beos* | *-*-cygwin* | *-*-pw32*)
2077  # These system don't have libm
2078  ;;
2079*-ncr-sysv4.3*)
2080  AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
2081  AC_CHECK_LIB(m, main, LIBM="$LIBM -lm")
2082  ;;
2083*)
2084  AC_CHECK_LIB(m, main, LIBM="-lm")
2085  ;;
2086esac
2087])# AC_CHECK_LIBM
2088
2089
2090# AC_LIBLTDL_CONVENIENCE([DIRECTORY])
2091# -----------------------------------
2092# sets LIBLTDL to the link flags for the libltdl convenience library and
2093# LTDLINCL to the include flags for the libltdl header and adds
2094# --enable-ltdl-convenience to the configure arguments.  Note that LIBLTDL
2095# and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called.  If
2096# DIRECTORY is not provided, it is assumed to be `libltdl'.  LIBLTDL will
2097# be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed with
2098# '${top_srcdir}/' (note the single quotes!).  If your package is not
2099# flat and you're not using automake, define top_builddir and
2100# top_srcdir appropriately in the Makefiles.
2101AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
2102[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
2103  case $enable_ltdl_convenience in
2104  no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
2105  "") enable_ltdl_convenience=yes
2106      ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
2107  esac
2108  LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
2109  LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
2110  # For backwards non-gettext consistent compatibility...
2111  INCLTDL="$LTDLINCL"
2112])# AC_LIBLTDL_CONVENIENCE
2113
2114
2115# AC_LIBLTDL_INSTALLABLE([DIRECTORY])
2116# -----------------------------------
2117# sets LIBLTDL to the link flags for the libltdl installable library and
2118# LTDLINCL to the include flags for the libltdl header and adds
2119# --enable-ltdl-install to the configure arguments.  Note that LIBLTDL
2120# and LTDLINCL are not AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called.  If
2121# DIRECTORY is not provided and an installed libltdl is not found, it is
2122# assumed to be `libltdl'.  LIBLTDL will be prefixed with '${top_builddir}/'
2123# and LTDLINCL will be prefixed with '${top_srcdir}/' (note the single
2124# quotes!).  If your package is not flat and you're not using automake,
2125# define top_builddir and top_srcdir appropriately in the Makefiles.
2126# In the future, this macro may have to be called after AC_PROG_LIBTOOL.
2127AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
2128[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
2129  AC_CHECK_LIB(ltdl, main,
2130  [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
2131  [if test x"$enable_ltdl_install" = xno; then
2132     AC_MSG_WARN([libltdl not installed, but installation disabled])
2133   else
2134     enable_ltdl_install=yes
2135   fi
2136  ])
2137  if test x"$enable_ltdl_install" = x"yes"; then
2138    ac_configure_args="$ac_configure_args --enable-ltdl-install"
2139    LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
2140    LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
2141  else
2142    ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
2143    LIBLTDL="-lltdl"
2144    LTDLINCL=
2145  fi
2146  # For backwards non-gettext consistent compatibility...
2147  INCLTDL="$LTDLINCL"
2148])# AC_LIBLTDL_INSTALLABLE
2149
2150
2151# If this macro is not defined by Autoconf, define it here.
2152ifdef([AC_PROVIDE_IFELSE],
2153      [],
2154      [define([AC_PROVIDE_IFELSE],
2155	      [ifdef([AC_PROVIDE_$1],
2156		     [$2], [$3])])])
2157
2158
2159# AC_LIBTOOL_CXX
2160# --------------
2161# enable support for C++ libraries
2162AC_DEFUN([AC_LIBTOOL_CXX],
2163[AC_REQUIRE([_LT_AC_LANG_CXX])
2164])# AC_LIBTOOL_CXX
2165
2166
2167# _LT_AC_LANG_CXX
2168# ---------------
2169AC_DEFUN([_LT_AC_LANG_CXX],
2170[AC_REQUIRE([AC_PROG_CXX])
2171AC_REQUIRE([AC_PROG_CXXCPP])
2172])# _LT_AC_LANG_CXX
2173
2174
2175# AC_LIBTOOL_GCJ
2176# --------------
2177# enable support for GCJ libraries
2178AC_DEFUN([AC_LIBTOOL_GCJ],
2179[AC_REQUIRE([_LT_AC_LANG_GCJ])
2180])# AC_LIBTOOL_GCJ
2181
2182
2183# _LT_AC_LANG_GCJ
2184# ---------------
2185AC_DEFUN([_LT_AC_LANG_GCJ],
2186[AC_PROVIDE_IFELSE([AC_PROG_GCJ],[],
2187  [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[],
2188    [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[],
2189      [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])],
2190	 [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])],
2191	   [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])])
2192])# _LT_AC_LANG_GCJ
2193
2194
2195# AC_LIBTOOL_RC
2196# --------------
2197# enable support for Windows resource files
2198AC_DEFUN([AC_LIBTOOL_RC],
2199[AC_REQUIRE([AC_PROG_RC])
2200])# AC_LIBTOOL_RC
2201
2202
2203# AC_LIBTOOL_LANG_C_CONFIG
2204# ------------------------
2205# Ensure that the configuration vars for the C compiler are
2206# suitably defined.  Those variables are subsequently used by
2207# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
2208AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG], [_LT_AC_LANG_C_CONFIG])
2209AC_DEFUN([_LT_AC_LANG_C_CONFIG],
2210[lt_save_CC="$CC"
2211AC_LANG_PUSH(C)
2212
2213# Source file extension for C test sources.
2214ac_ext=c
2215
2216# Object file extension for compiled C test sources.
2217objext=o
2218_LT_AC_TAGVAR(objext, $1)=$objext
2219
2220# Code to be used in simple compile tests
2221lt_simple_compile_test_code="int some_variable = 0;"
2222
2223# Code to be used in simple link tests
2224lt_simple_link_test_code='main(){return(0);}'
2225
2226_LT_AC_SYS_COMPILER
2227
2228#
2229# Check for any special shared library compilation flags.
2230#
2231_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)=
2232if test "$GCC" = no; then
2233  case $host_os in
2234  sco3.2v5*)
2235    _LT_AC_TAGVAR(lt_prog_cc_shlib, $1)='-belf'
2236    ;;
2237  esac
2238fi
2239if test -n "$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)"; then
2240  AC_MSG_WARN([`$CC' requires `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to build shared libraries])
2241  if echo "$old_CC $old_CFLAGS " | egrep -e "[[ 	]]$]_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)[[[ 	]]" >/dev/null; then :
2242  else
2243    AC_MSG_WARN([add `$_LT_AC_TAGVAR(lt_prog_cc_shlib, $1)' to the CC or CFLAGS env variable and reconfigure])
2244    _LT_AC_TAGVAR(lt_cv_prog_cc_can_build_shared, $1)=no
2245  fi
2246fi
2247
2248
2249#
2250# Check to make sure the static flag actually works.
2251#
2252AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $_LT_AC_TAGVAR(lt_prog_compiler_static, $1) works],
2253  _LT_AC_TAGVAR(lt_prog_compiler_static_works, $1),
2254  $_LT_AC_TAGVAR(lt_prog_compiler_static, $1),
2255  [],
2256  [_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=])
2257
2258
2259## CAVEAT EMPTOR:
2260## There is no encapsulation within the following macros, do not change
2261## the running order or otherwise move them around unless you know exactly
2262## what you are doing...
2263AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1)
2264AC_LIBTOOL_PROG_COMPILER_PIC($1)
2265AC_LIBTOOL_PROG_CC_C_O($1)
2266AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
2267AC_LIBTOOL_PROG_LD_SHLIBS($1)
2268AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
2269AC_LIBTOOL_SYS_LIB_STRIP
2270AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
2271AC_LIBTOOL_DLOPEN_SELF($1)
2272
2273# Report which librarie types wil actually be built
2274AC_MSG_CHECKING([if libtool supports shared libraries])
2275AC_MSG_RESULT([$can_build_shared])
2276
2277AC_MSG_CHECKING([whether to build shared libraries])
2278test "$can_build_shared" = "no" && enable_shared=no
2279
2280# On AIX, shared libraries and static libraries use the same namespace, and
2281# are all built from PIC.
2282case "$host_os" in
2283aix3*)
2284  test "$enable_shared" = yes && enable_static=no
2285  if test -n "$RANLIB"; then
2286    archive_cmds="$archive_cmds~\$RANLIB \$lib"
2287    postinstall_cmds='$RANLIB $lib'
2288  fi
2289  ;;
2290
2291aix4*)
2292  if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
2293    test "$enable_shared" = yes && enable_static=no
2294  fi
2295  ;;
2296esac
2297AC_MSG_RESULT([$enable_shared])
2298
2299AC_MSG_CHECKING([whether to build static libraries])
2300# Make sure either enable_shared or enable_static is yes.
2301test "$enable_shared" = yes || enable_static=yes
2302AC_MSG_RESULT([$enable_static])
2303
2304AC_LIBTOOL_CONFIG($1)
2305
2306AC_LANG_POP
2307CC="$lt_save_CC"
2308])# AC_LIBTOOL_LANG_C_CONFIG
2309
2310
2311# AC_LIBTOOL_LANG_CXX_CONFIG
2312# --------------------------
2313# Ensure that the configuration vars for the C compiler are
2314# suitably defined.  Those variables are subsequently used by
2315# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
2316AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG], [_LT_AC_LANG_CXX_CONFIG(CXX)])
2317AC_DEFUN([_LT_AC_LANG_CXX_CONFIG],
2318[AC_LANG_PUSH(C++)
2319AC_REQUIRE([AC_PROG_CXX])
2320AC_REQUIRE([AC_PROG_CXXCPP])
2321
2322_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
2323_LT_AC_TAGVAR(allow_undefined_flag, $1)=
2324_LT_AC_TAGVAR(always_export_symbols, $1)=no
2325_LT_AC_TAGVAR(archive_expsym_cmds, $1)=
2326_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=
2327_LT_AC_TAGVAR(hardcode_direct, $1)=no
2328_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
2329_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
2330_LT_AC_TAGVAR(hardcode_minus_L, $1)=no
2331_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown
2332_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
2333_LT_AC_TAGVAR(no_undefined_flag, $1)=
2334_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
2335
2336# Dependencies to place before and after the object being linked:
2337_LT_AC_TAGVAR(predep_objects, $1)=
2338_LT_AC_TAGVAR(postdep_objects, $1)=
2339_LT_AC_TAGVAR(predeps, $1)=
2340_LT_AC_TAGVAR(postdeps, $1)=
2341_LT_AC_TAGVAR(compiler_lib_search_path, $1)=
2342
2343# Source file extension for C test sources.
2344ac_ext=cc
2345
2346# Object file extension for compiled C test sources.
2347objext=o
2348_LT_AC_TAGVAR(objext, $1)=$objext
2349
2350# Code to be used in simple compile tests
2351lt_simple_compile_test_code="int some_variable = 0;"
2352
2353# Code to be used in simple link tests
2354lt_simple_link_test_code='int main(int char *[]) { return(0); }'
2355
2356# ltmain only uses $CC for tagged configurations so make sure $CC is set.
2357_LT_AC_SYS_COMPILER
2358
2359# Allow CC to be a program name with arguments.
2360lt_save_CC="$CC"
2361CC=${CXX-"c++"}
2362set dummy $CC
2363compiler="[$]2"
2364_LT_AC_TAGVAR(compiler, $1)=$CC
2365cc_basename=`$echo X"$compiler" | $Xsed -e 's%^.*/%%'`
2366
2367# We don't want -fno-exception wen compiling C++ code, so set the
2368# no_builtin_flag separately
2369if test "$GXX" = yes; then
2370  _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
2371else
2372  _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
2373fi
2374
2375if test "$GXX" = yes; then
2376  # Set up default GNU C++ configuration
2377
2378  # Check if GNU C++ uses GNU ld as the underlying linker, since the
2379  # archiving commands below assume that GNU ld is being used.
2380  if eval "`$CC -print-prog-name=ld` --version 2>&1" | \
2381      egrep 'GNU ld' > /dev/null; then
2382    with_gnu_ld=yes
2383
2384    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
2385    _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
2386
2387    _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
2388    _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
2389
2390    # If archive_cmds runs LD, not CC, wlarc should be empty
2391    # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
2392    #     investigate it a little bit more. (MM)
2393    wlarc='${wl}'
2394
2395    # ancient GNU ld didn't support --whole-archive et. al.
2396    if eval "`$CC -print-prog-name=ld` --help 2>&1" | \
2397	egrep 'no-whole-archive' > /dev/null; then
2398      _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
2399    else
2400      _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
2401    fi
2402  else
2403    with_gnu_ld=no
2404    wlarc=
2405
2406    # A generic and very simple default shared library creation
2407    # command for GNU C++ for the case where it uses the native
2408    # linker, instead of GNU ld.  If possible, this setting should
2409    # overridden to take advantage of the native linker features on
2410    # the platform it is being used on.
2411    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
2412  fi
2413
2414  # Commands to make compiler produce verbose output that lists
2415  # what "hidden" libraries, object files and flags are used when
2416  # linking a shared library.
2417  output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | egrep "\-L"'
2418
2419else
2420  GXX=no
2421  with_gnu_ld=no
2422  wlarc=
2423fi
2424
2425# PORTME: fill in a description of your system's C++ link characteristics
2426AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
2427_LT_AC_TAGVAR(ld_shlibs, $1)=yes
2428case $host_os in
2429  aix3*)
2430    # FIXME: insert proper C++ library support
2431    _LT_AC_TAGVAR(ld_shlibs, $1)=no
2432    ;;
2433  aix4* | aix5*)
2434    if test "$host_cpu" = ia64; then
2435      # On IA64, the linker does run time linking by default, so we don't
2436      # have to do anything special.
2437      aix_use_runtimelinking=no
2438      exp_sym_flag='-Bexport'
2439      no_entry_flag=""
2440    else
2441      aix_use_runtimelinking=no
2442
2443      # Test if we are trying to use run time linking or normal
2444      # AIX style linking. If -brtl is somewhere in LDFLAGS, we
2445      # need to do runtime linking.
2446      case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
2447	for ld_flag in $LDFLAGS; do
2448	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
2449	    aix_use_runtimelinking=yes
2450	    break
2451	  fi
2452	done
2453      esac
2454
2455      exp_sym_flag='-bexport'
2456      no_entry_flag='-bnoentry'
2457    fi
2458
2459    # When large executables or shared objects are built, AIX ld can
2460    # have problems creating the table of contents.  If linking a library
2461    # or program results in "error TOC overflow" add -mminimal-toc to
2462    # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
2463    # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
2464
2465    _LT_AC_TAGVAR(archive_cmds, $1)=''
2466    _LT_AC_TAGVAR(hardcode_direct, $1)=yes
2467    _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
2468    _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
2469
2470    if test "$GXX" = yes; then
2471      case $host_os in aix4.[012]|aix4.[012].*)
2472      # We only want to do this on AIX 4.2 and lower, the check
2473      # below for broken collect2 doesn't work under 4.3+
2474	collect2name=`${CC} -print-prog-name=collect2`
2475	if test -f "$collect2name" && \
2476	   strings "$collect2name" | grep resolve_lib_name >/dev/null
2477	then
2478	  # We have reworked collect2
2479	  _LT_AC_TAGVAR(hardcode_direct, $1)=yes
2480	else
2481	  # We have old collect2
2482	  _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
2483	  # It fails to find uninstalled libraries when the uninstalled
2484	  # path is not listed in the libpath.  Setting hardcode_minus_L
2485	  # to unsupported forces relinking
2486	  _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
2487	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
2488	  _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
2489	fi
2490      esac
2491      shared_flag='-shared'
2492    else
2493      # not using gcc
2494      if test "$host_cpu" = ia64; then
2495	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
2496	# chokes on -Wl,-G. The following line is correct:
2497	shared_flag='-G'
2498      else
2499	if test "$aix_use_runtimelinking" = yes; then
2500	  shared_flag='${wl}-G'
2501	else
2502	  shared_flag='${wl}-bM:SRE'
2503	fi
2504      fi
2505    fi
2506
2507    # It seems that -bexpall does not export symbols beginning with
2508    # underscore (_), so it is better to generate a list of symbols to export.
2509    _LT_AC_TAGVAR(always_export_symbols, $1)=yes
2510    if test "$aix_use_runtimelinking" = yes; then
2511      # Warning - without using the other runtime loading flags (-brtl),
2512      # -berok will link without error, but may produce a broken library.
2513      _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok'
2514      # Determine the default libpath from the value encoded in an empty executable.
2515      _LT_AC_SYS_LIBPATH_AIX
2516      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
2517
2518      _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$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"
2519     else
2520      if test "$host_cpu" = ia64; then
2521	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
2522	_LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
2523	_LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
2524      else
2525	# Determine the default libpath from the value encoded in an empty executable.
2526	_LT_AC_SYS_LIBPATH_AIX
2527	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
2528	# Warning - without using the other run time loading flags,
2529	# -berok will link without error, but may produce a broken library.
2530	_LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
2531	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
2532	# -bexpall does not export symbols beginning with underscore (_)
2533	_LT_AC_TAGVAR(always_export_symbols, $1)=yes
2534	# Exported symbols can be pulled into shared objects from archives
2535	_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' '
2536	_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
2537	# This is similar to how AIX traditionally builds it's shared libraries.
2538	_LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
2539      fi
2540    fi
2541    ;;
2542  chorus*)
2543    case $cc_basename in
2544      *)
2545	# FIXME: insert proper C++ library support
2546	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2547	;;
2548    esac
2549    ;;
2550  dgux*)
2551    case $cc_basename in
2552      ec++)
2553	# FIXME: insert proper C++ library support
2554	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2555	;;
2556      ghcx)
2557	# Green Hills C++ Compiler
2558	# FIXME: insert proper C++ library support
2559	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2560	;;
2561      *)
2562	# FIXME: insert proper C++ library support
2563	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2564	;;
2565    esac
2566    ;;
2567  freebsd[12]*)
2568    # C++ shared libraries reported to be fairly broken before switch to ELF
2569    _LT_AC_TAGVAR(ld_shlibs, $1)=no
2570    ;;
2571  freebsd-elf*)
2572    _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
2573    ;;
2574  freebsd*)
2575    # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
2576    # conventions
2577    _LT_AC_TAGVAR(ld_shlibs, $1)=yes
2578    ;;
2579  gnu*)
2580    ;;
2581  hpux*)
2582    if test $with_gnu_ld = no; then
2583      if test "$host_cpu" = ia64; then
2584	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
2585      else
2586	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
2587	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
2588	_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
2589      fi
2590    fi
2591    if test "$host_cpu" = ia64; then
2592      _LT_AC_TAGVAR(hardcode_direct, $1)=no
2593      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
2594    else
2595      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
2596    fi
2597    _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
2598					    # but as the default
2599					    # location of the library.
2600
2601    case $cc_basename in
2602      CC)
2603	# FIXME: insert proper C++ library support
2604	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2605	;;
2606      aCC)
2607	case $host_os in
2608	hpux9*)
2609	  _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
2610	  ;;
2611	*)
2612	  if test "$host_cpu" = ia64; then
2613	    _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
2614	  else
2615	    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
2616	  fi
2617	  ;;
2618	esac
2619	# Commands to make compiler produce verbose output that lists
2620	# what "hidden" libraries, object files and flags are used when
2621	# linking a shared library.
2622	#
2623	# There doesn't appear to be a way to prevent this compiler from
2624	# explicitly linking system object files so we need to strip them
2625	# from the output so that they don't get included in the library
2626	# dependencies.
2627	output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | egrep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
2628	;;
2629      *)
2630	if test "$GXX" = yes; then
2631	  if test $with_gnu_ld = no; then
2632	    case $host_os in
2633	    hpux9*)
2634	      _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
2635	      ;;
2636	    *)
2637	      if test "$host_cpu" = ia64; then
2638		_LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $linker_flags $libobjs $deplibs'
2639	      else
2640		_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
2641	      fi
2642	      ;;
2643	    esac
2644	  fi
2645	else
2646	  # FIXME: insert proper C++ library support
2647	  _LT_AC_TAGVAR(ld_shlibs, $1)=no
2648	fi
2649	;;
2650    esac
2651    ;;
2652  irix5* | irix6*)
2653    case $cc_basename in
2654      CC)
2655	# SGI C++
2656	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
2657
2658	# Archives containing C++ object files must be created using
2659	# "CC -ar", where "CC" is the IRIX C++ compiler.  This is
2660	# necessary to make sure instantiated templates are included
2661	# in the archive.
2662	_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
2663	;;
2664      *)
2665	if test "$GXX" = yes; then
2666	  if test "$with_gnu_ld" = no; then
2667	    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
2668	  else
2669	    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -o $lib'
2670	  fi
2671	fi
2672	_LT_AC_TAGVAR(link_all_deplibs, $1)=yes
2673	;;
2674    esac
2675    _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
2676    _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
2677    ;;
2678  linux*)
2679    case $cc_basename in
2680      KCC)
2681	# Kuck and Associates, Inc. (KAI) C++ Compiler
2682
2683	# KCC will only create a shared library if the output file
2684	# ends with ".so" (or ".sl" for HP-UX), so rename the library
2685	# to its proper name (with version) after linking.
2686	_LT_AC_TAGVAR(archive_cmds, $1)='templib=`echo $lib | sed -e "s/\.so\..*/\.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
2687	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='templib=`echo $lib | sed -e "s/\.so\..*/\.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
2688
2689	# Commands to make compiler produce verbose output that lists
2690	# what "hidden" libraries, object files and flags are used when
2691	# linking a shared library.
2692	#
2693	# There doesn't appear to be a way to prevent this compiler from
2694	# explicitly linking system object files so we need to strip them
2695	# from the output so that they don't get included in the library
2696	# dependencies.
2697	output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest.so 2>&1 | egrep "ld"`; rm -f libconftest.so; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
2698
2699	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath,$libdir'
2700	_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
2701
2702	# Archives containing C++ object files must be created using
2703	# "CC -Bstatic", where "CC" is the KAI C++ compiler.
2704	_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
2705	;;
2706      cxx)
2707	# Compaq C++
2708	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
2709	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname  -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
2710
2711	runpath_var=LD_RUN_PATH
2712	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
2713	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
2714
2715	# Commands to make compiler produce verbose output that lists
2716	# what "hidden" libraries, object files and flags are used when
2717	# linking a shared library.
2718	#
2719	# There doesn't appear to be a way to prevent this compiler from
2720	# explicitly linking system object files so we need to strip them
2721	# from the output so that they don't get included in the library
2722	# dependencies.
2723	output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | sed "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
2724	;;
2725    esac
2726    ;;
2727  lynxos*)
2728    # FIXME: insert proper C++ library support
2729    _LT_AC_TAGVAR(ld_shlibs, $1)=no
2730    ;;
2731  m88k*)
2732    # FIXME: insert proper C++ library support
2733    _LT_AC_TAGVAR(ld_shlibs, $1)=no
2734    ;;
2735  mvs*)
2736    case $cc_basename in
2737      cxx)
2738	# FIXME: insert proper C++ library support
2739	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2740	;;
2741      *)
2742	# FIXME: insert proper C++ library support
2743	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2744	;;
2745    esac
2746    ;;
2747  netbsd*)
2748    # NetBSD uses g++ - do we need to do anything?
2749    ;;
2750  osf3*)
2751    case $cc_basename in
2752      KCC)
2753	# Kuck and Associates, Inc. (KAI) C++ Compiler
2754
2755	# KCC will only create a shared library if the output file
2756	# ends with ".so" (or ".sl" for HP-UX), so rename the library
2757	# to its proper name (with version) after linking.
2758	_LT_AC_TAGVAR(archive_cmds, $1)='templib=`echo $lib | sed -e "s/\.so\..*/\.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
2759
2760	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
2761	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
2762
2763	# Archives containing C++ object files must be created using
2764	# "CC -Bstatic", where "CC" is the KAI C++ compiler.
2765	_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
2766
2767	;;
2768      RCC)
2769	# Rational C++ 2.4.1
2770	# FIXME: insert proper C++ library support
2771	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2772	;;
2773      cxx)
2774	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
2775	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && echo ${wl}-set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
2776
2777	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
2778	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
2779
2780	# Commands to make compiler produce verbose output that lists
2781	# what "hidden" libraries, object files and flags are used when
2782	# linking a shared library.
2783	#
2784	# There doesn't appear to be a way to prevent this compiler from
2785	# explicitly linking system object files so we need to strip them
2786	# from the output so that they don't get included in the library
2787	# dependencies.
2788	output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | sed "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
2789	;;
2790      *)
2791	if test "$GXX" = yes && test "$with_gnu_ld" = no; then
2792	  _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
2793	  _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
2794
2795	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
2796	  _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
2797
2798	  # Commands to make compiler produce verbose output that lists
2799	  # what "hidden" libraries, object files and flags are used when
2800	  # linking a shared library.
2801	  output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | egrep "\-L"'
2802
2803	else
2804	  # FIXME: insert proper C++ library support
2805	  _LT_AC_TAGVAR(ld_shlibs, $1)=no
2806	fi
2807	;;
2808    esac
2809    ;;
2810  osf4* | osf5*)
2811    case $cc_basename in
2812      KCC)
2813	# Kuck and Associates, Inc. (KAI) C++ Compiler
2814
2815	# KCC will only create a shared library if the output file
2816	# ends with ".so" (or ".sl" for HP-UX), so rename the library
2817	# to its proper name (with version) after linking.
2818	_LT_AC_TAGVAR(archive_cmds, $1)='templib=`echo $lib | sed -e "s/\.so\..*/\.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
2819
2820	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
2821	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
2822
2823	# Archives containing C++ object files must be created using
2824	# the KAI C++ compiler.
2825	_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs'
2826	;;
2827      RCC)
2828	# Rational C++ 2.4.1
2829	# FIXME: insert proper C++ library support
2830	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2831	;;
2832      cxx)
2833	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
2834	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
2835	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done~
2836	  echo "-hidden">> $lib.exp~
2837	  $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname -Wl,-input -Wl,$lib.exp  `test -n "$verstring" && echo -set_version	$verstring` -update_registry $objdir/so_locations -o $lib~
2838	  $rm $lib.exp'
2839
2840	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
2841	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
2842
2843	# Commands to make compiler produce verbose output that lists
2844	# what "hidden" libraries, object files and flags are used when
2845	# linking a shared library.
2846	#
2847	# There doesn't appear to be a way to prevent this compiler from
2848	# explicitly linking system object files so we need to strip them
2849	# from the output so that they don't get included in the library
2850	# dependencies.
2851	output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | sed "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
2852	;;
2853      *)
2854	if test "$GXX" = yes && test "$with_gnu_ld" = no; then
2855	  _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
2856	 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
2857
2858	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
2859	  _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
2860
2861	  # Commands to make compiler produce verbose output that lists
2862	  # what "hidden" libraries, object files and flags are used when
2863	  # linking a shared library.
2864	  output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | egrep "\-L"'
2865
2866	else
2867	  # FIXME: insert proper C++ library support
2868	  _LT_AC_TAGVAR(ld_shlibs, $1)=no
2869	fi
2870	;;
2871    esac
2872    ;;
2873  psos*)
2874    # FIXME: insert proper C++ library support
2875    _LT_AC_TAGVAR(ld_shlibs, $1)=no
2876    ;;
2877  sco*)
2878    _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
2879    case $cc_basename in
2880      CC)
2881	# FIXME: insert proper C++ library support
2882	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2883	;;
2884      *)
2885	# FIXME: insert proper C++ library support
2886	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2887	;;
2888    esac
2889    ;;
2890  sunos4*)
2891    case $cc_basename in
2892      CC)
2893	# Sun C++ 4.x
2894	# FIXME: insert proper C++ library support
2895	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2896	;;
2897      lcc)
2898	# Lucid
2899	# FIXME: insert proper C++ library support
2900	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2901	;;
2902      *)
2903	# FIXME: insert proper C++ library support
2904	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2905	;;
2906    esac
2907    ;;
2908  solaris*)
2909    case $cc_basename in
2910      CC)
2911	# Sun C++ 4.2, 5.x and Centerline C++
2912	_LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs'
2913	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -nolib -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
2914	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
2915	$CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
2916
2917	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
2918	_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
2919	case $host_os in
2920	  solaris2.[0-5] | solaris2.[0-5].*) ;;
2921	  *)
2922	    # The C++ compiler is used as linker so we must use $wl
2923	    # flag to pass the commands to the underlying system
2924	    # linker.
2925	    # Supported since Solaris 2.6 (maybe 2.5.1?)
2926	    _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
2927	    ;;
2928	esac
2929	_LT_AC_TAGVAR(link_all_deplibs, $1)=yes
2930
2931	# Commands to make compiler produce verbose output that lists
2932	# what "hidden" libraries, object files and flags are used when
2933	# linking a shared library.
2934	#
2935	# There doesn't appear to be a way to prevent this compiler from
2936	# explicitly linking system object files so we need to strip them
2937	# from the output so that they don't get included in the library
2938	# dependencies.
2939	output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v conftest.$objext 2>&1 | egrep "\-R|\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
2940
2941	# Archives containing C++ object files must be created using
2942	# "CC -xar", where "CC" is the Sun C++ compiler.  This is
2943	# necessary to make sure instantiated templates are included
2944	# in the archive.
2945	_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
2946	;;
2947      gcx)
2948	# Green Hills C++ Compiler
2949	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
2950
2951	# The C++ compiler must be used to create the archive.
2952	_LT_AC_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
2953	;;
2954      *)
2955	# GNU C++ compiler with Solaris linker
2956	if test "$GXX" = yes && test "$with_gnu_ld" = no; then
2957	  _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
2958	  if $CC --version | egrep -v '^2\.7' > /dev/null; then
2959	    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $linker_flags ${wl}-h $wl$soname -o $lib'
2960	    _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
2961		$CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags~$rm $lib.exp'
2962
2963	    # Commands to make compiler produce verbose output that lists
2964	    # what "hidden" libraries, object files and flags are used when
2965	    # linking a shared library.
2966	    output_verbose_link_cmd="$CC -shared $CFLAGS -v conftest.$objext 2>&1 | egrep \"\-L\""
2967	  else
2968	    # g++ 2.7 appears to require `-G' NOT `-shared' on this
2969	    # platform.
2970	    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $linker_flags ${wl}-h $wl$soname -o $lib'
2971	    _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
2972		$CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags~$rm $lib.exp'
2973
2974	    # Commands to make compiler produce verbose output that lists
2975	    # what "hidden" libraries, object files and flags are used when
2976	    # linking a shared library.
2977	    output_verbose_link_cmd="$CC -G $CFLAGS -v conftest.$objext 2>&1 | egrep \"\-L\""
2978	  fi
2979
2980	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
2981	fi
2982	;;
2983    esac
2984    ;;
2985  sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[[78]]* | unixware7*)
2986    _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
2987    ;;
2988  tandem*)
2989    case $cc_basename in
2990      NCC)
2991	# NonStop-UX NCC 3.20
2992	# FIXME: insert proper C++ library support
2993	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2994	;;
2995      *)
2996	# FIXME: insert proper C++ library support
2997	_LT_AC_TAGVAR(ld_shlibs, $1)=no
2998	;;
2999    esac
3000    ;;
3001  vxworks*)
3002    # FIXME: insert proper C++ library support
3003    _LT_AC_TAGVAR(ld_shlibs, $1)=no
3004    ;;
3005  *)
3006    # FIXME: insert proper C++ library support
3007    _LT_AC_TAGVAR(ld_shlibs, $1)=no
3008    ;;
3009esac
3010AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)])
3011test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
3012
3013# Figure out "hidden" C++ library dependencies from verbose
3014# compiler output whening linking a shared library.
3015cat > conftest.$ac_ext <<EOF
3016class Foo
3017{
3018public:
3019  Foo (void) { a = 0; }
3020private:
3021  int a;
3022};
3023EOF
3024
3025
3026if AC_TRY_EVAL(ac_compile); then
3027  # Parse the compiler output and extract the necessary
3028  # objects, libraries and library flags.
3029
3030  # Sentinel used to keep track of whether or not we are before
3031  # the conftest object file.
3032  pre_test_object_deps_done=no
3033
3034  # The `*' in the case matches for architectures that use `case' in
3035  # $output_verbose_cmd can trigger glob expansion during the loop
3036  # eval without this substitution.
3037  output_verbose_link_cmd="`$echo \"X$output_verbose_link_cmd\" | $Xsed -e \"$no_glob_subst\"`"
3038
3039  for p in `eval $output_verbose_link_cmd`; do
3040    case $p in
3041
3042    -L* | -R* | -l*)
3043       # Some compilers place space between "-{L,R}" and the path.
3044       # Remove the space.
3045       if test $p = "-L" \
3046	  || test $p = "-R"; then
3047	 prev=$p
3048	 continue
3049       else
3050	 prev=
3051       fi
3052
3053       if test "$pre_test_object_deps_done" = no; then
3054	 case $p in
3055	 -L* | -R*)
3056	   # Internal compiler library paths should come after those
3057	   # provided the user.  The postdeps already come after the
3058	   # user supplied libs so there is no need to process them.
3059	   if test -z "$_LT_AC_TAGVAR(compiler_lib_search_path, $1)"; then
3060	     _LT_AC_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
3061	   else
3062	     _LT_AC_TAGVAR(compiler_lib_search_path, $1)="${_LT_AC_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
3063	   fi
3064	   ;;
3065	 # The "-l" case would never come before the object being
3066	 # linked, so don't bother handling this case.
3067	 esac
3068       else
3069	 if test -z "$_LT_AC_TAGVAR(postdeps, $1)"; then
3070	   _LT_AC_TAGVAR(postdeps, $1)="${prev}${p}"
3071	 else
3072	   _LT_AC_TAGVAR(postdeps, $1)="${_LT_AC_TAGVAR(postdeps, $1)} ${prev}${p}"
3073	 fi
3074       fi
3075       ;;
3076
3077    *.$objext)
3078       # This assumes that the test object file only shows up
3079       # once in the compiler output.
3080       if test "$p" = "conftest.$objext"; then
3081	 pre_test_object_deps_done=yes
3082	 continue
3083       fi
3084
3085       if test "$pre_test_object_deps_done" = no; then
3086	 if test -z "$_LT_AC_TAGVAR(predep_objects, $1)"; then
3087	   _LT_AC_TAGVAR(predep_objects, $1)="$p"
3088	 else
3089	   _LT_AC_TAGVAR(predep_objects, $1)="$_LT_AC_TAGVAR(predep_objects, $1) $p"
3090	 fi
3091       else
3092	 if test -z "$_LT_AC_TAGVAR(postdep_objects, $1)"; then
3093	   _LT_AC_TAGVAR(postdep_objects, $1)="$p"
3094	 else
3095	   _LT_AC_TAGVAR(postdep_objects, $1)="$_LT_AC_TAGVAR(postdep_objects, $1) $p"
3096	 fi
3097       fi
3098       ;;
3099
3100    *) ;; # Ignore the rest.
3101
3102    esac
3103  done
3104
3105  # Clean up.
3106  rm -f a.out
3107else
3108  echo "libtool.m4: error: problem compiling C++ test program"
3109fi
3110
3111$rm -f confest.$objext
3112
3113case " $_LT_AC_TAGVAR(postdeps, $1) " in
3114*" -lc "*) _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no ;;
3115*) _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes ;;
3116esac
3117
3118_LT_AC_TAGVAR(GCC, $1)="$GXX"
3119_LT_AC_TAGVAR(LD, $1)="$LD"
3120
3121## CAVEAT EMPTOR:
3122## There is no encapsulation within the following macros, do not change
3123## the running order or otherwise move them around unless you know exactly
3124## what you are doing...
3125AC_LIBTOOL_PROG_COMPILER_PIC($1)
3126AC_LIBTOOL_PROG_CC_C_O($1)
3127AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
3128AC_LIBTOOL_PROG_LD_SHLIBS($1)
3129AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
3130AC_LIBTOOL_SYS_LIB_STRIP
3131AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
3132AC_LIBTOOL_DLOPEN_SELF($1)
3133
3134AC_LIBTOOL_CONFIG($1)
3135
3136AC_LANG_POP
3137CC="$lt_save_CC"
3138])# AC_LIBTOOL_LANG_CXX_CONFIG
3139
3140
3141# AC_LIBTOOL_LANG_GCJ_CONFIG
3142# --------------------------
3143# Ensure that the configuration vars for the C compiler are
3144# suitably defined.  Those variables are subsequently used by
3145# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
3146AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG], [_LT_AC_LANG_GCJ_CONFIG(GCJ)])
3147AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG],
3148[AC_LANG_SAVE
3149
3150# Source file extension for C test sources.
3151ac_ext=java
3152
3153# Object file extension for compiled C test sources.
3154objext=o
3155_LT_AC_TAGVAR(objext, $1)=$objext
3156
3157# Code to be used in simple compile tests
3158lt_simple_compile_test_code="class foo {}"
3159
3160# Code to be used in simple link tests
3161lt_simple_link_test_code='public class conftest { public static void main(String[] argv) {}; }'
3162
3163# ltmain only uses $CC for tagged configurations so make sure $CC is set.
3164_LT_AC_SYS_COMPILER
3165
3166# Allow CC to be a program name with arguments.
3167lt_save_CC="$CC"
3168CC=${GCJ-"gcj"}
3169set dummy $CC
3170compiler="[$]2"
3171_LT_AC_TAGVAR(compiler, $1)=$CC
3172
3173# GCJ did not exist at the time GCC didn't implicitly link libc in.
3174_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3175
3176## CAVEAT EMPTOR:
3177## There is no encapsulation within the following macros, do not change
3178## the running order or otherwise move them around unless you know exactly
3179## what you are doing...
3180AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1)
3181AC_LIBTOOL_PROG_COMPILER_PIC($1)
3182AC_LIBTOOL_PROG_CC_C_O($1)
3183AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
3184AC_LIBTOOL_PROG_LD_SHLIBS($1)
3185AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
3186AC_LIBTOOL_SYS_LIB_STRIP
3187AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
3188AC_LIBTOOL_DLOPEN_SELF($1)
3189
3190AC_LIBTOOL_CONFIG($1)
3191
3192AC_LANG_RESTORE
3193CC="$lt_save_CC"
3194])# AC_LIBTOOL_LANG_GCJ_CONFIG
3195
3196
3197# AC_LIBTOOL_LANG_RC_CONFIG
3198# --------------------------
3199# Ensure that the configuration vars for the Windows resource compiler are
3200# suitably defined.  Those variables are subsequently used by
3201# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
3202AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG], [_LT_AC_LANG_RC_CONFIG(RC)])
3203AC_DEFUN([_LT_AC_LANG_RC_CONFIG],
3204[AC_LANG_SAVE
3205
3206# Source file extension for RC test sources.
3207ac_ext=rc
3208
3209# Object file extension for compiled RC test sources.
3210objext=o
3211_LT_AC_TAGVAR(objext, $1)=$objext
3212
3213# Code to be used in simple compile tests
3214lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
3215
3216# Code to be used in simple link tests
3217lt_simple_link_test_code="$lt_simple_compile_test_code"
3218
3219# ltmain only uses $CC for tagged configurations so make sure $CC is set.
3220_LT_AC_SYS_COMPILER
3221
3222# Allow CC to be a program name with arguments.
3223lt_save_CC="$CC"
3224CC=${RC-"windres"}
3225set dummy $CC
3226compiler="[$]2"
3227_LT_AC_TAGVAR(compiler, $1)=$CC
3228_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
3229
3230AC_LIBTOOL_CONFIG($1)
3231
3232AC_LANG_RESTORE
3233CC="$lt_save_CC"
3234])# AC_LIBTOOL_LANG_RC_CONFIG
3235
3236
3237# AC_LIBTOOL_CONFIG([TAGNAME])
3238# ----------------------------
3239# If TAGNAME is not passed, then create an initial libtool script
3240# with a default configuration from the untagged config vars.  Otherwise
3241# add code to config.status for appending the configuration named by
3242# TAGNAME from the matching tagged config vars.
3243AC_DEFUN([AC_LIBTOOL_CONFIG],
3244[# The else clause should only fire when bootstrapping the
3245# libtool distribution, otherwise you forgot to ship ltmain.sh
3246# with your package, and you will get complaints that there are
3247# no rules to generate ltmain.sh.
3248if test -f "$ltmain"; then
3249  # Now quote all the things that may contain metacharacters while being
3250  # careful not to overquote the AC_SUBSTed values.  We take copies of the
3251  # variables and quote the copies for generation of the libtool script.
3252  for var in echo old_CC old_CFLAGS AR AR_FLAGS RANLIB LN_S LTCC NM SED SHELL \
3253    libname_spec library_names_spec soname_spec extract_expsyms_cmds \
3254    old_striplib striplib file_magic_cmd finish_cmds finish_eval \
3255    deplibs_check_method reload_flag reload_cmds need_locks \
3256    lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl \
3257    lt_cv_sys_global_symbol_to_c_name_address \
3258    sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
3259    old_postinstall_cmds old_postuninstall_cmds \
3260    _LT_AC_TAGVAR(compiler, $1) \
3261    _LT_AC_TAGVAR(CC, $1) \
3262    _LT_AC_TAGVAR(LD, $1) \
3263    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1) \
3264    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1) \
3265    _LT_AC_TAGVAR(lt_prog_compiler_static, $1) \
3266    _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) \
3267    _LT_AC_TAGVAR(export_dynamic_flag_spec, $1) \
3268    _LT_AC_TAGVAR(thread_safe_flag_spec, $1) \
3269    _LT_AC_TAGVAR(whole_archive_flag_spec, $1) \
3270    _LT_AC_TAGVAR(old_archive_cmds, $1) \
3271    _LT_AC_TAGVAR(old_archive_from_new_cmds, $1) \
3272    _LT_AC_TAGVAR(predep_objects, $1) \
3273    _LT_AC_TAGVAR(postdep_objects, $1) \
3274    _LT_AC_TAGVAR(predeps, $1) \
3275    _LT_AC_TAGVAR(postdeps, $1) \
3276    _LT_AC_TAGVAR(compiler_lib_search_path, $1) \
3277    _LT_AC_TAGVAR(archive_cmds, $1) \
3278    _LT_AC_TAGVAR(archive_expsym_cmds, $1) \
3279    _LT_AC_TAGVAR(postinstall_cmds, $1) \
3280    _LT_AC_TAGVAR(postuninstall_cmds, $1) \
3281    _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) \
3282    _LT_AC_TAGVAR(allow_undefined_flag, $1) \
3283    _LT_AC_TAGVAR(no_undefined_flag, $1) \
3284    _LT_AC_TAGVAR(export_symbols_cmds, $1) \
3285    _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) \
3286    _LT_AC_TAGVAR(hardcode_libdir_separator, $1) \
3287    _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1) \
3288    _LT_AC_TAGVAR(exclude_expsyms, $1) \
3289    _LT_AC_TAGVAR(include_expsyms, $1); do
3290
3291    case $var in
3292    _LT_AC_TAGVAR(old_archive_cmds, $1) | \
3293    _LT_AC_TAGVAR(old_archive_from_new_cmds, $1) | \
3294    _LT_AC_TAGVAR(archive_cmds, $1) | \
3295    _LT_AC_TAGVAR(archive_expsym_cmds, $1) | \
3296    _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) | \
3297    _LT_AC_TAGVAR(export_symbols_cmds, $1) | \
3298    extract_expsyms_cmds | reload_cmds | finish_cmds | \
3299    postinstall_cmds | postuninstall_cmds | \
3300    old_postinstall_cmds | old_postuninstall_cmds | \
3301    sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
3302      # Double-quote double-evaled strings.
3303      eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
3304      ;;
3305    *)
3306      eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
3307      ;;
3308    esac
3309  done
3310
3311  case $lt_echo in
3312  *'\[$]0 --fallback-echo"')
3313    lt_echo=`$echo "X$lt_echo" | $Xsed -e 's/\\\\\\\[$]0 --fallback-echo"[$]/[$]0 --fallback-echo"/'`
3314    ;;
3315  esac
3316
3317ifelse([$1], [],
3318  [cfgfile="${ofile}T"
3319  trap "$rm \"$cfgfile\"; exit 1" 1 2 15
3320  $rm -f "$cfgfile"
3321  AC_MSG_NOTICE([creating $ofile])],
3322  [cfgfile="$ofile"])
3323
3324  cat <<__EOF__ >> "$cfgfile"
3325ifelse([$1], [],
3326[#! $SHELL
3327
3328# `$echo "$cfgfile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
3329# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
3330# NOTE: Changes made to this file will be lost: look at ltmain.sh.
3331#
3332# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
3333# Free Software Foundation, Inc.
3334#
3335# This file is part of GNU Libtool:
3336# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
3337#
3338# This program is free software; you can redistribute it and/or modify
3339# it under the terms of the GNU General Public License as published by
3340# the Free Software Foundation; either version 2 of the License, or
3341# (at your option) any later version.
3342#
3343# This program is distributed in the hope that it will be useful, but
3344# WITHOUT ANY WARRANTY; without even the implied warranty of
3345# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
3346# General Public License for more details.
3347#
3348# You should have received a copy of the GNU General Public License
3349# along with this program; if not, write to the Free Software
3350# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
3351#
3352# As a special exception to the GNU General Public License, if you
3353# distribute this file as part of a program that contains a
3354# configuration script generated by Autoconf, you may include it under
3355# the same distribution terms that you use for the rest of that program.
3356
3357# Sed that helps us avoid accidentally triggering echo(1) options like -n.
3358Xsed="sed -e s/^X//"
3359
3360# The HP-UX ksh and POSIX shell print the target directory to stdout
3361# if CDPATH is set.
3362if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
3363
3364# The names of the tagged configurations supported by this script.
3365available_tags=
3366
3367# ### BEGIN LIBTOOL CONFIG],
3368[# ### BEGIN LIBTOOL TAG CONFIG: $tagname])
3369
3370# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
3371
3372# Shell to use when invoking shell scripts.
3373SHELL=$lt_SHELL
3374
3375# Whether or not to build shared libraries.
3376build_libtool_libs=$enable_shared
3377
3378# Whether or not to build static libraries.
3379build_old_libs=$enable_static
3380
3381# Whether or not to add -lc for building shared libraries.
3382build_libtool_need_lc=$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)
3383
3384# Whether or not to optimize for fast installation.
3385fast_install=$enable_fast_install
3386
3387# The host system.
3388host_alias=$host_alias
3389host=$host
3390
3391# An echo program that does not interpret backslashes.
3392echo=$lt_echo
3393
3394# The archiver.
3395AR=$lt_AR
3396AR_FLAGS=$lt_AR_FLAGS
3397
3398# A C compiler.
3399LTCC=$lt_LTCC
3400
3401# A language-specific compiler.
3402CC=$lt_[]_LT_AC_TAGVAR(compiler, $1)
3403
3404# Is the compiler the GNU C compiler?
3405with_gcc=$_LT_AC_TAGVAR(GCC, $1)
3406
3407# The linker used to build libraries.
3408LD=$lt_[]_LT_AC_TAGVAR(LD, $1)
3409
3410# Whether we need hard or soft links.
3411LN_S=$lt_LN_S
3412
3413# A BSD-compatible nm program.
3414NM=$lt_NM
3415
3416# A sed program that does not truncate output.
3417SED=$lt_SED
3418
3419# A symbol stripping program
3420STRIP=$STRIP
3421
3422# Used to examine libraries when file_magic_cmd begins "file"
3423MAGIC_CMD=$MAGIC_CMD
3424
3425# Used on cygwin: DLL creation program.
3426DLLTOOL="$DLLTOOL"
3427
3428# Used on cygwin: object dumper.
3429OBJDUMP="$OBJDUMP"
3430
3431# Used on cygwin: assembler.
3432AS="$AS"
3433
3434# The name of the directory that contains temporary libtool files.
3435objdir=$objdir
3436
3437# How to create reloadable object files.
3438reload_flag=$lt_reload_flag
3439reload_cmds=$lt_reload_cmds
3440
3441# How to pass a linker flag through the compiler.
3442wl=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)
3443
3444# Object file suffix (normally "o").
3445objext="$ac_objext"
3446
3447# Old archive suffix (normally "a").
3448libext="$libext"
3449
3450# Executable file suffix (normally "").
3451exeext="$exeext"
3452
3453# Additional compiler flags for building library objects.
3454pic_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)
3455pic_mode=$pic_mode
3456
3457# What is the maximum length of a command?
3458max_cmd_len=$lt_cv_sys_max_cmd_len
3459
3460# Does compiler simultaneously support -c and -o options?
3461compiler_c_o=$lt_[]_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)
3462
3463# Must we lock files when doing compilation ?
3464need_locks=$lt_need_locks
3465
3466# Do we need the lib prefix for modules?
3467need_lib_prefix=$need_lib_prefix
3468
3469# Do we need a version for libraries?
3470need_version=$need_version
3471
3472# Whether dlopen is supported.
3473dlopen_support=$enable_dlopen
3474
3475# Whether dlopen of programs is supported.
3476dlopen_self=$enable_dlopen_self
3477
3478# Whether dlopen of statically linked programs is supported.
3479dlopen_self_static=$enable_dlopen_self_static
3480
3481# Compiler flag to prevent dynamic linking.
3482link_static_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_static, $1)
3483
3484# Compiler flag to turn off builtin functions.
3485no_builtin_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)
3486
3487# Compiler flag to allow reflexive dlopens.
3488export_dynamic_flag_spec=$lt_[]_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)
3489
3490# Compiler flag to generate shared objects directly from archives.
3491whole_archive_flag_spec=$lt_[]_LT_AC_TAGVAR(whole_archive_flag_spec, $1)
3492
3493# Compiler flag to generate thread-safe objects.
3494thread_safe_flag_spec=$lt_[]_LT_AC_TAGVAR(thread_safe_flag_spec, $1)
3495
3496# Library versioning type.
3497version_type=$version_type
3498
3499# Format of library name prefix.
3500libname_spec=$lt_libname_spec
3501
3502# List of archive names.  First name is the real one, the rest are links.
3503# The last name is the one that the linker finds with -lNAME.
3504library_names_spec=$lt_library_names_spec
3505
3506# The coded name of the library, if different from the real name.
3507soname_spec=$lt_soname_spec
3508
3509# Commands used to build and install an old-style archive.
3510RANLIB=$lt_RANLIB
3511old_archive_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_cmds, $1)
3512old_postinstall_cmds=$lt_old_postinstall_cmds
3513old_postuninstall_cmds=$lt_old_postuninstall_cmds
3514
3515# Create an old-style archive from a shared archive.
3516old_archive_from_new_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_new_cmds, $1)
3517
3518# Create a temporary old-style archive to link instead of a shared archive.
3519old_archive_from_expsyms_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)
3520
3521# Commands used to build and install a shared archive.
3522archive_cmds=$lt_[]_LT_AC_TAGVAR(archive_cmds, $1)
3523archive_expsym_cmds=$lt_[]_LT_AC_TAGVAR(archive_expsym_cmds, $1)
3524postinstall_cmds=$lt_postinstall_cmds
3525postuninstall_cmds=$lt_postuninstall_cmds
3526
3527# Commands to strip libraries.
3528old_striplib=$lt_old_striplib
3529striplib=$lt_striplib
3530
3531# Dependencies to place before the objects being linked to create a
3532# shared library.
3533predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1)
3534
3535# Dependencies to place after the objects being linked to create a
3536# shared library.
3537postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1)
3538
3539# Dependencies to place before the objects being linked to create a
3540# shared library.
3541predeps=$lt_[]_LT_AC_TAGVAR(predeps, $1)
3542
3543# Dependencies to place after the objects being linked to create a
3544# shared library.
3545postdeps=$lt_[]_LT_AC_TAGVAR(postdeps, $1)
3546
3547# The library search path used internally by the compiler when linking
3548# a shared library.
3549compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1)
3550
3551# Method to check whether dependent libraries are shared objects.
3552deplibs_check_method=$lt_deplibs_check_method
3553
3554# Command to use when deplibs_check_method == file_magic.
3555file_magic_cmd=$lt_file_magic_cmd
3556
3557# Flag that allows shared libraries with undefined symbols to be built.
3558allow_undefined_flag=$lt_[]_LT_AC_TAGVAR(allow_undefined_flag, $1)
3559
3560# Flag that forces no undefined symbols.
3561no_undefined_flag=$lt_[]_LT_AC_TAGVAR(no_undefined_flag, $1)
3562
3563# Commands used to finish a libtool library installation in a directory.
3564finish_cmds=$lt_finish_cmds
3565
3566# Same as above, but a single script fragment to be evaled but not shown.
3567finish_eval=$lt_finish_eval
3568
3569# Take the output of nm and produce a listing of raw symbols and C names.
3570global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe
3571
3572# Transform the output of nm in a proper C declaration
3573global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl
3574
3575# Transform the output of nm in a C name address pair
3576global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
3577
3578# This is the shared library runtime path variable.
3579runpath_var=$runpath_var
3580
3581# This is the shared library path variable.
3582shlibpath_var=$shlibpath_var
3583
3584# Is shlibpath searched before the hard-coded library search path?
3585shlibpath_overrides_runpath=$shlibpath_overrides_runpath
3586
3587# How to hardcode a shared library path into an executable.
3588hardcode_action=$_LT_AC_TAGVAR(hardcode_action, $1)
3589
3590# Whether we should hardcode library paths into libraries.
3591hardcode_into_libs=$hardcode_into_libs
3592
3593# Flag to hardcode \$libdir into a binary during linking.
3594# This must work even if \$libdir does not exist.
3595hardcode_libdir_flag_spec=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)
3596
3597# Whether we need a single -rpath flag with a separated argument.
3598hardcode_libdir_separator=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_separator, $1)
3599
3600# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
3601# resulting binary.
3602hardcode_direct=$_LT_AC_TAGVAR(hardcode_direct, $1)
3603
3604# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
3605# resulting binary.
3606hardcode_minus_L=$_LT_AC_TAGVAR(hardcode_minus_L, $1)
3607
3608# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
3609# the resulting binary.
3610hardcode_shlibpath_var=$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)
3611
3612# Variables whose values should be saved in libtool wrapper scripts and
3613# restored at relink time.
3614variables_saved_for_relink="$variables_saved_for_relink"
3615
3616# Whether libtool must link a program against all its dependency libraries.
3617link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1)
3618
3619# Compile-time system search path for libraries
3620sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
3621
3622# Run-time system search path for libraries
3623sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
3624
3625# Fix the shell variable \$srcfile for the compiler.
3626fix_srcfile_path="$_LT_AC_TAGVAR(fix_srcfile_path, $1)"
3627
3628# Set to yes if exported symbols are required.
3629always_export_symbols=$_LT_AC_TAGVAR(always_export_symbols, $1)
3630
3631# The commands to list exported symbols.
3632export_symbols_cmds=$lt_[]_LT_AC_TAGVAR(export_symbols_cmds, $1)
3633
3634# The commands to extract the exported symbol list from a shared archive.
3635extract_expsyms_cmds=$lt_extract_expsyms_cmds
3636
3637# Symbols that should not be listed in the preloaded symbols.
3638exclude_expsyms=$lt_[]_LT_AC_TAGVAR(exclude_expsyms, $1)
3639
3640# Symbols that must always be exported.
3641include_expsyms=$lt_[]_LT_AC_TAGVAR(include_expsyms, $1)
3642
3643ifelse([$1],[],
3644[# ### END LIBTOOL CONFIG],
3645[# ### END LIBTOOL TAG CONFIG: $tagname])
3646
3647__EOF__
3648
3649ifelse([$1],[], [
3650  case $host_os in
3651  aix3*)
3652    cat <<\EOF >> "$cfgfile"
3653
3654# AIX sometimes has problems with the GCC collect2 program.  For some
3655# reason, if we set the COLLECT_NAMES environment variable, the problems
3656# vanish in a puff of smoke.
3657if test "X${COLLECT_NAMES+set}" != Xset; then
3658  COLLECT_NAMES=
3659  export COLLECT_NAMES
3660fi
3661EOF
3662    ;;
3663
3664  cygwin* | mingw* | pw32* | os2*)
3665    cat <<'EOF' >> "$cfgfile"
3666    # This is a source program that is used to create dlls on Windows
3667    # Don't remove nor modify the starting and closing comments
3668    _LT_AC_FILE_LTDLL_C
3669    # This is a source program that is used to create import libraries
3670    # on Windows for dlls which lack them. Don't remove nor modify the
3671    # starting and closing comments
3672    _LT_AC_FILE_IMPGEN_C
3673EOF
3674    ;;
3675  esac
3676
3677  # We use sed instead of cat because bash on DJGPP gets confused if
3678  # if finds mixed CR/LF and LF-only lines.  Since sed operates in
3679  # text mode, it properly converts lines to CR/LF.  This bash problem
3680  # is reportedly fixed, but why not run on old versions too?
3681  sed '$q' "$ltmain" >> "$cfgfile" || (rm -f "$cfgfile"; exit 1)
3682
3683  mv -f "$cfgfile" "$ofile" || \
3684    (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
3685  chmod +x "$ofile"
3686])
3687else
3688  # If there is no Makefile yet, we rely on a make rule to execute
3689  # `config.status --recheck' to rerun these tests and create the
3690  # libtool script then.
3691  test -f Makefile && make "$ltmain"
3692fi
3693])# AC_LIBTOOL_CONFIG
3694
3695
3696# AC_LIBTOOL_PROG_COMPILER_NO_RTTI([TAGNAME])
3697# -------------------------------------------
3698AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI],
3699[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
3700
3701_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
3702
3703if test "$GCC" = yes; then
3704  _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
3705
3706  AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
3707    lt_cv_prog_compiler_rtti_exceptions,
3708    [-fno-rtti -fno-exceptions -c conftest.$ac_ext], [],
3709    [_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
3710fi
3711])# AC_LIBTOOL_PROG_COMPILER_NO_RTTI
3712
3713
3714# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
3715# ---------------------------------
3716AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE],
3717[AC_REQUIRE([AC_CANONICAL_HOST])
3718AC_REQUIRE([AC_PROG_NM])
3719AC_REQUIRE([AC_OBJEXT])
3720# Check for command to grab the raw symbol name followed by C symbol from nm.
3721AC_MSG_CHECKING([command to parse $NM output from $compiler object])
3722AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
3723[
3724# These are sane defaults that work on at least a few old systems.
3725# [They come from Ultrix.  What could be older than Ultrix?!! ;)]
3726
3727# Character class describing NM global symbol codes.
3728symcode='[[BCDEGRST]]'
3729
3730# Regexp to match symbols that can be accessed directly from C.
3731sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
3732
3733# Transform the above into a raw symbol and a C symbol.
3734symxfrm='\1 \2\3 \3'
3735
3736# Transform an extracted symbol line into a proper C declaration
3737lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern int \1;/p'"
3738
3739# Transform an extracted symbol line into symbol name and symbol address
3740lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (lt_ptr) \&\2},/p'"
3741
3742# Define system-specific variables.
3743case $host_os in
3744aix*)
3745  symcode='[[BCDT]]'
3746  ;;
3747cygwin* | mingw* | pw32*)
3748  symcode='[[ABCDGISTW]]'
3749  ;;
3750hpux*) # Its linker distinguishes data from code symbols
3751  if test "$host_cpu" = ia64; then
3752    symcode='[[ABCDEGRST]]'
3753  fi
3754  lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
3755  lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (lt_ptr) \&\2},/p'"
3756  ;;
3757irix* | nonstopux*)
3758  symcode='[[BCDEGRST]]'
3759  ;;
3760solaris* | sysv5*)
3761  symcode='[[BDT]]'
3762  ;;
3763sysv4)
3764  symcode='[[DFNSTU]]'
3765  ;;
3766esac
3767
3768# Handle CRLF in mingw tool chain
3769opt_cr=
3770case $host_os in
3771mingw*)
3772  opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp
3773  ;;
3774esac
3775
3776# If we're using GNU nm, then use its standard symbol codes.
3777if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
3778  symcode='[[ABCDGISTW]]'
3779fi
3780
3781# Try without a prefix undercore, then with it.
3782for ac_symprfx in "" "_"; do
3783
3784  # Write the raw and C identifiers.
3785  lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ 	]]\($symcode$symcode*\)[[ 	]][[ 	]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'"
3786
3787  # Check to see that the pipe works correctly.
3788  pipe_works=no
3789
3790  rm -f conftest*
3791  cat > conftest.$ac_ext <<EOF
3792#ifdef __cplusplus
3793extern "C" {
3794#endif
3795char nm_test_var;
3796void nm_test_func(){}
3797#ifdef __cplusplus
3798}
3799#endif
3800int main(){nm_test_var='a';nm_test_func();return(0);}
3801EOF
3802
3803  if AC_TRY_EVAL(ac_compile); then
3804    # Now try to grab the symbols.
3805    nlist=conftest.nm
3806    if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
3807      # Try sorting and uniquifying the output.
3808      if sort "$nlist" | uniq > "$nlist"T; then
3809	mv -f "$nlist"T "$nlist"
3810      else
3811	rm -f "$nlist"T
3812      fi
3813
3814      # Make sure that we snagged all the symbols we need.
3815      if egrep ' nm_test_var$' "$nlist" >/dev/null; then
3816	if egrep ' nm_test_func$' "$nlist" >/dev/null; then
3817	  cat <<EOF > conftest.$ac_ext
3818#ifdef __cplusplus
3819extern "C" {
3820#endif
3821
3822EOF
3823	  # Now generate the symbol file.
3824	  eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | grep -v main >> conftest.$ac_ext'
3825
3826	  cat <<EOF >> conftest.$ac_ext
3827#if defined (__STDC__) && __STDC__
3828# define lt_ptr_t void *
3829#else
3830# define lt_ptr_t char *
3831# define const
3832#endif
3833
3834/* The mapping between symbol names and symbols. */
3835const struct {
3836  const char *name;
3837  lt_ptr_t address;
3838}
3839lt_preloaded_symbols[[]] =
3840{
3841EOF
3842	  sed "s/^$symcode$symcode* \(.*\) \(.*\)$/  {\"\2\", (lt_ptr_t) \&\2},/" < "$nlist" | grep -v main >> conftest.$ac_ext
3843	  cat <<\EOF >> conftest.$ac_ext
3844  {0, (lt_ptr_t) 0}
3845};
3846
3847#ifdef __cplusplus
3848}
3849#endif
3850EOF
3851	  # Now try linking the two files.
3852	  mv conftest.$ac_objext conftstm.$ac_objext
3853	  lt_save_LIBS="$LIBS"
3854	  lt_save_CFLAGS="$CFLAGS"
3855	  LIBS="conftstm.$ac_objext"
3856	  CFLAGS="$CFLAGS$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
3857	  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
3858	    pipe_works=yes
3859	  fi
3860	  LIBS="$lt_save_LIBS"
3861	  CFLAGS="$lt_save_CFLAGS"
3862	else
3863	  echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
3864	fi
3865      else
3866	echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
3867      fi
3868    else
3869      echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
3870    fi
3871  else
3872    echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
3873    cat conftest.$ac_ext >&5
3874  fi
3875  rm -f conftest* conftst*
3876
3877  # Do not use the global_symbol_pipe unless it works.
3878  if test "$pipe_works" = yes; then
3879    break
3880  else
3881    lt_cv_sys_global_symbol_pipe=
3882  fi
3883done
3884])
3885if test -z "$lt_cv_sys_global_symbol_pipe"; then
3886  lt_cv_sys_global_symbol_to_cdecl=
3887fi
3888if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
3889  AC_MSG_RESULT(failed)
3890else
3891  AC_MSG_RESULT(ok)
3892fi
3893]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
3894
3895
3896# AC_LIBTOOL_PROG_COMPILER_PIC([TAGNAME])
3897# ---------------------------------------
3898AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC],
3899[_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)=
3900_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
3901_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=
3902
3903AC_MSG_CHECKING([for $compiler option to produce PIC])
3904 ifelse([$1],[CXX],[
3905  # C++ specific cases for pic, static, wl, etc.
3906  if test "$GXX" = yes; then
3907    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3908    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
3909
3910    case $host_os in
3911    aix*)
3912      # All AIX code is PIC.
3913      if test "$host_cpu" = ia64; then
3914	# AIX 5 now supports IA64 processor
3915	_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
3916      fi
3917      ;;
3918    amigaos*)
3919      # FIXME: we need at least 68020 code to build shared libraries, but
3920      # adding the `-m68020' flag to GCC prevents building anything better,
3921      # like `-m68040'.
3922      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
3923      ;;
3924    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
3925      # PIC is the default for these OSes.
3926      ;;
3927    cygwin* | mingw* | os2*)
3928      # This hack is so that the source file can tell whether it is being
3929      # built for inclusion in a dll (and should export symbols for example).
3930      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
3931      ;;
3932    darwin* | rhapsody*)
3933      # PIC is the default on this platform
3934      # Common symbols not allowed in MH_DYLIB files
3935      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
3936      ;;
3937    *djgpp*)
3938      # DJGPP does not support shared libraries at all
3939      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
3940      ;;
3941    sysv4*MP*)
3942      if test -d /usr/nec; then
3943	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
3944      fi
3945      ;;
3946    hpux*)
3947      # PIC is the default for IA64 HP-UX, but not for PA HP-UX.
3948      if test "$host_cpu" != ia64; then
3949	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3950      fi
3951      ;;
3952    *)
3953      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3954      ;;
3955    esac
3956  else
3957    case $host_os in
3958      aix4* | aix5*)
3959	# All AIX code is PIC.
3960	if test "$host_cpu" = ia64; then
3961	  # AIX 5 now supports IA64 processor
3962	  _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
3963	else
3964	  _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
3965	fi
3966	;;
3967      chorus*)
3968	case $cc_basename in
3969	cxch68)
3970	  # Green Hills C++ Compiler
3971	  # _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
3972	  ;;
3973	esac
3974	;;
3975      dgux*)
3976	case $cc_basename in
3977	  ec++)
3978	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
3979	    ;;
3980	  ghcx)
3981	    # Green Hills C++ Compiler
3982	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
3983	    ;;
3984	  *)
3985	    ;;
3986	esac
3987	;;
3988      freebsd*)
3989	# FreeBSD uses GNU C++
3990	;;
3991      hpux9* | hpux10* | hpux11*)
3992	case $cc_basename in
3993	  CC)
3994	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3995	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive"
3996	    if test "$host_cpu" != ia64; then
3997	      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
3998	    fi
3999	    ;;
4000	  aCC)
4001	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4002	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="${ac_cv_prog_cc_wl}-a ${ac_cv_prog_cc_wl}archive"
4003	    if test "$host_cpu" != ia64; then
4004	      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4005	    fi
4006	    ;;
4007	  *)
4008	    ;;
4009	esac
4010	;;
4011      irix5* | irix6* | nonstopux*)
4012	case $cc_basename in
4013	  CC)
4014	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4015	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4016	    # CC pic flag -KPIC is the default.
4017	    ;;
4018	  *)
4019	    ;;
4020	esac
4021	;;
4022      linux*)
4023	case $cc_basename in
4024	  KCC)
4025	    # KAI C++ Compiler
4026	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4027	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4028	    ;;
4029	  cxx)
4030	    # Compaq C++
4031	    # Make sure the PIC flag is empty.  It appears that all Alpha
4032	    # Linux and Compaq Tru64 Unix objects are PIC.
4033	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
4034	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4035	    ;;
4036	  *)
4037	    ;;
4038	esac
4039	;;
4040      lynxos*)
4041	;;
4042      m88k*)
4043	;;
4044      mvs*)
4045	case $cc_basename in
4046	  cxx)
4047	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
4048	    ;;
4049	  *)
4050	    ;;
4051	esac
4052	;;
4053      netbsd*)
4054	;;
4055      osf3* | osf4* | osf5*)
4056	case $cc_basename in
4057	  KCC)
4058	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4059	    ;;
4060	  RCC)
4061	    # Rational C++ 2.4.1
4062	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4063	    ;;
4064	  cxx)
4065	    # Digital/Compaq C++
4066	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4067	    # Make sure the PIC flag is empty.  It appears that all Alpha
4068	    # Linux and Compaq Tru64 Unix objects are PIC.
4069	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
4070	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4071	    ;;
4072	  *)
4073	    ;;
4074	esac
4075	;;
4076      psos*)
4077	;;
4078      sco*)
4079	case $cc_basename in
4080	  CC)
4081	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4082	    ;;
4083	  *)
4084	    ;;
4085	esac
4086	;;
4087      solaris*)
4088	case $cc_basename in
4089	  CC)
4090	    # Sun C++ 4.2, 5.x and Centerline C++
4091	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4092	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4093	    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4094	    ;;
4095	  gcx)
4096	    # Green Hills C++ Compiler
4097	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4098	    ;;
4099	  *)
4100	    ;;
4101	esac
4102	;;
4103      sunos4*)
4104	case $cc_basename in
4105	  CC)
4106	    # Sun C++ 4.x
4107	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4108	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4109	    ;;
4110	  lcc)
4111	    # Lucid
4112	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4113	    ;;
4114	  *)
4115	    ;;
4116	esac
4117	;;
4118      tandem*)
4119	case $cc_basename in
4120	  NCC)
4121	    # NonStop-UX NCC 3.20
4122	    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4123	    ;;
4124	  *)
4125	    ;;
4126	esac
4127	;;
4128      unixware*)
4129	;;
4130      vxworks*)
4131	;;
4132      *)
4133	_LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4134	;;
4135    esac
4136  fi
4137],
4138[
4139  if test "$GCC" = yes; then
4140    _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4141    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
4142
4143    case $host_os in
4144      aix*)
4145      # All AIX code is PIC.
4146      if test "$host_cpu" = ia64; then
4147	# AIX 5 now supports IA64 processor
4148	_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4149      fi
4150      ;;
4151
4152    amigaos*)
4153      # FIXME: we need at least 68020 code to build shared libraries, but
4154      # adding the `-m68020' flag to GCC prevents building anything better,
4155      # like `-m68040'.
4156      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4157      ;;
4158
4159    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4160      # PIC is the default for these OSes.
4161      ;;
4162
4163    cygwin* | mingw* | pw32* | os2*)
4164      # This hack is so that the source file can tell whether it is being
4165      # built for inclusion in a dll (and should export symbols for example).
4166      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
4167      ;;
4168
4169    darwin* | rhapsody*)
4170      # PIC is the default on this platform
4171      # Common symbols not allowed in MH_DYLIB files
4172      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4173      ;;
4174
4175    msdosdjgpp*)
4176      # Just because we use GCC doesn't mean we suddenly get shared libraries
4177      # on systems that don't support them.
4178      _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4179      enable_shared=no
4180      ;;
4181
4182    sysv4*MP*)
4183      if test -d /usr/nec; then
4184	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4185      fi
4186      ;;
4187
4188    hpux*)
4189      # PIC is the default for IA64 HP-UX, but not for PA HP-UX.
4190      if test "$host_cpu" != ia64; then
4191	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4192      fi
4193      ;;
4194
4195    *)
4196      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4197      ;;
4198    esac
4199  else
4200    # PORTME Check for flag to pass linker flags through the system compiler.
4201    case $host_os in
4202    aix*)
4203      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4204      if test "$host_cpu" = ia64; then
4205	# AIX 5 now supports IA64 processor
4206	_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4207      else
4208	_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4209      fi
4210      ;;
4211
4212    cygwin* | mingw* | pw32* | os2*)
4213      # This hack is so that the source file can tell whether it is being
4214      # built for inclusion in a dll (and should export symbols for example).
4215      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
4216      ;;
4217
4218    hpux9* | hpux10* | hpux11*)
4219      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4220      if test "$host_cpu" != ia64; then
4221	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4222      fi
4223      # Is there a better lt_prog_compiler_static that works with the bundled CC?
4224      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
4225      ;;
4226
4227    irix5* | irix6* | nonstopux*)
4228      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4229      # PIC (with -KPIC) is the default.
4230      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4231      ;;
4232
4233    newsos6)
4234      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4235      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4236      ;;
4237
4238    osf3* | osf4* | osf5*)
4239      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4240      # All OSF/1 code is PIC.
4241      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4242      ;;
4243
4244    sco3.2v5*)
4245      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kpic'
4246      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-dn'
4247      ;;
4248
4249    solaris*)
4250      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4251      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4252      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4253      ;;
4254
4255    sunos4*)
4256      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4257      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4258      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4259      ;;
4260
4261    sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
4262      if test "x$host_vendor" = xsni; then
4263	_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-LD'
4264      else
4265	_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4266      fi
4267      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4268      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4269      ;;
4270
4271    sysv4*MP*)
4272      if test -d /usr/nec ;then
4273	_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4274	_LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4275      fi
4276      ;;
4277
4278    uts4*)
4279      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4280      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4281      ;;
4282
4283    *)
4284      _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4285      ;;
4286    esac
4287  fi
4288])
4289AC_MSG_RESULT([$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)])
4290
4291#
4292# Check to make sure the PIC flag actually works.
4293#
4294if test -n "$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)"; then
4295  AC_LIBTOOL_COMPILER_OPTION([if $compiler PIC flag $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) works],
4296    _LT_AC_TAGVAR(lt_prog_compiler_pic_works, $1),
4297    [$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) -DPIC], [],
4298    [case $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) in
4299     "" | " "*) ;;
4300     *) _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)" ;;
4301     esac],
4302    [_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
4303     _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
4304fi
4305case "$host_os" in
4306  # For platforms which do not support PIC, -DPIC is meaningless:
4307  *djgpp*)
4308    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
4309    ;;
4310  *)
4311    _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) -DPIC"
4312    ;;
4313esac
4314])
4315
4316
4317# AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME])
4318# ------------------------------------
4319# See if the linker supports building shared libraries.
4320AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS],
4321[AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
4322ifelse([$1],[CXX],[
4323  _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols'
4324  case $host_os in
4325  aix4* | aix5*)
4326    # If we're using GNU nm, then we don't want the "-C" option.
4327    # -C means demangle to AIX nm, but means don't demangle with GNU nm
4328    if $NM -V 2>&1 | egrep '(GNU)' > /dev/null; then
4329      _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
4330    else
4331      _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
4332    fi
4333    ;;
4334  cygwin* | mingw* | pw32*)
4335    _LT_AC_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
4336  ;;
4337  *)
4338    _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols'
4339  ;;
4340  esac
4341],[
4342  runpath_var=
4343  _LT_AC_TAGVAR(allow_undefined_flag, $1)=
4344
4345  _LT_AC_TAGVAR(archive_cmds, $1)=
4346  _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=
4347  _LT_AC_TAGVAR(archive_expsym_cmds, $1)=
4348  _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)=
4349  _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)=
4350  _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=
4351  _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
4352  _LT_AC_TAGVAR(thread_safe_flag_spec, $1)=
4353  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
4354  _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
4355  _LT_AC_TAGVAR(hardcode_direct, $1)=no
4356  _LT_AC_TAGVAR(hardcode_minus_L, $1)=no
4357  _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
4358  _LT_AC_TAGVAR(link_all_deplibs, $1)=unknown
4359  _LT_AC_TAGVAR(always_export_symbols, $1)=no
4360  _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols'
4361  # include_expsyms should be a list of space-separated symbols to be *always*
4362  # included in the symbol list
4363  _LT_AC_TAGVAR(include_expsyms, $1)=
4364  # exclude_expsyms can be an egrep regular expression of symbols to exclude
4365  # it will be wrapped by ` (' and `)$', so one must not match beginning or
4366  # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
4367  # as well as any symbol that contains `d'.
4368  _LT_AC_TAGVAR(exclude_expsyms, $1)="_GLOBAL_OFFSET_TABLE_"
4369  # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
4370  # platforms (ab)use it in PIC code, but their linkers get confused if
4371  # the symbol is explicitly referenced.  Since portable code cannot
4372  # rely on this symbol name, it's probably fine to never include it in
4373  # preloaded symbol tables.
4374  extract_expsyms_cmds=
4375
4376  case $host_os in
4377  cygwin* | mingw* | pw32*)
4378    # FIXME: the MSVC++ port hasn't been tested in a loooong time
4379    # When not using gcc, we currently assume that we are using
4380    # Microsoft Visual C++.
4381    if test "$GCC" != yes; then
4382      with_gnu_ld=no
4383    fi
4384    ;;
4385  openbsd*)
4386    with_gnu_ld=no
4387    ;;
4388  esac
4389
4390  _LT_AC_TAGVAR(ld_shlibs, $1)=yes
4391  if test "$with_gnu_ld" = yes; then
4392    # If archive_cmds runs LD, not CC, wlarc should be empty
4393    wlarc='${wl}'
4394
4395    # See if GNU ld supports shared libraries.
4396    case $host_os in
4397    aix3* | aix4* | aix5*)
4398      # On AIX/PPC, the GNU linker is very broken
4399      if test "$host_cpu" != ia64; then
4400	_LT_AC_TAGVAR(ld_shlibs, $1)=no
4401	cat <<EOF 1>&2
4402
4403*** Warning: the GNU linker, at least up to release 2.9.1, is reported
4404*** to be unable to reliably create shared libraries on AIX.
4405*** Therefore, libtool is disabling shared libraries support.  If you
4406*** really care for shared libraries, you may want to modify your PATH
4407*** so that a non-GNU linker is found, and then restart.
4408
4409EOF
4410      fi
4411      ;;
4412
4413    amigaos*)
4414      _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
4415      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4416      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
4417
4418      # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
4419      # that the semantics of dynamic libraries on AmigaOS, at least up
4420      # to version 4, is to share data among multiple programs linked
4421      # with the same dynamic library.  Since this doesn't match the
4422      # behavior of shared libraries on other platforms, we can't use
4423      # them.
4424      _LT_AC_TAGVAR(ld_shlibs, $1)=no
4425      ;;
4426
4427    beos*)
4428      if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
4429	_LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
4430	# Joseph Beckenbach <jrb3@best.com> says some releases of gcc
4431	# support --undefined.  This deserves some investigation.  FIXME
4432	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4433      else
4434	_LT_AC_TAGVAR(ld_shlibs, $1)=no
4435      fi
4436      ;;
4437
4438    cygwin* | mingw* | pw32*)
4439      # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, as there is
4440      # no search path for DLLs.
4441      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4442      _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
4443      _LT_AC_TAGVAR(always_export_symbols, $1)=yes
4444
4445      extract_expsyms_cmds='test -f $output_objdir/impgen.c || \
4446	sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~
4447	test -f $output_objdir/impgen.exe || (cd $output_objdir && \
4448	if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \
4449	else $CC -o impgen impgen.c ; fi)~
4450	$output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def'
4451
4452      _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib'
4453
4454      # cygwin and mingw dlls have different entry points and sets of symbols
4455      # to exclude.
4456      # FIXME: what about values for MSVC?
4457      dll_entry=__cygwin_dll_entry@12
4458      dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~
4459      case $host_os in
4460      mingw*)
4461	# mingw values
4462	dll_entry=_DllMainCRTStartup@12
4463	dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~
4464	;;
4465      esac
4466
4467      # mingw and cygwin differ, and it's simplest to just exclude the union
4468      # of the two symbol sets.
4469      dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12
4470
4471      # recent cygwin and mingw systems supply a stub DllMain which the user
4472      # can override, but on older systems we have to supply one (in ltdll.c)
4473      if test "x$lt_cv_need_dllmain" = "xyes"; then
4474	ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext "
4475	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~
4476  	test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~'
4477      else
4478	ltdll_obj=
4479	ltdll_cmds=
4480      fi
4481
4482      # Extract the symbol export list from an `--export-all' def file,
4483      # then regenerate the def file from the symbol export list, so that
4484      # the compiled dll only exports the symbol export list.
4485      # Be careful not to strip the DATA tag left by newer dlltools.
4486      _LT_AC_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"'
4487	$DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~
4488	sed -e "1,/EXPORTS/d" -e "s/ @ [[0-9]]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols'
4489
4490      # If the export-symbols file already is a .def file (1st line
4491      # is EXPORTS), use it as is.
4492      # If DATA tags from a recent dlltool are present, honour them!
4493      _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`head -1 $export_symbols`" = xEXPORTS; then
4494	  cp $export_symbols $output_objdir/$soname-def;
4495	else
4496	  echo EXPORTS > $output_objdir/$soname-def;
4497	  _lt_hint=1;
4498	  cat $export_symbols | while read symbol; do
4499	   set dummy \$symbol;
4500	   case \[$]# in
4501	     2) echo "   \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;;
4502	     *) echo "   \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;;
4503	   esac;
4504	   _lt_hint=`expr 1 + \$_lt_hint`;
4505	  done;
4506	fi~
4507	'"$ltdll_cmds"'
4508	$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~
4509	$DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~
4510	$CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
4511	$DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~
4512	$CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags'
4513      ;;
4514
4515    netbsd*)
4516      if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
4517	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
4518	wlarc=
4519      else
4520	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4521	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
4522      fi
4523      ;;
4524
4525    solaris* | sysv5*)
4526      if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then
4527	_LT_AC_TAGVAR(ld_shlibs, $1)=no
4528	cat <<EOF 1>&2
4529
4530*** Warning: The releases 2.8.* of the GNU linker cannot reliably
4531*** create shared libraries on Solaris systems.  Therefore, libtool
4532*** is disabling shared libraries support.  We urge you to upgrade GNU
4533*** binutils to release 2.9.1 or newer.  Another option is to modify
4534*** your PATH or compiler configuration so that the native linker is
4535*** used, and then restart.
4536
4537EOF
4538      elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
4539	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4540	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
4541      else
4542	_LT_AC_TAGVAR(ld_shlibs, $1)=no
4543      fi
4544      ;;
4545
4546    sunos4*)
4547      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
4548      wlarc=
4549      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
4550      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4551      ;;
4552
4553    *)
4554      if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
4555	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4556	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
4557      else
4558	_LT_AC_TAGVAR(ld_shlibs, $1)=no
4559      fi
4560      ;;
4561    esac
4562
4563    if test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = yes; then
4564      runpath_var=LD_RUN_PATH
4565      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
4566      _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
4567      case $host_os in
4568      cygwin* | mingw* | pw32*)
4569	# dlltool doesn't understand --whole-archive et. al.
4570	_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
4571	;;
4572      *)
4573	# ancient GNU ld didn't support --whole-archive et. al.
4574	if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then
4575  	_LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
4576	else
4577  	_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
4578	fi
4579	;;
4580      esac
4581    fi
4582  else
4583    # PORTME fill in a description of your system's linker (not GNU ld)
4584    case $host_os in
4585    aix3*)
4586      _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
4587      _LT_AC_TAGVAR(always_export_symbols, $1)=yes
4588      _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
4589      # Note: this linker hardcodes the directories in LIBPATH if there
4590      # are no directories specified by -L.
4591      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
4592      if test "$GCC" = yes && test -z "$link_static_flag"; then
4593	# Neither direct hardcoding nor static linking is supported with a
4594	# broken collect2.
4595	_LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
4596      fi
4597      ;;
4598
4599    aix4* | aix5*)
4600      if test "$host_cpu" = ia64; then
4601	# On IA64, the linker does run time linking by default, so we don't
4602	# have to do anything special.
4603	aix_use_runtimelinking=no
4604	exp_sym_flag='-Bexport'
4605	no_entry_flag=""
4606      else
4607	# If we're using GNU nm, then we don't want the "-C" option.
4608	# -C means demangle to AIX nm, but means don't demangle with GNU nm
4609	if $NM -V 2>&1 | egrep '(GNU)' > /dev/null; then
4610	  _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
4611	else
4612	  _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
4613	fi
4614	aix_use_runtimelinking=no
4615
4616	# Test if we are trying to use run time linking or normal
4617	# AIX style linking. If -brtl is somewhere in LDFLAGS, we
4618	# need to do runtime linking.
4619	case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
4620	  for ld_flag in $LDFLAGS; do
4621  	  if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
4622  	    aix_use_runtimelinking=yes
4623  	    break
4624  	  fi
4625	  done
4626	esac
4627
4628	exp_sym_flag='-bexport'
4629	no_entry_flag='-bnoentry'
4630      fi
4631
4632      # When large executables or shared objects are built, AIX ld can
4633      # have problems creating the table of contents.  If linking a library
4634      # or program results in "error TOC overflow" add -mminimal-toc to
4635      # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
4636      # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
4637
4638      _LT_AC_TAGVAR(archive_cmds, $1)=''
4639      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
4640      _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
4641      _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
4642
4643      if test "$GCC" = yes; then
4644	case $host_os in aix4.[012]|aix4.[012].*)
4645	# We only want to do this on AIX 4.2 and lower, the check
4646	# below for broken collect2 doesn't work under 4.3+
4647	  collect2name=`${CC} -print-prog-name=collect2`
4648	  if test -f "$collect2name" && \
4649  	   strings "$collect2name" | grep resolve_lib_name >/dev/null
4650	  then
4651  	  # We have reworked collect2
4652  	  _LT_AC_TAGVAR(hardcode_direct, $1)=yes
4653	  else
4654  	  # We have old collect2
4655  	  _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
4656  	  # It fails to find uninstalled libraries when the uninstalled
4657  	  # path is not listed in the libpath.  Setting hardcode_minus_L
4658  	  # to unsupported forces relinking
4659  	  _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
4660  	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4661  	  _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
4662	  fi
4663	esac
4664	shared_flag='-shared'
4665      else
4666	# not using gcc
4667	if test "$host_cpu" = ia64; then
4668  	# VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
4669  	# chokes on -Wl,-G. The following line is correct:
4670	  shared_flag='-G'
4671	else
4672  	if test "$aix_use_runtimelinking" = yes; then
4673	    shared_flag='${wl}-G'
4674	  else
4675	    shared_flag='${wl}-bM:SRE'
4676  	fi
4677	fi
4678      fi
4679
4680      # It seems that -bexpall does not export symbols beginning with
4681      # underscore (_), so it is better to generate a list of symbols to export.
4682      _LT_AC_TAGVAR(always_export_symbols, $1)=yes
4683      if test "$aix_use_runtimelinking" = yes; then
4684	# Warning - without using the other runtime loading flags (-brtl),
4685	# -berok will link without error, but may produce a broken library.
4686	_LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok'
4687       # Determine the default libpath from the value encoded in an empty executable.
4688       _LT_AC_SYS_LIBPATH_AIX
4689       _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
4690	_LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$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"
4691       else
4692	if test "$host_cpu" = ia64; then
4693	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
4694	  _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
4695	  _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
4696	else
4697	 # Determine the default libpath from the value encoded in an empty executable.
4698	 _LT_AC_SYS_LIBPATH_AIX
4699	 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
4700	  # Warning - without using the other run time loading flags,
4701	  # -berok will link without error, but may produce a broken library.
4702	  _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
4703	  _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
4704	  # -bexpall does not export symbols beginning with underscore (_)
4705	  _LT_AC_TAGVAR(always_export_symbols, $1)=yes
4706	  # Exported symbols can be pulled into shared objects from archives
4707	  _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' '
4708	  _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
4709	  # This is similar to how AIX traditionally builds it's shared libraries.
4710	  _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
4711	fi
4712      fi
4713      ;;
4714
4715    amigaos*)
4716      _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
4717      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4718      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
4719      # see comment about different semantics on the GNU ld section
4720      _LT_AC_TAGVAR(ld_shlibs, $1)=no
4721      ;;
4722
4723    bsdi4*)
4724      _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
4725      ;;
4726
4727    cygwin* | mingw* | pw32*)
4728      # When not using gcc, we currently assume that we are using
4729      # Microsoft Visual C++.
4730      # hardcode_libdir_flag_spec is actually meaningless, as there is
4731      # no search path for DLLs.
4732      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
4733      _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
4734      # Tell ltmain to make .lib files, not .a files.
4735      libext=lib
4736      # FIXME: Setting linknames here is a bad hack.
4737      _LT_AC_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames='
4738      # The linker will automatically build a .lib file if we build a DLL.
4739      _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='true'
4740      # FIXME: Should let the user specify the lib program.
4741      _LT_AC_TAGVAR(old_archive_cmds, $1)='lib /OUT:$oldlib$oldobjs$old_deplibs'
4742      fix_srcfile_path='`cygpath -w "$srcfile"`'
4743      ;;
4744
4745    darwin* | rhapsody*)
4746      case "$host_os" in
4747      rhapsody* | darwin1.[[012]])
4748	_LT_AC_TAGVAR(allow_undefined_flag, $1)='-undefined suppress'
4749	;;
4750      *) # Darwin 1.3 on
4751	_LT_AC_TAGVAR(allow_undefined_flag, $1)='-flat_namespace -undefined suppress'
4752	;;
4753      esac
4754
4755      # FIXME: Relying on posixy $() will cause problems for
4756      #        cross-compilation, but unfortunately the echo tests do not
4757      #        yet detect zsh echo's removal of \ escapes.  Also zsh mangles
4758      #	       `"' quotes if we put them in here... so don't!
4759      _LT_AC_TAGVAR(archive_cmds, $1)='$CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs$linker_flags -install_name $rpath/$soname $verstring'
4760      # We need to add '_' to the symbols in $export_symbols first
4761      #_LT_AC_TAGVAR(archive_expsym_cmds, $1)="$_LT_AC_TAGVAR(archive_cmds, $1)"' && strip -s $export_symbols'
4762      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
4763      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4764      _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-all_load $convenience'
4765      ;;
4766
4767    dgux*)
4768      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
4769      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4770      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4771      ;;
4772
4773    freebsd1*)
4774      _LT_AC_TAGVAR(ld_shlibs, $1)=no
4775      ;;
4776
4777    # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
4778    # support.  Future versions do this automatically, but an explicit c++rt0.o
4779    # does not break anything, and helps significantly (at the cost of a little
4780    # extra space).
4781    freebsd2.2*)
4782      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
4783      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
4784      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
4785      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4786      ;;
4787
4788    # Unfortunately, older versions of FreeBSD 2 do not have this feature.
4789    freebsd2*)
4790      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
4791      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
4792      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
4793      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4794      ;;
4795
4796    # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
4797    freebsd*)
4798      _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
4799      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
4800      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
4801      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4802      ;;
4803
4804    hpux9* | hpux10* | hpux11*)
4805      if test "$GCC" = yes; then
4806	case $host_os in
4807	  hpux9*)
4808	    _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
4809	    ;;
4810	  *)
4811	    if test "$host_cpu" = ia64; then
4812	      _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
4813	    else
4814	      _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
4815	    fi
4816	    ;;
4817	esac
4818      else
4819	case $host_os in
4820	  hpux9*)
4821	    _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
4822	    ;;
4823	  *)
4824	    if test "$host_cpu" = ia64; then
4825	      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname -o $lib $libobjs $deplibs $linker_flags'
4826	    else
4827	      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
4828	    fi
4829	    ;;
4830	esac
4831      fi
4832      if test "$host_cpu" = ia64; then
4833	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4834	_LT_AC_TAGVAR(hardcode_direct, $1)=no
4835	_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4836      else
4837	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
4838	_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
4839	_LT_AC_TAGVAR(hardcode_direct, $1)=yes
4840      fi
4841      # hardcode_minus_L: Not really in the search PATH,
4842      # but as the default location of the library.
4843      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
4844      _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
4845      ;;
4846
4847    irix5* | irix6* | nonstopux*)
4848      if test "$GCC" = yes; then
4849	_LT_AC_TAGVAR(archive_cmds, $1)='$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'
4850      else
4851	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
4852      fi
4853      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4854      _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
4855      _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
4856      ;;
4857
4858    netbsd*)
4859      if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
4860	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
4861      else
4862	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
4863      fi
4864      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
4865      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
4866      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4867      ;;
4868
4869    newsos6)
4870      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
4871      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
4872      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4873      _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
4874      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4875      ;;
4876
4877    openbsd*)
4878      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
4879      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4880
4881      if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
4882	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
4883	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
4884	_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
4885      else
4886       case $host_os in
4887	 openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
4888	   _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
4889	   _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
4890	   ;;
4891	 *)
4892	   _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
4893	   _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
4894	   ;;
4895       esac
4896      fi
4897      ;;
4898
4899    os2*)
4900      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4901      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
4902      _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
4903      _LT_AC_TAGVAR(archive_cmds, $1)='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
4904      _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
4905      ;;
4906
4907    osf3*)
4908      if test "$GCC" = yes; then
4909	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
4910	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $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'
4911      else
4912	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
4913	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
4914      fi
4915      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4916      _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
4917      ;;
4918
4919    osf4* | osf5*)	# as osf3* with the addition of -msym flag
4920      if test "$GCC" = yes; then
4921	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
4922	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
4923	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4924      else
4925	_LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
4926	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
4927	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~
4928	$LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp'
4929
4930	# Both c and cxx compiler support -rpath directly
4931	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
4932      fi
4933      _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
4934      ;;
4935
4936    sco3.2v5*)
4937      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
4938      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4939      _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
4940      runpath_var=LD_RUN_PATH
4941      hardcode_runpath_var=yes
4942      ;;
4943
4944    solaris*)
4945      _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text'
4946      if test "$GCC" = yes; then
4947	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
4948	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
4949	  $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$rm $lib.exp'
4950      else
4951	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
4952	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
4953  	$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
4954      fi
4955      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
4956      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4957      case $host_os in
4958      solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
4959      *) # Supported since Solaris 2.6 (maybe 2.5.1?)
4960	_LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' ;;
4961      esac
4962      _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
4963      ;;
4964
4965    sunos4*)
4966      if test "x$host_vendor" = xsequent; then
4967	# Use $CC to link under sequent, because it throws in some extra .o
4968	# files that make .init and .fini sections work.
4969	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
4970      else
4971	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
4972      fi
4973      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4974      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
4975      _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
4976      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4977      ;;
4978
4979    sysv4)
4980      if test "x$host_vendor" = xsni; then
4981	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -Bsymbolic -h $soname -o $lib $libobjs $deplibs $linker_flags'
4982	_LT_AC_TAGVAR(hardcode_direct, $1)=yes # is this really true???
4983      else
4984	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
4985	_LT_AC_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
4986      fi
4987      runpath_var='LD_RUN_PATH'
4988      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4989      ;;
4990
4991    sysv4.3*)
4992      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
4993      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4994      _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
4995      ;;
4996
4997    sysv4*MP*)
4998      if test -d /usr/nec; then
4999	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5000	_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5001	runpath_var=LD_RUN_PATH
5002	hardcode_runpath_var=yes
5003	_LT_AC_TAGVAR(ld_shlibs, $1)=yes
5004      fi
5005      ;;
5006
5007    sysv4.2uw2*)
5008      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
5009      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
5010      _LT_AC_TAGVAR(hardcode_minus_L, $1)=no
5011      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5012      hardcode_runpath_var=yes
5013      runpath_var=LD_RUN_PATH
5014      ;;
5015
5016   sysv5OpenUNIX8* | sysv5UnixWare7* |  sysv5uw[[78]]* | unixware7*)
5017      _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z ${wl}text'
5018      if test "$GCC" = yes; then
5019	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5020      else
5021	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5022      fi
5023      runpath_var='LD_RUN_PATH'
5024      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5025      ;;
5026
5027    sysv5*)
5028      _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text'
5029      # $CC -shared without GNU ld will not create a library from C++
5030      # object files and a static libstdc++, better avoid it by now
5031      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
5032      _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
5033  		$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
5034      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
5035      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5036      runpath_var='LD_RUN_PATH'
5037      ;;
5038
5039    uts4*)
5040      _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5041      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5042      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
5043      ;;
5044
5045    *)
5046      _LT_AC_TAGVAR(ld_shlibs, $1)=no
5047      ;;
5048    esac
5049  fi
5050])
5051AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)])
5052test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
5053
5054variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
5055if test "$GCC" = yes; then
5056  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
5057fi
5058
5059#
5060# Do we need to explicitly link libc?
5061#
5062_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
5063if test "$enable_shared" = yes && test "$GCC" = yes; then
5064  case $_LT_AC_TAGVAR(archive_cmds, $1) in
5065  *'~'*)
5066    # FIXME: we may have to deal with multi-command sequences.
5067    ;;
5068  '$CC '*)
5069    # Test whether the compiler implicitly links with -lc since on some
5070    # systems, -lgcc has to come before -lc. If gcc already passes -lc
5071    # to ld, don't add -lc before -lgcc.
5072    AC_MSG_CHECKING([whether -lc should be explicitly linked in])
5073    $rm conftest*
5074    echo 'static int dummy;' > conftest.$ac_ext
5075
5076    if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
5077      soname=conftest
5078      lib=conftest
5079      libobjs=conftest.$ac_objext
5080      deplibs=
5081      wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)
5082      compiler_flags=-v
5083      linker_flags=-v
5084      verstring=
5085      output_objdir=.
5086      libname=conftest
5087      lt_save_allow_undefined_flag=$_LT_AC_TAGVAR(allow_undefined_flag, $1)
5088      _LT_AC_TAGVAR(allow_undefined_flag, $1)=
5089      if AC_TRY_EVAL(_LT_AC_TAGVAR(archive_cmds, $1) 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1)
5090      then
5091	_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
5092      else
5093	_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
5094      fi
5095      _LT_AC_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
5096    else
5097      cat conftest.err 1>&5
5098    fi
5099    $rm conftest*
5100    AC_MSG_RESULT([$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)])
5101    ;;
5102  esac
5103fi
5104])# AC_LIBTOOL_PROG_LD_SHLIBS
5105
5106
5107# _LT_AC_FILE_LTDLL_C
5108# -------------------
5109# Be careful that the start marker always follows a newline.
5110AC_DEFUN([_LT_AC_FILE_LTDLL_C], [
5111# /* ltdll.c starts here */
5112# #define WIN32_LEAN_AND_MEAN
5113# #include <windows.h>
5114# #undef WIN32_LEAN_AND_MEAN
5115# #include <stdio.h>
5116#
5117# #ifndef __CYGWIN__
5118# #  ifdef __CYGWIN32__
5119# #    define __CYGWIN__ __CYGWIN32__
5120# #  endif
5121# #endif
5122#
5123# #ifdef __cplusplus
5124# extern "C" {
5125# #endif
5126# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
5127# #ifdef __cplusplus
5128# }
5129# #endif
5130#
5131# #ifdef __CYGWIN__
5132# #include <cygwin/cygwin_dll.h>
5133# DECLARE_CYGWIN_DLL( DllMain );
5134# #endif
5135# HINSTANCE __hDllInstance_base;
5136#
5137# BOOL APIENTRY
5138# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
5139# {
5140#   __hDllInstance_base = hInst;
5141#   return TRUE;
5142# }
5143# /* ltdll.c ends here */
5144])# _LT_AC_FILE_LTDLL_C
5145
5146
5147# _LT_AC_FILE_IMPGEN_C
5148# --------------------
5149# Be careful that the start marker always follows a newline.
5150AC_DEFUN([_LT_AC_FILE_IMPGEN_C], [
5151# /* impgen.c starts here */
5152# /*   Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
5153#
5154#  This file is part of GNU libtool.
5155#
5156#  This program is free software; you can redistribute it and/or modify
5157#  it under the terms of the GNU General Public License as published by
5158#  the Free Software Foundation; either version 2 of the License, or
5159#  (at your option) any later version.
5160#
5161#  This program is distributed in the hope that it will be useful,
5162#  but WITHOUT ANY WARRANTY; without even the implied warranty of
5163#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
5164#  GNU General Public License for more details.
5165#
5166#  You should have received a copy of the GNU General Public License
5167#  along with this program; if not, write to the Free Software
5168#  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
5169#  */
5170#
5171# #include <stdio.h>		/* for printf() */
5172# #include <unistd.h>		/* for open(), lseek(), read() */
5173# #include <fcntl.h>		/* for O_RDONLY, O_BINARY */
5174# #include <string.h>		/* for strdup() */
5175#
5176# /* O_BINARY isn't required (or even defined sometimes) under Unix */
5177# #ifndef O_BINARY
5178# #define O_BINARY 0
5179# #endif
5180#
5181# static unsigned int
5182# pe_get16 (fd, offset)
5183#      int fd;
5184#      int offset;
5185# {
5186#   unsigned char b[2];
5187#   lseek (fd, offset, SEEK_SET);
5188#   read (fd, b, 2);
5189#   return b[0] + (b[1]<<8);
5190# }
5191#
5192# static unsigned int
5193# pe_get32 (fd, offset)
5194#     int fd;
5195#     int offset;
5196# {
5197#   unsigned char b[4];
5198#   lseek (fd, offset, SEEK_SET);
5199#   read (fd, b, 4);
5200#   return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
5201# }
5202#
5203# static unsigned int
5204# pe_as32 (ptr)
5205#      void *ptr;
5206# {
5207#   unsigned char *b = ptr;
5208#   return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
5209# }
5210#
5211# int
5212# main (argc, argv)
5213#     int argc;
5214#     char *argv[];
5215# {
5216#     int dll;
5217#     unsigned long pe_header_offset, opthdr_ofs, num_entries, i;
5218#     unsigned long export_rva, export_size, nsections, secptr, expptr;
5219#     unsigned long name_rvas, nexp;
5220#     unsigned char *expdata, *erva;
5221#     char *filename, *dll_name;
5222#
5223#     filename = argv[1];
5224#
5225#     dll = open(filename, O_RDONLY|O_BINARY);
5226#     if (dll < 1)
5227# 	return 1;
5228#
5229#     dll_name = filename;
5230#
5231#     for (i=0; filename[i]; i++)
5232# 	if (filename[i] == '/' || filename[i] == '\\'  || filename[i] == ':')
5233# 	    dll_name = filename + i +1;
5234#
5235#     pe_header_offset = pe_get32 (dll, 0x3c);
5236#     opthdr_ofs = pe_header_offset + 4 + 20;
5237#     num_entries = pe_get32 (dll, opthdr_ofs + 92);
5238#
5239#     if (num_entries < 1) /* no exports */
5240# 	return 1;
5241#
5242#     export_rva = pe_get32 (dll, opthdr_ofs + 96);
5243#     export_size = pe_get32 (dll, opthdr_ofs + 100);
5244#     nsections = pe_get16 (dll, pe_header_offset + 4 +2);
5245#     secptr = (pe_header_offset + 4 + 20 +
5246# 	      pe_get16 (dll, pe_header_offset + 4 + 16));
5247#
5248#     expptr = 0;
5249#     for (i = 0; i < nsections; i++)
5250#     {
5251# 	char sname[8];
5252# 	unsigned long secptr1 = secptr + 40 * i;
5253# 	unsigned long vaddr = pe_get32 (dll, secptr1 + 12);
5254# 	unsigned long vsize = pe_get32 (dll, secptr1 + 16);
5255# 	unsigned long fptr = pe_get32 (dll, secptr1 + 20);
5256# 	lseek(dll, secptr1, SEEK_SET);
5257# 	read(dll, sname, 8);
5258# 	if (vaddr <= export_rva && vaddr+vsize > export_rva)
5259# 	{
5260# 	    expptr = fptr + (export_rva - vaddr);
5261# 	    if (export_rva + export_size > vaddr + vsize)
5262# 		export_size = vsize - (export_rva - vaddr);
5263# 	    break;
5264# 	}
5265#     }
5266#
5267#     expdata = (unsigned char*)malloc(export_size);
5268#     lseek (dll, expptr, SEEK_SET);
5269#     read (dll, expdata, export_size);
5270#     erva = expdata - export_rva;
5271#
5272#     nexp = pe_as32 (expdata+24);
5273#     name_rvas = pe_as32 (expdata+32);
5274#
5275#     printf ("EXPORTS\n");
5276#     for (i = 0; i<nexp; i++)
5277#     {
5278# 	unsigned long name_rva = pe_as32 (erva+name_rvas+i*4);
5279# 	printf ("\t%s @ %ld ;\n", erva+name_rva, 1+ i);
5280#     }
5281#
5282#     return 0;
5283# }
5284# /* impgen.c ends here */
5285])# _LT_AC_FILE_IMPGEN_C
5286
5287# _LT_AC_TAGVAR(VARNAME, [TAGNAME])
5288# ---------------------------------
5289AC_DEFUN([_LT_AC_TAGVAR], [ifelse([$2], [], [$1], [$1_$2])])
5290
5291
5292# old names
5293AC_DEFUN([AM_PROG_LIBTOOL],   [AC_PROG_LIBTOOL])
5294AC_DEFUN([AM_ENABLE_SHARED],  [AC_ENABLE_SHARED($@)])
5295AC_DEFUN([AM_ENABLE_STATIC],  [AC_ENABLE_STATIC($@)])
5296AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
5297AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
5298AC_DEFUN([AM_PROG_LD],        [AC_PROG_LD])
5299AC_DEFUN([AM_PROG_NM],        [AC_PROG_NM])
5300
5301# This is just to silence aclocal about the macro not being used
5302ifelse([AC_DISABLE_FAST_INSTALL])
5303
5304AC_DEFUN([LT_AC_PROG_GCJ],
5305[AC_CHECK_TOOL(GCJ, gcj, no)
5306  test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
5307  AC_SUBST(GCJFLAGS)
5308])
5309
5310AC_DEFUN([LT_AC_PROG_RC],
5311[AC_CHECK_TOOL(RC, windres, no)
5312])
5313
5314############################################################
5315# NOTE: This macro has been submitted for inclusion into   #
5316#  GNU Autoconf as AC_PROG_SED.  When it is available in   #
5317#  a released version of Autoconf we should remove this    #
5318#  macro and use it instead.                               #
5319############################################################
5320# LT_AC_PROG_SED
5321# --------------
5322# Check for a fully-functional sed program, that truncates
5323# as few characters as possible.  Prefer GNU sed if found.
5324AC_DEFUN([LT_AC_PROG_SED],
5325[AC_MSG_CHECKING([for a sed that does not truncate output])
5326AC_CACHE_VAL(lt_cv_path_SED,
5327[# Loop through the user's path and test for sed and gsed.
5328# Then use that list of sed's as ones to test for truncation.
5329as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5330for as_dir in $PATH
5331do
5332  IFS=$as_save_IFS
5333  test -z "$as_dir" && as_dir=.
5334  for ac_prog in sed gsed; do
5335    for ac_exec_ext in '' $ac_executable_extensions; do
5336      if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
5337        _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext"
5338      fi
5339    done
5340  done
5341done
5342
5343  # Create a temporary directory, and hook for its removal unless debugging.
5344$debug ||
5345{
5346  trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
5347  trap '{ (exit 1); exit 1; }' 1 2 13 15
5348}
5349
5350# Create a (secure) tmp directory for tmp files.
5351: ${TMPDIR=/tmp}
5352{
5353  tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` &&
5354  test -n "$tmp" && test -d "$tmp"
5355}  ||
5356{
5357  tmp=$TMPDIR/sed$$-$RANDOM
5358  (umask 077 && mkdir $tmp)
5359} ||
5360{
5361   echo "$me: cannot create a temporary directory in $TMPDIR" >&2
5362   { (exit 1); exit 1; }
5363}
5364  _max=0
5365  _count=0
5366  # Add /usr/xpg4/bin/sed as it is typically found on Solaris
5367  # along with /bin/sed that truncates output.
5368  for _sed in $_sed_list /usr/xpg4/bin/sed; do
5369    test ! -f ${_sed} && break
5370    cat /dev/null > "$tmp/sed.in"
5371    _count=0
5372    echo $ECHO_N "0123456789$ECHO_C" >"$tmp/sed.in"
5373    # Check for GNU sed and select it if it is found.
5374    if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then
5375      lt_cv_path_SED=${_sed}
5376      break;
5377    fi
5378    while true; do
5379      cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp"
5380      mv "$tmp/sed.tmp" "$tmp/sed.in"
5381      cp "$tmp/sed.in" "$tmp/sed.nl"
5382      echo >>"$tmp/sed.nl"
5383      ${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break
5384      cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break
5385      # 10000 chars as input seems more than enough
5386      test $_count -gt 10 && break
5387      _count=`expr $_count + 1`
5388      if test $_count -gt $_max; then
5389        _max=$_count
5390        lt_cv_path_SED=$_sed
5391      fi
5392    done
5393  done
5394  rm -rf "$tmp"
5395])
5396AC_MSG_RESULT([$SED])
5397])
5398