1#! /bin/sh
2
3# ltconfig - Create a system-specific libtool.
4# Copyright (C) 1996-1999 Free Software Foundation, Inc.
5# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
6#
7# This file is free software; you can redistribute it and/or modify it
8# under the terms of the GNU General Public License as published by
9# the Free Software Foundation; either version 2 of the License, or
10# (at your option) any later version.
11#
12# This program is distributed in the hope that it will be useful, but
13# WITHOUT ANY WARRANTY; without even the implied warranty of
14# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15# General Public License for more details.
16#
17# You should have received a copy of the GNU General Public License
18# along with this program; if not, write to the Free Software
19# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20#
21# As a special exception to the GNU General Public License, if you
22# distribute this file as part of a program that contains a
23# configuration script generated by Autoconf, you may include it under
24# the same distribution terms that you use for the rest of that program.
25
26# A lot of this script is taken from autoconf-2.10.
27
28# Check that we are running under the correct shell.
29SHELL=${CONFIG_SHELL-/bin/sh}
30echo=echo
31if test "X$1" = X--no-reexec; then
32  # Discard the --no-reexec flag, and continue.
33  shift
34elif test "X$1" = X--fallback-echo; then
35  # Avoid inline document here, it may be left over
36  :
37elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
38  # Yippee, $echo works!
39  :
40else
41  # Restart under the correct shell.
42  exec "$SHELL" "$0" --no-reexec ${1+"$@"}
43fi
44
45if test "X$1" = X--fallback-echo; then
46  # used as fallback echo
47  shift
48  cat <<EOF
49$*
50EOF
51  exit 0
52fi
53
54# Find the correct PATH separator.  Usually this is `:', but
55# DJGPP uses `;' like DOS.
56if test "X${PATH_SEPARATOR+set}" != "Xset"; then
57  UNAME=${UNAME-`uname 2>/dev/null`}
58  case X$UNAME in
59    *-DOS) PATH_SEPARATOR=';' ;;
60    *)     PATH_SEPARATOR=':' ;;
61  esac
62fi
63
64# The HP-UX ksh and POSIX shell print the target directory to stdout
65# if CDPATH is set.
66if test "${CDPATH+set}" = set; then CDPATH=; export CDPATH; fi
67
68if test "X${echo_test_string+set}" != "Xset"; then
69  # find a string as large as possible, as long as the shell can cope with it
70  for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do
71    # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
72    if (echo_test_string="`eval $cmd`") 2>/dev/null &&
73       echo_test_string="`eval $cmd`" &&
74       (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null; then
75      break
76    fi
77  done
78fi
79
80if test "X`($echo '\t') 2>/dev/null`" != 'X\t' ||
81   test "X`($echo "$echo_test_string") 2>/dev/null`" != X"$echo_test_string"; then
82  # The Solaris, AIX, and Digital Unix default echo programs unquote
83  # backslashes.  This makes it impossible to quote backslashes using
84  #   echo "$something" | sed 's/\\/\\\\/g'
85  #
86  # So, first we look for a working echo in the user's PATH.
87
88  IFS="${IFS= 	}"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
89  for dir in $PATH /usr/ucb; do
90    if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
91       test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
92       test "X`($dir/echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
93      echo="$dir/echo"
94      break
95    fi
96  done
97  IFS="$save_ifs"
98
99  if test "X$echo" = Xecho; then
100    # We didn't find a better echo, so look for alternatives.
101    if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
102       test "X`(print -r "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
103      # This shell has a builtin print -r that does the trick.
104      echo='print -r'
105    elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
106	 test "X$CONFIG_SHELL" != X/bin/ksh; then
107      # If we have ksh, try running ltconfig again with it.
108      ORIGINAL_CONFIG_SHELL="${CONFIG_SHELL-/bin/sh}"
109      export ORIGINAL_CONFIG_SHELL
110      CONFIG_SHELL=/bin/ksh
111      export CONFIG_SHELL
112      exec "$CONFIG_SHELL" "$0" --no-reexec ${1+"$@"}
113    else
114      # Try using printf.
115      echo='printf "%s\n"'
116      if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
117	 test "X`($echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
118	# Cool, printf works
119	:
120      elif test "X`("$ORIGINAL_CONFIG_SHELL" "$0" --fallback-echo '\t') 2>/dev/null`" = 'X\t' &&
121	   test "X`("$ORIGINAL_CONFIG_SHELL" "$0" --fallback-echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
122	CONFIG_SHELL="$ORIGINAL_CONFIG_SHELL"
123	export CONFIG_SHELL
124	SHELL="$CONFIG_SHELL"
125	export SHELL
126	echo="$CONFIG_SHELL $0 --fallback-echo"
127      elif test "X`("$CONFIG_SHELL" "$0" --fallback-echo '\t') 2>/dev/null`" = 'X\t' &&
128	   test "X`("$CONFIG_SHELL" "$0" --fallback-echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
129	echo="$CONFIG_SHELL $0 --fallback-echo"
130      else
131	# maybe with a smaller string...
132	prev=:
133
134	for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do
135	  if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null; then
136	    break
137	  fi
138	  prev="$cmd"
139	done
140
141	if test "$prev" != 'sed 50q "$0"'; then
142	  echo_test_string=`eval $prev`
143	  export echo_test_string
144	  exec "${ORIGINAL_CONFIG_SHELL}" "$0" ${1+"$@"}
145	else
146	  # Oops.  We lost completely, so just stick with echo.
147	  echo=echo
148	fi
149      fi
150    fi
151  fi
152fi
153
154# Sed substitution that helps us do robust quoting.  It backslashifies
155# metacharacters that are still active within double-quoted strings.
156Xsed='sed -e s/^X//'
157sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'
158
159# Same as above, but do not quote variable references.
160double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g'
161
162# Sed substitution to delay expansion of an escaped shell variable in a
163# double_quote_subst'ed string.
164delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
165
166# The name of this program.
167progname=`$echo "X$0" | $Xsed -e 's%^.*/%%'`
168
169# Constants:
170PROGRAM=ltconfig
171PACKAGE=libtool
172VERSION=1.3
173TIMESTAMP=" (1.385.2.117 1999/04/29 13:07:13)"
174ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.c 1>&5'
175ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.c $LIBS 1>&5'
176rm="rm -f"
177
178help="Try \`$progname --help' for more information."
179
180# Global variables:
181default_ofile=libtool
182can_build_shared=yes
183enable_shared=yes
184# All known linkers require a `.a' archive for static linking.
185enable_static=yes
186enable_fast_install=yes
187enable_dlopen=unknown
188enable_win32_dll=no
189ltmain=
190silent=
191srcdir=
192ac_config_guess=
193ac_config_sub=
194host=
195nonopt=
196ofile="$default_ofile"
197verify_host=yes
198with_gcc=no
199with_gnu_ld=no
200need_locks=yes
201ac_ext=c
202objext=o
203libext=a
204cache_file=
205
206old_AR="$AR"
207old_CC="$CC"
208old_CFLAGS="$CFLAGS"
209old_CPPFLAGS="$CPPFLAGS"
210old_LDFLAGS="$LDFLAGS"
211old_LD="$LD"
212old_LN_S="$LN_S"
213old_LIBS="$LIBS"
214old_NM="$NM"
215old_RANLIB="$RANLIB"
216old_DLLTOOL="$DLLTOOL"
217old_OBJDUMP="$OBJDUMP"
218old_AS="$AS"
219
220# Parse the command line options.
221args=
222prev=
223for option
224do
225  case "$option" in
226  -*=*) optarg=`echo "$option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
227  *) optarg= ;;
228  esac
229
230  # If the previous option needs an argument, assign it.
231  if test -n "$prev"; then
232    eval "$prev=\$option"
233    prev=
234    continue
235  fi
236
237  case "$option" in
238  --help) cat <<EOM
239Usage: $progname [OPTION]... [HOST [LTMAIN]]
240
241Generate a system-specific libtool script.
242
243    --debug                enable verbose shell tracing
244    --disable-shared       do not build shared libraries
245    --disable-static       do not build static libraries
246    --disable-fast-install do not optimize for fast installation
247    --enable-dlopen        enable dlopen support
248    --enable-win32-dll     enable building dlls on win32 hosts
249    --help                 display this help and exit
250    --no-verify            do not verify that HOST is a valid host type
251-o, --output=FILE          specify the output file [default=$default_ofile]
252    --quiet                same as \`--silent'
253    --silent               do not print informational messages
254    --srcdir=DIR           find \`config.guess' in DIR
255    --version              output version information and exit
256    --with-gcc             assume that the GNU C compiler will be used
257    --with-gnu-ld          assume that the C compiler uses the GNU linker
258    --disable-lock         disable file locking
259    --cache-file=FILE      configure cache file
260
261LTMAIN is the \`ltmain.sh' shell script fragment or \`ltmain.c' program
262that provides basic libtool functionality.
263
264HOST is the canonical host system name [default=guessed].
265EOM
266  exit 0
267  ;;
268
269  --debug)
270    echo "$progname: enabling shell trace mode"
271    set -x
272    ;;
273
274  --disable-shared) enable_shared=no ;;
275
276  --disable-static) enable_static=no ;;
277
278  --disable-fast-install) enable_fast_install=no ;;
279
280  --enable-dlopen) enable_dlopen=yes ;;
281
282  --enable-win32-dll) enable_win32_dll=yes ;;
283
284  --quiet | --silent) silent=yes ;;
285
286  --srcdir) prev=srcdir ;;
287  --srcdir=*) srcdir="$optarg" ;;
288
289  --no-verify) verify_host=no ;;
290
291  --output | -o) prev=ofile ;;
292  --output=*) ofile="$optarg" ;;
293
294  --version) echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP"; exit 0 ;;
295
296  --with-gcc) with_gcc=yes ;;
297  --with-gnu-ld) with_gnu_ld=yes ;;
298
299  --disable-lock) need_locks=no ;;
300
301  --cache-file=*) cache_file="$optarg" ;;
302
303  -*)
304    echo "$progname: unrecognized option \`$option'" 1>&2
305    echo "$help" 1>&2
306    exit 1
307    ;;
308
309  *)
310    if test -z "$ltmain"; then
311      ltmain="$option"
312    elif test -z "$host"; then
313# This generates an unnecessary warning for sparc-sun-solaris4.1.3_U1
314#      if test -n "`echo $option| sed 's/[-a-z0-9.]//g'`"; then
315#        echo "$progname: warning \`$option' is not a valid host type" 1>&2
316#      fi
317      host="$option"
318    else
319      echo "$progname: too many arguments" 1>&2
320      echo "$help" 1>&2
321      exit 1
322    fi ;;
323  esac
324done
325
326if test -z "$ltmain"; then
327  echo "$progname: you must specify a LTMAIN file" 1>&2
328  echo "$help" 1>&2
329  exit 1
330fi
331
332if test ! -f "$ltmain"; then
333  echo "$progname: \`$ltmain' does not exist" 1>&2
334  echo "$help" 1>&2
335  exit 1
336fi
337
338# Quote any args containing shell metacharacters.
339ltconfig_args=
340for arg
341do
342  case "$arg" in
343  *" "*|*"	"*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
344  ltconfig_args="$ltconfig_args '$arg'" ;;
345  *) ltconfig_args="$ltconfig_args $arg" ;;
346  esac
347done
348
349# A relevant subset of AC_INIT.
350
351# File descriptor usage:
352# 0 standard input
353# 1 file creation
354# 2 errors and warnings
355# 3 some systems may open it to /dev/tty
356# 4 used on the Kubota Titan
357# 5 compiler messages saved in config.log
358# 6 checking for... messages and results
359if test "$silent" = yes; then
360  exec 6>/dev/null
361else
362  exec 6>&1
363fi
364exec 5>>./config.log
365
366# NLS nuisances.
367# Only set LANG and LC_ALL to C if already set.
368# These must not be set unconditionally because not all systems understand
369# e.g. LANG=C (notably SCO).
370if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
371if test "${LANG+set}"   = set; then LANG=C;   export LANG;   fi
372
373if test -n "$cache_file" && test -r "$cache_file"; then
374  echo "loading cache $cache_file within ltconfig"
375  . $cache_file
376fi
377
378if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
379  # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
380  if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
381    ac_n= ac_c='
382' ac_t='	'
383  else
384    ac_n=-n ac_c= ac_t=
385  fi
386else
387  ac_n= ac_c='\c' ac_t=
388fi
389
390if test -z "$srcdir"; then
391  # Assume the source directory is the same one as the path to LTMAIN.
392  srcdir=`$echo "X$ltmain" | $Xsed -e 's%/[^/]*$%%'`
393  test "$srcdir" = "$ltmain" && srcdir=.
394fi
395
396trap "$rm conftest*; exit 1" 1 2 15
397if test "$verify_host" = yes; then
398  # Check for config.guess and config.sub.
399  ac_aux_dir=
400  for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
401    if test -f $ac_dir/config.guess; then
402      ac_aux_dir=$ac_dir
403      break
404    fi
405  done
406  if test -z "$ac_aux_dir"; then
407    echo "$progname: cannot find config.guess in $srcdir $srcdir/.. $srcdir/../.." 1>&2
408    echo "$help" 1>&2
409    exit 1
410  fi
411  ac_config_guess=$ac_aux_dir/config.guess
412  ac_config_sub=$ac_aux_dir/config.sub
413
414  # Make sure we can run config.sub.
415  if $SHELL $ac_config_sub sun4 >/dev/null 2>&1; then :
416  else
417    echo "$progname: cannot run $ac_config_sub" 1>&2
418    echo "$help" 1>&2
419    exit 1
420  fi
421
422  echo $ac_n "checking host system type""... $ac_c" 1>&6
423
424  host_alias=$host
425  case "$host_alias" in
426  "")
427    if host_alias=`$SHELL $ac_config_guess`; then :
428    else
429      echo "$progname: cannot guess host type; you must specify one" 1>&2
430      echo "$help" 1>&2
431      exit 1
432    fi ;;
433  esac
434  host=`$SHELL $ac_config_sub $host_alias`
435  echo "$ac_t$host" 1>&6
436
437  # Make sure the host verified.
438  test -z "$host" && exit 1
439
440elif test -z "$host"; then
441  echo "$progname: you must specify a host type if you use \`--no-verify'" 1>&2
442  echo "$help" 1>&2
443  exit 1
444else
445  host_alias=$host
446fi
447
448# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
449case "$host_os" in
450linux-gnu*) ;;
451linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
452esac
453
454host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
455host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
456host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
457
458case "$host_os" in
459aix3*)
460  # AIX sometimes has problems with the GCC collect2 program.  For some
461  # reason, if we set the COLLECT_NAMES environment variable, the problems
462  # vanish in a puff of smoke.
463  if test "${COLLECT_NAMES+set}" != set; then
464    COLLECT_NAMES=
465    export COLLECT_NAMES
466  fi
467  ;;
468esac
469
470# Determine commands to create old-style static archives.
471old_archive_cmds='$AR cru $oldlib$oldobjs'
472old_postinstall_cmds='chmod 644 $oldlib'
473old_postuninstall_cmds=
474
475# Set a sane default for `AR'.
476test -z "$AR" && AR=ar
477
478# Set a sane default for `OBJDUMP'.
479test -z "$OBJDUMP" && OBJDUMP=objdump
480
481# If RANLIB is not set, then run the test.
482if test "${RANLIB+set}" != "set"; then
483  result=no
484
485  echo $ac_n "checking for ranlib... $ac_c" 1>&6
486  IFS="${IFS= 	}"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
487  for dir in $PATH; do
488    test -z "$dir" && dir=.
489    if test -f $dir/ranlib || test -f $dir/ranlib$ac_exeext; then
490      RANLIB="ranlib"
491      result="ranlib"
492      break
493    fi
494  done
495  IFS="$save_ifs"
496
497  echo "$ac_t$result" 1>&6
498fi
499
500if test -n "$RANLIB"; then
501  old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
502  old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
503fi
504
505# Set sane defaults for `DLLTOOL', `OBJDUMP', and `AS', used on cygwin.
506test -z "$DLLTOOL" && DLLTOOL=dlltool
507test -z "$OBJDUMP" && OBJDUMP=objdump
508test -z "$AS" && AS=as
509
510# Check to see if we are using GCC.
511if test "$with_gcc" != yes || test -z "$CC"; then
512  # If CC is not set, then try to find GCC or a usable CC.
513  if test -z "$CC"; then
514    echo $ac_n "checking for gcc... $ac_c" 1>&6
515    IFS="${IFS= 	}"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
516    for dir in $PATH; do
517      test -z "$dir" && dir=.
518      if test -f $dir/gcc || test -f $dir/gcc$ac_exeext; then
519	CC="gcc"
520	break
521      fi
522    done
523    IFS="$save_ifs"
524
525    if test -n "$CC"; then
526      echo "$ac_t$CC" 1>&6
527    else
528      echo "$ac_t"no 1>&6
529    fi
530  fi
531
532  # Not "gcc", so try "cc", rejecting "/usr/ucb/cc".
533  if test -z "$CC"; then
534    echo $ac_n "checking for cc... $ac_c" 1>&6
535    IFS="${IFS= 	}"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
536    cc_rejected=no
537    for dir in $PATH; do
538      test -z "$dir" && dir=.
539      if test -f $dir/cc || test -f $dir/cc$ac_exeext; then
540	if test "$dir/cc" = "/usr/ucb/cc"; then
541	  cc_rejected=yes
542	  continue
543	fi
544	CC="cc"
545	break
546      fi
547    done
548    IFS="$save_ifs"
549    if test $cc_rejected = yes; then
550      # We found a bogon in the path, so make sure we never use it.
551      set dummy $CC
552      shift
553      if test $# -gt 0; then
554	# We chose a different compiler from the bogus one.
555	# However, it has the same name, so the bogon will be chosen
556	# first if we set CC to just the name; use the full file name.
557	shift
558	set dummy "$dir/cc" "$@"
559	shift
560	CC="$@"
561      fi
562    fi
563
564    if test -n "$CC"; then
565      echo "$ac_t$CC" 1>&6
566    else
567      echo "$ac_t"no 1>&6
568    fi
569
570    if test -z "$CC"; then
571      echo "$progname: error: no acceptable cc found in \$PATH" 1>&2
572      exit 1
573    fi
574  fi
575
576  # Now see if the compiler is really GCC.
577  with_gcc=no
578  echo $ac_n "checking whether we are using GNU C... $ac_c" 1>&6
579  echo "$progname:579: checking whether we are using GNU C" >&5
580
581  $rm conftest.c
582  cat > conftest.c <<EOF
583#ifdef __GNUC__
584  yes;
585#endif
586EOF
587  if { ac_try='${CC-cc} -E conftest.c'; { (eval echo $progname:587: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
588    with_gcc=yes
589  fi
590  $rm conftest.c
591  echo "$ac_t$with_gcc" 1>&6
592fi
593
594# Allow CC to be a program name with arguments.
595set dummy $CC
596compiler="$2"
597
598echo $ac_n "checking for object suffix... $ac_c" 1>&6
599$rm conftest*
600echo 'int i = 1;' > conftest.c
601echo "$progname:601: checking for object suffix" >& 5
602if { (eval echo $progname:602: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; }; then
603  # Append any warnings to the config.log.
604  cat conftest.err 1>&5
605
606  for ac_file in conftest.*; do
607    case $ac_file in
608    *.c) ;;
609    *) objext=`echo $ac_file | sed -e s/conftest.//` ;;
610    esac
611  done
612else
613  cat conftest.err 1>&5
614  echo "$progname: failed program was:" >&5
615  cat conftest.c >&5
616fi
617$rm conftest*
618echo "$ac_t$objext" 1>&6
619
620echo $ac_n "checking for $compiler option to produce PIC... $ac_c" 1>&6
621pic_flag=
622special_shlib_compile_flags=
623wl=
624link_static_flag=
625no_builtin_flag=
626
627if test "$with_gcc" = yes; then
628  wl='-Wl,'
629  link_static_flag='-static'
630
631  case "$host_os" in
632  beos* | irix5* | irix6* | osf3* | osf4*)
633    # PIC is the default for these OSes.
634    ;;
635  aix*)
636    # Below there is a dirty hack to force normal static linking with -ldl
637    # The problem is because libdl dynamically linked with both libc and
638    # libC (AIX C++ library), which obviously doesn't included in libraries
639    # list by gcc. This cause undefined symbols with -static flags.
640    # This hack allows C programs to be linked with "-static -ldl", but
641    # we not sure about C++ programs.
642    link_static_flag="$link_static_flag ${wl}-lC"
643    ;;
644  cygwin* | mingw* | os2*)
645    # We can build DLLs from non-PIC.
646    ;;
647  amigaos*)
648    # FIXME: we need at least 68020 code to build shared libraries, but
649    # adding the `-m68020' flag to GCC prevents building anything better,
650    # like `-m68040'.
651    pic_flag='-m68020 -resident32 -malways-restore-a4'
652    ;;
653  *)
654    pic_flag='-fPIC'
655    ;;
656  esac
657else
658  # PORTME Check for PIC flags for the system compiler.
659  case "$host_os" in
660  aix3* | aix4*)
661    # All AIX code is PIC.
662    link_static_flag='-bnso -bI:/lib/syscalls.exp'
663    ;;
664
665  hpux9* | hpux10* | hpux11*)
666    # Is there a better link_static_flag that works with the bundled CC?
667    wl='-Wl,'
668    link_static_flag="${wl}-a ${wl}archive"
669    pic_flag='+Z'
670    ;;
671
672  irix5* | irix6*)
673    wl='-Wl,'
674    link_static_flag='-non_shared'
675    # PIC (with -KPIC) is the default.
676    ;;
677
678  cygwin* | mingw* | os2*)
679    # We can build DLLs from non-PIC.
680    ;;
681
682  osf3* | osf4*)
683    # All OSF/1 code is PIC.
684    wl='-Wl,'
685    link_static_flag='-non_shared'
686    ;;
687
688  sco3.2v5*)
689    pic_flag='-Kpic'
690    link_static_flag='-dn'
691    special_shlib_compile_flags='-belf'
692    ;;
693
694  solaris*)
695    pic_flag='-KPIC'
696    link_static_flag='-Bstatic'
697    wl='-Wl,'
698    ;;
699
700  sunos4*)
701    pic_flag='-PIC'
702    link_static_flag='-Bstatic'
703    wl='-Qoption ld '
704    ;;
705
706  sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
707    pic_flag='-KPIC'
708    link_static_flag='-Bstatic'
709    wl='-Wl,'
710    ;;
711
712  uts4*)
713    pic_flag='-pic'
714    link_static_flag='-Bstatic'
715    ;;
716
717  *)
718    can_build_shared=no
719    ;;
720  esac
721fi
722
723if test -n "$pic_flag"; then
724  echo "$ac_t$pic_flag" 1>&6
725
726  # Check to make sure the pic_flag actually works.
727  echo $ac_n "checking if $compiler PIC flag $pic_flag works... $ac_c" 1>&6
728  $rm conftest*
729  echo "int some_variable = 0;" > conftest.c
730  save_CFLAGS="$CFLAGS"
731  CFLAGS="$CFLAGS $pic_flag -DPIC"
732  echo "$progname:732: checking if $compiler PIC flag $pic_flag works" >&5
733  if { (eval echo $progname:733: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.$objext; then
734    # Append any warnings to the config.log.
735    cat conftest.err 1>&5
736
737    case "$host_os" in
738    hpux9* | hpux10* | hpux11*)
739      # On HP-UX, both CC and GCC only warn that PIC is supported... then they
740      # create non-PIC objects.  So, if there were any warnings, we assume that
741      # PIC is not supported.
742      if test -s conftest.err; then
743	echo "$ac_t"no 1>&6
744	can_build_shared=no
745	pic_flag=
746      else
747	echo "$ac_t"yes 1>&6
748	pic_flag=" $pic_flag"
749      fi
750      ;;
751    *)
752      echo "$ac_t"yes 1>&6
753      pic_flag=" $pic_flag"
754      ;;
755    esac
756  else
757    # Append any errors to the config.log.
758    cat conftest.err 1>&5
759    can_build_shared=no
760    pic_flag=
761    echo "$ac_t"no 1>&6
762  fi
763  CFLAGS="$save_CFLAGS"
764  $rm conftest*
765else
766  echo "$ac_t"none 1>&6
767fi
768
769# Check to see if options -o and -c are simultaneously supported by compiler
770echo $ac_n "checking if $compiler supports -c -o file.o... $ac_c" 1>&6
771$rm -r conftest 2>/dev/null
772mkdir conftest
773cd conftest
774$rm conftest*
775echo "int some_variable = 0;" > conftest.c
776mkdir out
777# According to Tom Tromey, Ian Lance Taylor reported there are C compilers
778# that will create temporary files in the current directory regardless of
779# the output directory.  Thus, making CWD read-only will cause this test
780# to fail, enabling locking or at least warning the user not to do parallel
781# builds.
782chmod -w .
783save_CFLAGS="$CFLAGS"
784CFLAGS="$CFLAGS -o out/conftest2.o"
785echo "$progname:785: checking if $compiler supports -c -o file.o" >&5
786if { (eval echo $progname:786: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.o; then
787
788  # The compiler can only warn and ignore the option if not recognized
789  # So say no if there are warnings
790    if test -s out/conftest.err; then
791      echo "$ac_t"no 1>&6
792      compiler_c_o=no
793    else
794      echo "$ac_t"yes 1>&6
795      compiler_c_o=yes
796    fi
797else
798  # Append any errors to the config.log.
799  cat out/conftest.err 1>&5
800  compiler_c_o=no
801  echo "$ac_t"no 1>&6
802fi
803CFLAGS="$save_CFLAGS"
804chmod u+w .
805$rm conftest* out/*
806rmdir out
807cd ..
808rmdir conftest
809$rm -r conftest 2>/dev/null
810
811if test x"$compiler_c_o" = x"yes"; then
812  # Check to see if we can write to a .lo
813  echo $ac_n "checking if $compiler supports -c -o file.lo... $ac_c" 1>&6
814  $rm conftest*
815  echo "int some_variable = 0;" > conftest.c
816  save_CFLAGS="$CFLAGS"
817  CFLAGS="$CFLAGS -c -o conftest.lo"
818  echo "$progname:818: checking if $compiler supports -c -o file.lo" >&5
819if { (eval echo $progname:819: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.lo; then
820
821    # The compiler can only warn and ignore the option if not recognized
822    # So say no if there are warnings
823      if test -s conftest.err; then
824	echo "$ac_t"no 1>&6
825	compiler_o_lo=no
826      else
827	echo "$ac_t"yes 1>&6
828	compiler_o_lo=yes
829      fi
830  else
831    # Append any errors to the config.log.
832    cat conftest.err 1>&5
833    compiler_o_lo=no
834    echo "$ac_t"no 1>&6
835  fi
836  CFLAGS="$save_CFLAGS"
837  $rm conftest*
838else
839  compiler_o_lo=no
840fi
841
842# Check to see if we can do hard links to lock some files if needed
843hard_links="nottested"
844if test "$compiler_c_o" = no && test "$need_locks" != no; then
845  # do not overwrite the value of need_locks provided by the user
846  echo $ac_n "checking if we can lock with hard links... $ac_c" 1>&6
847  hard_links=yes
848  $rm conftest*
849  ln conftest.a conftest.b 2>/dev/null && hard_links=no
850  touch conftest.a
851  ln conftest.a conftest.b 2>&5 || hard_links=no
852  ln conftest.a conftest.b 2>/dev/null && hard_links=no
853  echo "$ac_t$hard_links" 1>&6
854  $rm conftest*
855  if test "$hard_links" = no; then
856    echo "*** WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2
857    need_locks=warn
858  fi
859else
860  need_locks=no
861fi
862
863if test "$with_gcc" = yes; then
864  # Check to see if options -fno-rtti -fno-exceptions are supported by compiler
865  echo $ac_n "checking if $compiler supports -fno-rtti -fno-exceptions ... $ac_c" 1>&6
866  $rm conftest*
867  echo "int some_variable = 0;" > conftest.c
868  save_CFLAGS="$CFLAGS"
869  CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.c"
870  echo "$progname:870: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
871  if { (eval echo $progname:871: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.o; then
872
873    # The compiler can only warn and ignore the option if not recognized
874    # So say no if there are warnings
875      if test -s conftest.err; then
876	echo "$ac_t"no 1>&6
877	compiler_rtti_exceptions=no
878      else
879	echo "$ac_t"yes 1>&6
880	compiler_rtti_exceptions=yes
881      fi
882  else
883    # Append any errors to the config.log.
884    cat conftest.err 1>&5
885    compiler_rtti_exceptions=no
886    echo "$ac_t"no 1>&6
887  fi
888  CFLAGS="$save_CFLAGS"
889  $rm conftest*
890
891  if test "$compiler_rtti_exceptions" = "yes"; then
892    no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions'
893  else
894    no_builtin_flag=' -fno-builtin'
895  fi
896
897fi
898
899# Check for any special shared library compilation flags.
900if test -n "$special_shlib_compile_flags"; then
901  echo "$progname: warning: \`$CC' requires \`$special_shlib_compile_flags' to build shared libraries" 1>&2
902  if echo "$old_CC $old_CFLAGS " | egrep -e "[ 	]$special_shlib_compile_flags[ 	]" >/dev/null; then :
903  else
904    echo "$progname: add \`$special_shlib_compile_flags' to the CC or CFLAGS env variable and reconfigure" 1>&2
905    can_build_shared=no
906  fi
907fi
908
909echo $ac_n "checking if $compiler static flag $link_static_flag works... $ac_c" 1>&6
910$rm conftest*
911echo 'main(){return(0);}' > conftest.c
912save_LDFLAGS="$LDFLAGS"
913LDFLAGS="$LDFLAGS $link_static_flag"
914echo "$progname:914: checking if $compiler static flag $link_static_flag works" >&5
915if { (eval echo $progname:915: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
916  echo "$ac_t$link_static_flag" 1>&6
917else
918  echo "$ac_t"none 1>&6
919  link_static_flag=
920fi
921LDFLAGS="$save_LDFLAGS"
922$rm conftest*
923
924if test -z "$LN_S"; then
925  # Check to see if we can use ln -s, or we need hard links.
926  echo $ac_n "checking whether ln -s works... $ac_c" 1>&6
927  $rm conftest.dat
928  if ln -s X conftest.dat 2>/dev/null; then
929    $rm conftest.dat
930    LN_S="ln -s"
931  else
932    LN_S=ln
933  fi
934  if test "$LN_S" = "ln -s"; then
935    echo "$ac_t"yes 1>&6
936  else
937    echo "$ac_t"no 1>&6
938  fi
939fi
940
941# Make sure LD is an absolute path.
942if test -z "$LD"; then
943  ac_prog=ld
944  if test "$with_gcc" = yes; then
945    # Check if gcc -print-prog-name=ld gives a path.
946    echo $ac_n "checking for ld used by GCC... $ac_c" 1>&6
947    echo "$progname:947: checking for ld used by GCC" >&5
948    ac_prog=`($CC -print-prog-name=ld) 2>&5`
949    case "$ac_prog" in
950    # Accept absolute paths.
951    [\\/]* | [A-Za-z]:[\\/]*)
952      re_direlt='/[^/][^/]*/\.\./'
953      # Canonicalize the path of ld
954      ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
955      while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
956	ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
957      done
958      test -z "$LD" && LD="$ac_prog"
959      ;;
960    "")
961      # If it fails, then pretend we are not using GCC.
962      ac_prog=ld
963      ;;
964    *)
965      # If it is relative, then search for the first ld in PATH.
966      with_gnu_ld=unknown
967      ;;
968    esac
969  elif test "$with_gnu_ld" = yes; then
970    echo $ac_n "checking for GNU ld... $ac_c" 1>&6
971    echo "$progname:971: checking for GNU ld" >&5
972  else
973    echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
974    echo "$progname:974: checking for non-GNU ld" >&5
975  fi
976
977  if test -z "$LD"; then
978    IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
979    for ac_dir in $PATH; do
980      test -z "$ac_dir" && ac_dir=.
981      if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
982	LD="$ac_dir/$ac_prog"
983	# Check to see if the program is GNU ld.  I'd rather use --version,
984	# but apparently some GNU ld's only accept -v.
985	# Break only if it was the GNU/non-GNU ld that we prefer.
986	if "$LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
987	  test "$with_gnu_ld" != no && break
988	else
989	  test "$with_gnu_ld" != yes && break
990	fi
991      fi
992    done
993    IFS="$ac_save_ifs"
994  fi
995
996  if test -n "$LD"; then
997    echo "$ac_t$LD" 1>&6
998  else
999    echo "$ac_t"no 1>&6
1000  fi
1001
1002  if test -z "$LD"; then
1003    echo "$progname: error: no acceptable ld found in \$PATH" 1>&2
1004    exit 1
1005  fi
1006fi
1007
1008# Check to see if it really is or is not GNU ld.
1009echo $ac_n "checking if the linker ($LD) is GNU ld... $ac_c" 1>&6
1010# I'd rather use --version here, but apparently some GNU ld's only accept -v.
1011if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
1012  with_gnu_ld=yes
1013else
1014  with_gnu_ld=no
1015fi
1016echo "$ac_t$with_gnu_ld" 1>&6
1017
1018# See if the linker supports building shared libraries.
1019echo $ac_n "checking whether the linker ($LD) supports shared libraries... $ac_c" 1>&6
1020
1021allow_undefined_flag=
1022no_undefined_flag=
1023need_lib_prefix=unknown
1024need_version=unknown
1025# when you set need_version to no, make sure it does not cause -set_version
1026# flags to be left without arguments
1027archive_cmds=
1028archive_expsym_cmds=
1029old_archive_from_new_cmds=
1030export_dynamic_flag_spec=
1031whole_archive_flag_spec=
1032thread_safe_flag_spec=
1033hardcode_libdir_flag_spec=
1034hardcode_libdir_separator=
1035hardcode_direct=no
1036hardcode_minus_L=no
1037hardcode_shlibpath_var=unsupported
1038runpath_var=
1039always_export_symbols=no
1040export_symbols_cmds='$NM $libobjs | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols'
1041# include_expsyms should be a list of space-separated symbols to be *always*
1042# included in the symbol list
1043include_expsyms=
1044# exclude_expsyms can be an egrep regular expression of symbols to exclude
1045# it will be wrapped by ` (' and `)$', so one must not match beginning or
1046# end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
1047# as well as any symbol that contains `d'.
1048exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
1049# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
1050# platforms (ab)use it in PIC code, but their linkers get confused if
1051# the symbol is explicitly referenced.  Since portable code cannot
1052# rely on this symbol name, it's probably fine to never include it in
1053# preloaded symbol tables.
1054
1055case "$host_os" in
1056cygwin* | mingw*)
1057  # FIXME: the MSVC++ port hasn't been tested in a loooong time
1058  # When not using gcc, we currently assume that we are using
1059  # Microsoft Visual C++.
1060  if test "$with_gcc" != yes; then
1061    with_gnu_ld=no
1062  fi
1063  ;;
1064
1065esac
1066
1067ld_shlibs=yes
1068if test "$with_gnu_ld" = yes; then
1069  # If archive_cmds runs LD, not CC, wlarc should be empty
1070  wlarc='${wl}'
1071
1072  # See if GNU ld supports shared libraries.
1073  case "$host_os" in
1074  aix3* | aix4*)
1075    # On AIX, the GNU linker is very broken
1076    ld_shlibs=no
1077    cat <<EOF 1>&2
1078
1079*** Warning: the GNU linker, at least up to release 2.9.1, is reported
1080*** to be unable to reliably create shared libraries on AIX.
1081*** Therefore, libtool is disabling shared libraries support.  If you
1082*** really care for shared libraries, you may want to modify your PATH
1083*** so that a non-GNU linker is found, and then restart.
1084
1085EOF
1086    ;;
1087
1088  amigaos*)
1089    archive_cmds='$rm $objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $objdir/a2ixlibrary.data~$AR cru $lib $libobjs~$RANLIB $lib~(cd $objdir && a2ixlibrary -32)'
1090    hardcode_libdir_flag_spec='-L$libdir'
1091    hardcode_minus_L=yes
1092
1093    # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
1094    # that the semantics of dynamic libraries on AmigaOS, at least up
1095    # to version 4, is to share data among multiple programs linked
1096    # with the same dynamic library.  Since this doesn't match the
1097    # behavior of shared libraries on other platforms, we can use
1098    # them.
1099    ld_shlibs=no
1100    ;;
1101
1102  beos*)
1103    if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
1104      allow_undefined_flag=unsupported
1105      # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
1106      # support --undefined.  This deserves some investigation.  FIXME
1107      archive_cmds='$CC -nostart $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib'
1108    else
1109      ld_shlibs=no
1110    fi
1111    ;;
1112
1113  cygwin* | mingw*)
1114    # hardcode_libdir_flag_spec is actually meaningless, as there is
1115    # no search path for DLLs.
1116    hardcode_libdir_flag_spec='-L$libdir'
1117    allow_undefined_flag=unsupported
1118    always_export_symbols=yes
1119
1120    # Extract the symbol export list from an `--export-all' def file,
1121    # then regenerate the def file from the symbol export list, so that
1122    # the compiled dll only exports the symbol export list.
1123    export_symbols_cmds='rm -f $objdir/$soname-ltdll.c~
1124      sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $objdir/$soname-ltdll.c~
1125      (cd $objdir && $CC -c $soname-ltdll.c)~
1126      $DLLTOOL --export-all --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --output-def $objdir/$soname-def  $objdir/$soname-ltdll.$objext $libobjs~
1127      sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]* ; *//" < $objdir/$soname-def > $export_symbols'
1128
1129    archive_expsym_cmds='echo EXPORTS > $objdir/$soname-def~
1130      _lt_hint=1;
1131      for symbol in `cat $export_symbols`; do
1132	echo "	\$symbol @ \$_lt_hint ; " >> $objdir/$soname-def;
1133	_lt_hint=`expr 1 + \$_lt_hint`;
1134      done~
1135      $CC -Wl,--base-file,$objdir/$soname-base -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts~
1136      $DLLTOOL --as=$AS --dllname $soname --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~
1137      $CC -Wl,--base-file,$objdir/$soname-base $objdir/$soname-exp -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts~
1138      $DLLTOOL --as=$AS --dllname $soname --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~
1139      $CC $objdir/$soname-exp -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts'
1140
1141      old_archive_from_new_cmds='$DLLTOOL --as=$AS --dllname $soname --def $objdir/$soname-def --output-lib $objdir/$libname.a'
1142    ;;
1143
1144  netbsd*)
1145    if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
1146      archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib'
1147      archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
1148    else
1149      archive_cmds='$LD -Bshareable $libobjs $deplibs $linkopts -o $lib'
1150      # can we support soname and/or expsyms with a.out? -oliva
1151    fi
1152    ;;
1153
1154  sunos4*)
1155    archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linkopts'
1156    wlarc=
1157    hardcode_direct=yes
1158    hardcode_shlibpath_var=no
1159    ;;
1160
1161  *)
1162    if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
1163      archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib'
1164      archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
1165    else
1166      ld_shlibs=no
1167    fi
1168    ;;
1169  esac
1170
1171  if test "$ld_shlibs" = yes; then
1172    runpath_var=LD_RUN_PATH
1173    hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir'
1174    export_dynamic_flag_spec='${wl}--export-dynamic'
1175    whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
1176  fi
1177else
1178  # PORTME fill in a description of your system's linker (not GNU ld)
1179  case "$host_os" in
1180  aix3*)
1181    allow_undefined_flag=unsupported
1182    always_export_symbols=yes
1183    archive_expsym_cmds='$LD -o $objdir/$soname $libobjs $deplibs $linkopts -bE:$export_symbols -T512 -H512 -bM:SRE~$AR cru $lib $objdir/$soname'
1184    # Note: this linker hardcodes the directories in LIBPATH if there
1185    # are no directories specified by -L.
1186    hardcode_minus_L=yes
1187    if test "$with_gcc" = yes && test -z "$link_static_flag"; then
1188      # Neither direct hardcoding nor static linking is supported with a
1189      # broken collect2.
1190      hardcode_direct=unsupported
1191    fi
1192    ;;
1193
1194  aix4*)
1195    hardcode_libdir_flag_spec='${wl}-b ${wl}nolibpath ${wl}-b ${wl}libpath:$libdir:/usr/lib:/lib'
1196    hardcode_libdir_separator=':'
1197    if test "$with_gcc" = yes; then
1198      collect2name=`${CC} -print-prog-name=collect2`
1199      if test -f "$collect2name" && \
1200	 strings "$collect2name" | grep resolve_lib_name >/dev/null
1201      then
1202	# We have reworked collect2
1203	hardcode_direct=yes
1204      else
1205	# We have old collect2
1206	hardcode_direct=unsupported
1207	# It fails to find uninstalled libraries when the uninstalled
1208	# path is not listed in the libpath.  Setting hardcode_minus_L
1209	# to unsupported forces relinking
1210	hardcode_minus_L=yes
1211	hardcode_libdir_flag_spec='-L$libdir'
1212	hardcode_libdir_separator=
1213      fi
1214      shared_flag='-shared'
1215    else
1216      shared_flag='${wl}-bM:SRE'
1217      hardcode_direct=yes
1218    fi
1219    allow_undefined_flag=' ${wl}-berok'
1220    archive_cmds="\$CC $shared_flag"' -o $objdir/$soname $libobjs $deplibs $linkopts ${wl}-bexpall ${wl}-bnoentry${allow_undefined_flag}'
1221    archive_expsym_cmds="\$CC $shared_flag"' -o $objdir/$soname $libobjs $deplibs $linkopts ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}'
1222    case "$host_os" in aix4.[01]|aix4.[01].*)
1223      # According to Greg Wooledge, -bexpall is only supported from AIX 4.2 on
1224      always_export_symbols=yes ;;
1225    esac
1226   ;;
1227
1228  amigaos*)
1229    archive_cmds='$rm $objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $objdir/a2ixlibrary.data~$AR cru $lib $libobjs~$RANLIB $lib~(cd $objdir && a2ixlibrary -32)'
1230    hardcode_libdir_flag_spec='-L$libdir'
1231    hardcode_minus_L=yes
1232    # see comment about different semantics on the GNU ld section
1233    ld_shlibs=no
1234    ;;
1235
1236  cygwin* | mingw*)
1237    # When not using gcc, we currently assume that we are using
1238    # Microsoft Visual C++.
1239    # hardcode_libdir_flag_spec is actually meaningless, as there is
1240    # no search path for DLLs.
1241    hardcode_libdir_flag_spec=' '
1242    allow_undefined_flag=unsupported
1243    # Tell ltmain to make .lib files, not .a files.
1244    libext=lib
1245    # FIXME: Setting linknames here is a bad hack.
1246    archive_cmds='$CC -o $lib $libobjs $linkopts `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames='
1247    # The linker will automatically build a .lib file if we build a DLL.
1248    old_archive_from_new_cmds='true'
1249    # FIXME: Should let the user specify the lib program.
1250    old_archive_cmds='lib /OUT:$oldlib$oldobjs'
1251    fix_srcfile_path='`cygpath -w $srcfile`'
1252    ;;
1253
1254  freebsd1*)
1255    ld_shlibs=no
1256    ;;
1257
1258  # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
1259  # support.  Future versions do this automatically, but an explicit c++rt0.o
1260  # does not break anything, and helps significantly (at the cost of a little
1261  # extra space).
1262  freebsd2.2*)
1263    archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts /usr/lib/c++rt0.o'
1264    hardcode_libdir_flag_spec='-R$libdir'
1265    hardcode_direct=yes
1266    hardcode_shlibpath_var=no
1267    ;;
1268
1269  # Unfortunately, older versions of FreeBSD 2 do not have this feature.
1270  freebsd2*)
1271    archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts'
1272    hardcode_direct=yes
1273    hardcode_minus_L=yes
1274    hardcode_shlibpath_var=no
1275    ;;
1276
1277  # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
1278  freebsd*)
1279    archive_cmds='$CC -shared -o $lib $libobjs $deplibs $linkopts'
1280    hardcode_libdir_flag_spec='-R$libdir'
1281    hardcode_direct=yes
1282    hardcode_shlibpath_var=no
1283    ;;
1284
1285  hpux9* | hpux10* | hpux11*)
1286    case "$host_os" in
1287    hpux9*) archive_cmds='$rm $objdir/$soname~$LD -b +b $install_libdir -o $objdir/$soname $libobjs $deplibs $linkopts~test $objdir/$soname = $lib || mv $objdir/$soname $lib' ;;
1288    *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linkopts' ;;
1289    esac
1290    hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
1291    hardcode_libdir_separator=:
1292    hardcode_direct=yes
1293    hardcode_minus_L=yes # Not in the search PATH, but as the default
1294			 # location of the library.
1295    export_dynamic_flag_spec='${wl}-E'
1296    ;;
1297
1298  irix5* | irix6*)
1299    if test "$with_gcc" = yes; then
1300      archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
1301    else
1302      archive_cmds='$LD -shared $libobjs $deplibs $linkopts -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
1303    fi
1304    hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
1305    hardcode_libdir_separator=:
1306    ;;
1307
1308  netbsd*)
1309    if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
1310      archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts'  # a.out
1311    else
1312      archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linkopts'      # ELF
1313    fi
1314    hardcode_libdir_flag_spec='${wl}-R$libdir'
1315    hardcode_direct=yes
1316    hardcode_shlibpath_var=no
1317    ;;
1318
1319  openbsd*)
1320    archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts'
1321    hardcode_libdir_flag_spec='-R$libdir'
1322    hardcode_direct=yes
1323    hardcode_shlibpath_var=no
1324    ;;
1325
1326  os2*)
1327    hardcode_libdir_flag_spec='-L$libdir'
1328    hardcode_minus_L=yes
1329    allow_undefined_flag=unsupported
1330    archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $objdir/$libname.def~$echo DATA >> $objdir/$libname.def~$echo " SINGLE NONSHARED" >> $objdir/$libname.def~$echo EXPORTS >> $objdir/$libname.def~emxexp $libobjs >> $objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $linkopts $objdir/$libname.def'
1331    old_archive_from_new_cmds='emximp -o $objdir/$libname.a $objdir/$libname.def'
1332    ;;
1333
1334  osf3* | osf4*)
1335    if test "$with_gcc" = yes; then
1336      allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
1337      archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $linkopts ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
1338    else
1339      allow_undefined_flag=' -expect_unresolved \*'
1340      archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linkopts -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
1341    fi
1342    hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
1343    hardcode_libdir_separator=:
1344    ;;
1345
1346  sco3.2v5*)
1347    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
1348    hardcode_shlibpath_var=no
1349    runpath_var=LD_RUN_PATH
1350    hardcode_runpath_var=yes
1351    ;;
1352
1353  solaris*)
1354    no_undefined_flag=' -z text'
1355    # $CC -shared without GNU ld will not create a library from C++
1356    # object files and a static libstdc++, better avoid it by now
1357    archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linkopts'
1358    archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
1359		$LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linkopts~$rm $lib.exp'
1360    hardcode_libdir_flag_spec='-R$libdir'
1361    hardcode_shlibpath_var=no
1362    case "$host_os" in
1363    solaris2.[0-5] | solaris2.[0-5].*) ;;
1364    *) # Supported since Solaris 2.6 (maybe 2.5.1?)
1365      whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' ;;
1366    esac
1367    ;;
1368
1369  sunos4*)
1370    archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linkopts'
1371    hardcode_libdir_flag_spec='-L$libdir'
1372    hardcode_direct=yes
1373    hardcode_minus_L=yes
1374    hardcode_shlibpath_var=no
1375    ;;
1376
1377  sysv4)
1378    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
1379    runpath_var='LD_RUN_PATH'
1380    hardcode_shlibpath_var=no
1381    hardcode_direct=no #Motorola manual says yes, but my tests say they lie
1382    ;;
1383
1384  sysv4.3*)
1385    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
1386    hardcode_shlibpath_var=no
1387    export_dynamic_flag_spec='-Bexport'
1388    ;;
1389
1390  uts4*)
1391    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
1392    hardcode_libdir_flag_spec='-L$libdir'
1393    hardcode_shlibpath_var=no
1394    ;;
1395
1396  dgux*)
1397    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
1398    hardcode_libdir_flag_spec='-L$libdir'
1399    hardcode_shlibpath_var=no
1400    ;;
1401
1402  *)
1403    ld_shlibs=no
1404    ;;
1405  esac
1406fi
1407echo "$ac_t$ld_shlibs" 1>&6
1408test "$ld_shlibs" = no && can_build_shared=no
1409
1410if test -z "$NM"; then
1411  echo $ac_n "checking for BSD-compatible nm... $ac_c" 1>&6
1412  case "$NM" in
1413  [\\/]* | [A-Za-z]:[\\/]*) ;; # Let the user override the test with a path.
1414  *)
1415    IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
1416    for ac_dir in $PATH /usr/ucb /usr/ccs/bin /bin; do
1417      test -z "$ac_dir" && ac_dir=.
1418      if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext; then
1419	# Check to see if the nm accepts a BSD-compat flag.
1420	# Adding the `sed 1q' prevents false positives on HP-UX, which says:
1421	#   nm: unknown option "B" ignored
1422	if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
1423	  NM="$ac_dir/nm -B"
1424	  break
1425	elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
1426	  NM="$ac_dir/nm -p"
1427	  break
1428	else
1429	  NM=${NM="$ac_dir/nm"} # keep the first match, but
1430	  continue # so that we can try to find one that supports BSD flags
1431	fi
1432      fi
1433    done
1434    IFS="$ac_save_ifs"
1435    test -z "$NM" && NM=nm
1436    ;;
1437  esac
1438  echo "$ac_t$NM" 1>&6
1439fi
1440
1441# Check for command to grab the raw symbol name followed by C symbol from nm.
1442echo $ac_n "checking command to parse $NM output... $ac_c" 1>&6
1443
1444# These are sane defaults that work on at least a few old systems.
1445# [They come from Ultrix.  What could be older than Ultrix?!! ;)]
1446
1447# Character class describing NM global symbol codes.
1448symcode='[BCDEGRST]'
1449
1450# Regexp to match symbols that can be accessed directly from C.
1451sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
1452
1453# Transform the above into a raw symbol and a C symbol.
1454symxfrm='\1 \2\3 \3'
1455
1456# Transform an extracted symbol line into a proper C declaration
1457global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'"
1458
1459# Define system-specific variables.
1460case "$host_os" in
1461aix*)
1462  symcode='[BCDT]'
1463  ;;
1464cygwin* | mingw*)
1465  symcode='[ABCDGISTW]'
1466  ;;
1467hpux*) # Its linker distinguishes data from code symbols
1468  global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^. .* \(.*\)$/extern char \1;/p'"
1469  ;;
1470irix*)
1471  symcode='[BCDEGRST]'
1472  ;;
1473solaris*)
1474  symcode='[BDT]'
1475  ;;
1476sysv4)
1477  symcode='[DFNSTU]'
1478  ;;
1479esac
1480
1481# If we're using GNU nm, then use its standard symbol codes.
1482if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
1483  symcode='[ABCDGISTW]'
1484fi
1485
1486# Try without a prefix undercore, then with it.
1487for ac_symprfx in "" "_"; do
1488
1489  # Write the raw and C identifiers.
1490  global_symbol_pipe="sed -n -e 's/^.*[ 	]\($symcode\)[ 	][ 	]*\($ac_symprfx\)$sympat$/$symxfrm/p'"
1491
1492  # Check to see that the pipe works correctly.
1493  pipe_works=no
1494  $rm conftest*
1495  cat > conftest.c <<EOF
1496#ifdef __cplusplus
1497extern "C" {
1498#endif
1499char nm_test_var;
1500void nm_test_func(){}
1501#ifdef __cplusplus
1502}
1503#endif
1504main(){nm_test_var='a';nm_test_func();return(0);}
1505EOF
1506
1507  echo "$progname:1507: checking if global_symbol_pipe works" >&5
1508  if { (eval echo $progname:1508: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.$objext; then
1509    # Now try to grab the symbols.
1510    nlist=conftest.nm
1511    if { echo "$progname:1511: eval \"$NM conftest.$objext | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.$objext | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then
1512
1513      # Try sorting and uniquifying the output.
1514      if sort "$nlist" | uniq > "$nlist"T; then
1515	mv -f "$nlist"T "$nlist"
1516      else
1517	rm -f "$nlist"T
1518      fi
1519
1520      # Make sure that we snagged all the symbols we need.
1521      if egrep ' nm_test_var$' "$nlist" >/dev/null; then
1522	if egrep ' nm_test_func$' "$nlist" >/dev/null; then
1523	  cat <<EOF > conftest.c
1524#ifdef __cplusplus
1525extern "C" {
1526#endif
1527
1528EOF
1529	  # Now generate the symbol file.
1530	  eval "$global_symbol_to_cdecl"' < "$nlist" >> conftest.c'
1531
1532	  cat <<EOF >> conftest.c
1533#if defined (__STDC__) && __STDC__
1534# define lt_ptr_t void *
1535#else
1536# define lt_ptr_t char *
1537# define const
1538#endif
1539
1540/* The mapping between symbol names and symbols. */
1541const struct {
1542  const char *name;
1543  lt_ptr_t address;
1544}
1545lt_preloaded_symbols[] =
1546{
1547EOF
1548	  sed 's/^. \(.*\) \(.*\)$/  {"\2", (lt_ptr_t) \&\2},/' < "$nlist" >> conftest.c
1549	  cat <<\EOF >> conftest.c
1550  {0, (lt_ptr_t) 0}
1551};
1552
1553#ifdef __cplusplus
1554}
1555#endif
1556EOF
1557	  # Now try linking the two files.
1558	  mv conftest.$objext conftstm.$objext
1559	  save_LIBS="$LIBS"
1560	  save_CFLAGS="$CFLAGS"
1561	  LIBS="conftstm.$objext"
1562	  CFLAGS="$CFLAGS$no_builtin_flag"
1563	  if { (eval echo $progname:1563: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
1564	    pipe_works=yes
1565	  else
1566	    echo "$progname: failed program was:" >&5
1567	    cat conftest.c >&5
1568	  fi
1569	  LIBS="$save_LIBS"
1570	else
1571	  echo "cannot find nm_test_func in $nlist" >&5
1572	fi
1573      else
1574	echo "cannot find nm_test_var in $nlist" >&5
1575      fi
1576    else
1577      echo "cannot run $global_symbol_pipe" >&5
1578    fi
1579  else
1580    echo "$progname: failed program was:" >&5
1581    cat conftest.c >&5
1582  fi
1583  $rm conftest* conftst*
1584
1585  # Do not use the global_symbol_pipe unless it works.
1586  if test "$pipe_works" = yes; then
1587    break
1588  else
1589    global_symbol_pipe=
1590  fi
1591done
1592if test "$pipe_works" = yes; then
1593  echo "${ac_t}ok" 1>&6
1594else
1595  echo "${ac_t}failed" 1>&6
1596fi
1597
1598if test -z "$global_symbol_pipe"; then
1599  global_symbol_to_cdecl=
1600fi
1601
1602# Check hardcoding attributes.
1603echo $ac_n "checking how to hardcode library paths into programs... $ac_c" 1>&6
1604hardcode_action=
1605if test -n "$hardcode_libdir_flag_spec" || \
1606   test -n "$runpath_var"; then
1607
1608  # We can hardcode non-existant directories.
1609  if test "$hardcode_direct" != no &&
1610     # If the only mechanism to avoid hardcoding is shlibpath_var, we
1611     # have to relink, otherwise we might link with an installed library
1612     # when we should be linking with a yet-to-be-installed one
1613     ## test "$hardcode_shlibpath_var" != no &&
1614     test "$hardcode_minus_L" != no; then
1615    # Linking always hardcodes the temporary library directory.
1616    hardcode_action=relink
1617  else
1618    # We can link without hardcoding, and we can hardcode nonexisting dirs.
1619    hardcode_action=immediate
1620  fi
1621else
1622  # We cannot hardcode anything, or else we can only hardcode existing
1623  # directories.
1624  hardcode_action=unsupported
1625fi
1626echo "$ac_t$hardcode_action" 1>&6
1627
1628
1629reload_flag=
1630reload_cmds='$LD$reload_flag -o $output$reload_objs'
1631echo $ac_n "checking for $LD option to reload object files... $ac_c" 1>&6
1632# PORTME Some linkers may need a different reload flag.
1633reload_flag='-r'
1634echo "$ac_t$reload_flag" 1>&6
1635test -n "$reload_flag" && reload_flag=" $reload_flag"
1636
1637# PORTME Fill in your ld.so characteristics
1638library_names_spec=
1639libname_spec='lib$name'
1640soname_spec=
1641postinstall_cmds=
1642postuninstall_cmds=
1643finish_cmds=
1644finish_eval=
1645shlibpath_var=
1646shlibpath_overrides_runpath=unknown
1647version_type=none
1648dynamic_linker="$host_os ld.so"
1649sys_lib_dlsearch_path_spec="/lib /usr/lib"
1650sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
1651file_magic_cmd=
1652file_magic_test_file=
1653deplibs_check_method='unknown'
1654# Need to set the preceding variable on all platforms that support
1655# interlibrary dependencies.
1656# 'none' -- dependencies not supported.
1657# `unknown' -- same as none, but documents that we really don't know.
1658# 'pass_all' -- all dependencies passed with no checks.
1659# 'test_compile' -- check by making test program.
1660# 'file_magic [regex]' -- check by looking for files in library path
1661# which responds to the $file_magic_cmd with a given egrep regex.
1662# If you have `file' or equivalent on your system and you're not sure
1663# whether `pass_all' will *always* work, you probably want this one.
1664echo $ac_n "checking dynamic linker characteristics... $ac_c" 1>&6
1665case "$host_os" in
1666aix3*)
1667  version_type=linux
1668  library_names_spec='${libname}${release}.so$versuffix $libname.a'
1669  shlibpath_var=LIBPATH
1670
1671  # AIX has no versioning support, so we append a major version to the name.
1672  soname_spec='${libname}${release}.so$major'
1673  ;;
1674
1675aix4*)
1676  version_type=linux
1677  # AIX has no versioning support, so currently we can not hardcode correct
1678  # soname into executable. Probably we can add versioning support to
1679  # collect2, so additional links can be useful in future.
1680  # We preserve .a as extension for shared libraries though AIX4.2
1681  # and later linker supports .so
1682  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.a'
1683  shlibpath_var=LIBPATH
1684  deplibs_check_method=pass_all
1685  ;;
1686
1687amigaos*)
1688  library_names_spec='$libname.ixlibrary $libname.a'
1689  # Create ${libname}_ixlibrary.a entries in /sys/libs.
1690  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'
1691  ;;
1692
1693beos*)
1694  library_names_spec='${libname}.so'
1695  dynamic_linker="$host_os ld.so"
1696  shlibpath_var=LIBRARY_PATH
1697  lt_cv_dlopen="load_add_on"
1698  lt_cv_dlopen_libs=
1699  lt_cv_dlopen_self=yes
1700  ;;
1701
1702bsdi4*)
1703  version_type=linux
1704  library_names_spec='${libname}.so$major ${libname}.so'
1705  soname_spec='${libname}.so'
1706  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
1707  shlibpath_var=LD_LIBRARY_PATH
1708  deplibs_check_method='file_magic ELF 32-bit LSB shared object'
1709  file_magic_cmd=/usr/bin/file
1710  file_magic_test_file=/shlib/libc.so
1711  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
1712  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
1713  # the default ld.so.conf also contains /usr/contrib/lib and
1714  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
1715  # libtool to hard-code these into programs
1716  ;;
1717
1718cygwin* | mingw*)
1719  version_type=windows
1720  if test "$with_gcc" = yes; then
1721    library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.a'
1722  else
1723    library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.lib'
1724  fi
1725  dynamic_linker='Win32 ld.exe'
1726  deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
1727  file_magic_cmd='${OBJDUMP} -f'
1728  need_lib_prefix=no
1729  # FIXME: first we should search . and the directory the executable is in
1730  shlibpath_var=PATH
1731  lt_cv_dlopen="LoadLibrary"
1732  lt_cv_dlopen_libs=
1733  ;;
1734
1735freebsd1*)
1736  dynamic_linker=no
1737  ;;
1738
1739freebsd*)
1740  objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
1741  version_type=freebsd-$objformat
1742  case "$version_type" in
1743    freebsd-elf*)
1744      deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object'
1745      file_magic_cmd=/usr/bin/file
1746      file_magic_test_file=`echo /usr/lib/libc.so*`
1747      library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
1748      need_version=no
1749      need_lib_prefix=no
1750      ;;
1751    freebsd-*)
1752      deplibs_check_method=unknown
1753      library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
1754      need_version=yes
1755      ;;
1756  esac
1757  finish_cmds='PATH="\$PATH:/sbin" OBJFORMAT="'"$objformat"'" ldconfig -m $libdir'
1758  shlibpath_var=LD_LIBRARY_PATH
1759  ;;
1760
1761gnu*)
1762  version_type=linux
1763  library_names_spec='${libname}${release}.so$versuffix ${libname}.so'
1764  shlibpath_var=LD_LIBRARY_PATH
1765  ;;
1766
1767hpux9* | hpux10* | hpux11*)
1768  # Give a soname corresponding to the major version so that dld.sl refuses to
1769  # link against other versions.
1770  dynamic_linker="$host_os dld.sl"
1771  version_type=sunos
1772  need_lib_prefix=no
1773  need_version=no
1774  shlibpath_var=SHLIB_PATH
1775  shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
1776  library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl'
1777  soname_spec='${libname}${release}.sl$major'
1778  # HP-UX runs *really* slowly unless shared libraries are mode 555.
1779  postinstall_cmds='chmod 555 $lib'
1780  ;;
1781
1782irix5* | irix6*)
1783  version_type=irix
1784  need_lib_prefix=no
1785  need_version=no
1786  soname_spec='${libname}${release}.so.$major'
1787  library_names_spec='${libname}${release}.so.$versuffix ${libname}${release}.so.$major ${libname}${release}.so $libname.so'
1788  case "$host_os" in
1789  irix5*)
1790    libsuff= shlibsuff=
1791    # this will be overridden with pass_all, but let us keep it just in case
1792    deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
1793    ;;
1794  *)
1795    case "$LD" in # libtool.m4 will add one of these switches to LD
1796    *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;;
1797    *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;;
1798    *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;;
1799    *) libsuff= shlibsuff= libmagic=never-match;;
1800    esac
1801    # this will be overridden with pass_all, but let us keep it just in case
1802    deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1"
1803    ;;
1804  esac
1805  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
1806  shlibpath_overrides_runpath=no
1807  sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
1808  sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
1809  file_magic_cmd=/usr/bin/file
1810  file_magic_test_file=`echo /lib${libsuff}/libc.so*`
1811  deplibs_check_method='pass_all'
1812  ;;
1813
1814# No shared lib support for Linux oldld, aout, or coff.
1815linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*)
1816  dynamic_linker=no
1817  ;;
1818
1819# This must be Linux ELF.
1820linux-gnu*)
1821  version_type=linux
1822  need_lib_prefix=no
1823  need_version=no
1824  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
1825  soname_spec='${libname}${release}.so$major'
1826  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
1827  shlibpath_var=LD_LIBRARY_PATH
1828  shlibpath_overrides_runpath=no
1829  deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
1830  file_magic_cmd=/usr/bin/file
1831  file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
1832
1833  if test -f /lib/ld.so.1; then
1834    dynamic_linker='GNU ld.so'
1835  else
1836    # Only the GNU ld.so supports shared libraries on MkLinux.
1837    case "$host_cpu" in
1838    powerpc*) dynamic_linker=no ;;
1839    *) dynamic_linker='Linux ld.so' ;;
1840    esac
1841  fi
1842  ;;
1843
1844netbsd*)
1845  version_type=sunos
1846  if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
1847    library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
1848    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
1849    dynamic_linker='NetBSD (a.out) ld.so'
1850  else
1851    library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so'
1852    soname_spec='${libname}${release}.so$major'
1853    dynamic_linker='NetBSD ld.elf_so'
1854  fi
1855  shlibpath_var=LD_LIBRARY_PATH
1856  ;;
1857
1858openbsd*)
1859  version_type=sunos
1860  if test "$with_gnu_ld" = yes; then
1861    need_lib_prefix=no
1862    need_version=no
1863  fi
1864  library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
1865  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
1866  shlibpath_var=LD_LIBRARY_PATH
1867  ;;
1868
1869os2*)
1870  libname_spec='$name'
1871  need_lib_prefix=no
1872  library_names_spec='$libname.dll $libname.a'
1873  dynamic_linker='OS/2 ld.exe'
1874  shlibpath_var=LIBPATH
1875  ;;
1876
1877osf3* | osf4*)
1878  version_type=osf
1879  need_version=no
1880  soname_spec='${libname}${release}.so'
1881  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
1882  shlibpath_var=LD_LIBRARY_PATH
1883  # this will be overridden with pass_all, but let us keep it just in case
1884  deplibs_check_method='file_magic COFF format alpha shared library'
1885  file_magic_cmd=/usr/bin/file
1886  file_magic_test_file=/shlib/libc.so
1887  deplibs_check_method='pass_all'
1888  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
1889  sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
1890  ;;
1891
1892sco3.2v5*)
1893  version_type=osf
1894  soname_spec='${libname}${release}.so$major'
1895  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
1896  shlibpath_var=LD_LIBRARY_PATH
1897  ;;
1898
1899solaris*)
1900  version_type=linux
1901  need_lib_prefix=no
1902  need_version=no
1903  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
1904  soname_spec='${libname}${release}.so$major'
1905  shlibpath_var=LD_LIBRARY_PATH
1906  shlibpath_overrides_runpath=yes
1907  # ldd complains unless libraries are executable
1908  postinstall_cmds='chmod +x $lib'
1909  deplibs_check_method="file_magic ELF [0-9][0-9]-bit [LM]SB dynamic lib"
1910  file_magic_cmd=/usr/bin/file
1911  file_magic_test_file=/lib/libc.so
1912  ;;
1913
1914sunos4*)
1915  version_type=sunos
1916  library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
1917  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
1918  shlibpath_var=LD_LIBRARY_PATH
1919  shlibpath_overrides_runpath=yes
1920  if test "$with_gnu_ld" = yes; then
1921    need_lib_prefix=no
1922  fi
1923  need_version=yes
1924  ;;
1925
1926sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
1927  version_type=linux
1928  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
1929  soname_spec='${libname}${release}.so$major'
1930  shlibpath_var=LD_LIBRARY_PATH
1931  case "$host_vendor" in
1932    ncr)
1933      deplibs_check_method='pass_all'
1934      ;;
1935    motorola)
1936      need_lib_prefix=no
1937      need_version=no
1938      shlibpath_overrides_runpath=no
1939      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
1940      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]'
1941      file_magic_cmd=/usr/bin/file
1942      file_magic_test_file=`echo /usr/lib/libc.so*`
1943      ;;
1944  esac
1945  ;;
1946
1947uts4*)
1948  version_type=linux
1949  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
1950  soname_spec='${libname}${release}.so$major'
1951  shlibpath_var=LD_LIBRARY_PATH
1952  ;;
1953
1954dgux*)
1955  version_type=linux
1956  need_lib_prefix=no
1957  need_version=no
1958  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
1959  soname_spec='${libname}${release}.so$major'
1960  shlibpath_var=LD_LIBRARY_PATH
1961  ;;
1962
1963*)
1964  dynamic_linker=no
1965  ;;
1966esac
1967echo "$ac_t$dynamic_linker" 1>&6
1968test "$dynamic_linker" = no && can_build_shared=no
1969
1970# Report the final consequences.
1971echo "checking if libtool supports shared libraries... $can_build_shared" 1>&6
1972
1973# Only try to build win32 dlls if AC_LIBTOOL_WIN32_DLL was used in
1974# configure.in, otherwise build static only libraries.
1975case "$host_os" in
1976cygwin* | mingw* | os2*)
1977  if test x$can_build_shared = xyes; then
1978    test x$enable_win32_dll = xno && can_build_shared=no
1979    echo "checking if package supports dlls... $can_build_shared" 1>&6
1980  fi
1981;;
1982esac
1983
1984if test -n "$file_magic_test_file" && test -n "$file_magic_cmd"; then
1985  case "$deplibs_check_method" in
1986  "file_magic "*)
1987    file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
1988    if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
1989       egrep "$file_magic_regex" > /dev/null; then
1990      :
1991    else
1992      cat <<EOF 1>&2
1993
1994*** Warning: the command libtool uses to detect shared libraries,
1995*** $file_magic_cmd, produces output that libtool cannot recognize.
1996*** The result is that libtool may fail to recognize shared libraries
1997*** as such.  This will affect the creation of libtool libraries that
1998*** depend on shared libraries, but programs linked with such libtool
1999*** libraries will work regardless of this problem.  Nevertheless, you
2000*** may want to report the problem to your system manager and/or to
2001*** bug-libtool@gnu.org
2002
2003EOF
2004    fi ;;
2005  esac
2006fi
2007
2008echo $ac_n "checking whether to build shared libraries... $ac_c" 1>&6
2009test "$can_build_shared" = "no" && enable_shared=no
2010
2011# On AIX, shared libraries and static libraries use the same namespace, and
2012# are all built from PIC.
2013case "$host_os" in
2014aix3*)
2015  test "$enable_shared" = yes && enable_static=no
2016  if test -n "$RANLIB"; then
2017    archive_cmds="$archive_cmds~\$RANLIB \$lib"
2018    postinstall_cmds='$RANLIB $lib'
2019  fi
2020  ;;
2021
2022aix4*)
2023  test "$enable_shared" = yes && enable_static=no
2024  ;;
2025esac
2026
2027echo "$ac_t$enable_shared" 1>&6
2028
2029# Make sure either enable_shared or enable_static is yes.
2030test "$enable_shared" = yes || enable_static=yes
2031
2032echo "checking whether to build static libraries... $enable_static" 1>&6
2033
2034if test "$hardcode_action" = relink; then
2035  # Fast installation is not supported
2036  enable_fast_install=no
2037elif test "$shlibpath_overrides_runpath" = yes ||
2038     test "$enable_shared" = no; then
2039  # Fast installation is not necessary
2040  enable_fast_install=needless
2041fi
2042
2043echo $ac_n "checking for objdir... $ac_c" 1>&6
2044rm -f .libs 2>/dev/null
2045mkdir .libs 2>/dev/null
2046if test -d .libs; then
2047  objdir=.libs
2048else
2049  # MS-DOS does not allow filenames that begin with a dot.
2050  objdir=_libs
2051fi
2052rmdir .libs 2>/dev/null
2053echo "$ac_t$objdir" 1>&6
2054
2055if test "x$enable_dlopen" != xyes; then
2056  enable_dlopen=unknown
2057  enable_dlopen_self=unknown
2058  enable_dlopen_self_static=unknown
2059else
2060if eval "test \"`echo '$''{'lt_cv_dlopen'+set}'`\" != set"; then
2061  lt_cv_dlopen=no lt_cv_dlopen_libs=
2062echo $ac_n "checking for dlopen""... $ac_c" 1>&6
2063echo "$progname:2063: checking for dlopen" >&5
2064if eval "test \"`echo '$''{'ac_cv_func_dlopen'+set}'`\" = set"; then
2065  echo $ac_n "(cached) $ac_c" 1>&6
2066else
2067  cat > conftest.$ac_ext <<EOF
2068#line 2068 "ltconfig"
2069/* System header to define __stub macros and hopefully few prototypes,
2070    which can conflict with char dlopen(); below.  */
2071#include <assert.h>
2072/* Override any gcc2 internal prototype to avoid an error.  */
2073/* We use char because int might match the return type of a gcc2
2074    builtin and then its argument prototype would still apply.  */
2075char dlopen();
2076
2077int main() {
2078
2079/* The GNU C library defines this for functions which it implements
2080    to always fail with ENOSYS.  Some functions are actually named
2081    something starting with __ and the normal name is an alias.  */
2082#if defined (__stub_dlopen) || defined (__stub___dlopen)
2083choke me
2084#else
2085dlopen();
2086#endif
2087
2088; return 0; }
2089EOF
2090if { (eval echo $progname:2090: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
2091  rm -rf conftest*
2092  eval "ac_cv_func_dlopen=yes"
2093else
2094  echo "$progname: failed program was:" >&5
2095  cat conftest.$ac_ext >&5
2096  rm -rf conftest*
2097  eval "ac_cv_func_dlopen=no"
2098fi
2099rm -f conftest*
2100fi
2101
2102if eval "test \"`echo '$ac_cv_func_'dlopen`\" = yes"; then
2103  echo "$ac_t""yes" 1>&6
2104  lt_cv_dlopen="dlopen"
2105else
2106  echo "$ac_t""no" 1>&6
2107echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6
2108echo "$progname:2108: checking for dlopen in -ldl" >&5
2109ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'`
2110if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
2111  echo $ac_n "(cached) $ac_c" 1>&6
2112else
2113  ac_save_LIBS="$LIBS"
2114LIBS="-ldl  $LIBS"
2115cat > conftest.$ac_ext <<EOF
2116#line 2116 "ltconfig"
2117/* Override any gcc2 internal prototype to avoid an error.  */
2118/* We use char because int might match the return type of a gcc2
2119    builtin and then its argument prototype would still apply.  */
2120char dlopen();
2121
2122int main() {
2123dlopen()
2124; return 0; }
2125EOF
2126if { (eval echo $progname:2126: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
2127  rm -rf conftest*
2128  eval "ac_cv_lib_$ac_lib_var=yes"
2129else
2130  echo "$progname: failed program was:" >&5
2131  cat conftest.$ac_ext >&5
2132  rm -rf conftest*
2133  eval "ac_cv_lib_$ac_lib_var=no"
2134fi
2135rm -f conftest*
2136LIBS="$ac_save_LIBS"
2137
2138fi
2139if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
2140  echo "$ac_t""yes" 1>&6
2141  lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
2142else
2143  echo "$ac_t""no" 1>&6
2144echo $ac_n "checking for dld_link in -ldld""... $ac_c" 1>&6
2145echo "$progname:2145: checking for dld_link in -ldld" >&5
2146ac_lib_var=`echo dld'_'dld_link | sed 'y%./+-%__p_%'`
2147if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
2148  echo $ac_n "(cached) $ac_c" 1>&6
2149else
2150  ac_save_LIBS="$LIBS"
2151LIBS="-ldld  $LIBS"
2152cat > conftest.$ac_ext <<EOF
2153#line 2153 "ltconfig"
2154/* Override any gcc2 internal prototype to avoid an error.  */
2155/* We use char because int might match the return type of a gcc2
2156    builtin and then its argument prototype would still apply.  */
2157char dld_link();
2158
2159int main() {
2160dld_link()
2161; return 0; }
2162EOF
2163if { (eval echo $progname:2163: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
2164  rm -rf conftest*
2165  eval "ac_cv_lib_$ac_lib_var=yes"
2166else
2167  echo "$progname: failed program was:" >&5
2168  cat conftest.$ac_ext >&5
2169  rm -rf conftest*
2170  eval "ac_cv_lib_$ac_lib_var=no"
2171fi
2172rm -f conftest*
2173LIBS="$ac_save_LIBS"
2174
2175fi
2176if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
2177  echo "$ac_t""yes" 1>&6
2178  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
2179else
2180  echo "$ac_t""no" 1>&6
2181echo $ac_n "checking for shl_load""... $ac_c" 1>&6
2182echo "$progname:2182: checking for shl_load" >&5
2183if eval "test \"`echo '$''{'ac_cv_func_shl_load'+set}'`\" = set"; then
2184  echo $ac_n "(cached) $ac_c" 1>&6
2185else
2186  cat > conftest.$ac_ext <<EOF
2187#line 2187 "ltconfig"
2188/* System header to define __stub macros and hopefully few prototypes,
2189    which can conflict with char shl_load(); below.  */
2190#include <assert.h>
2191/* Override any gcc2 internal prototype to avoid an error.  */
2192/* We use char because int might match the return type of a gcc2
2193    builtin and then its argument prototype would still apply.  */
2194char shl_load();
2195
2196int main() {
2197
2198/* The GNU C library defines this for functions which it implements
2199    to always fail with ENOSYS.  Some functions are actually named
2200    something starting with __ and the normal name is an alias.  */
2201#if defined (__stub_shl_load) || defined (__stub___shl_load)
2202choke me
2203#else
2204shl_load();
2205#endif
2206
2207; return 0; }
2208EOF
2209if { (eval echo $progname:2209: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
2210  rm -rf conftest*
2211  eval "ac_cv_func_shl_load=yes"
2212else
2213  echo "$progname: failed program was:" >&5
2214  cat conftest.$ac_ext >&5
2215  rm -rf conftest*
2216  eval "ac_cv_func_shl_load=no"
2217fi
2218rm -f conftest*
2219fi
2220
2221if eval "test \"`echo '$ac_cv_func_'shl_load`\" = yes"; then
2222  echo "$ac_t""yes" 1>&6
2223  lt_cv_dlopen="shl_load"
2224else
2225  echo "$ac_t""no" 1>&6
2226echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6
2227echo "$progname:2227: checking for shl_load in -ldld" >&5
2228ac_lib_var=`echo dld'_'shl_load | sed 'y%./+-%__p_%'`
2229if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
2230  echo $ac_n "(cached) $ac_c" 1>&6
2231else
2232  ac_save_LIBS="$LIBS"
2233LIBS="-ldld  $LIBS"
2234cat > conftest.$ac_ext <<EOF
2235#line 2235 "ltconfig"
2236#include "confdefs.h"
2237/* Override any gcc2 internal prototype to avoid an error.  */
2238/* We use char because int might match the return type of a gcc2
2239    builtin and then its argument prototype would still apply.  */
2240char shl_load();
2241
2242int main() {
2243shl_load()
2244; return 0; }
2245EOF
2246if { (eval echo $progname:2246: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
2247  rm -rf conftest*
2248  eval "ac_cv_lib_$ac_lib_var=yes"
2249else
2250  echo "$progname: failed program was:" >&5
2251  cat conftest.$ac_ext >&5
2252  rm -rf conftest*
2253  eval "ac_cv_lib_$ac_lib_var=no"
2254fi
2255rm -f conftest*
2256LIBS="$ac_save_LIBS"
2257
2258fi
2259if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
2260  echo "$ac_t""yes" 1>&6
2261  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
2262else
2263  echo "$ac_t""no" 1>&6
2264fi
2265
2266
2267fi
2268
2269
2270fi
2271
2272
2273fi
2274
2275
2276fi
2277
2278fi
2279
2280  if test "x$lt_cv_dlopen" != xno; then
2281    enable_dlopen=yes
2282  fi
2283
2284  case "$lt_cv_dlopen" in
2285  dlopen)
2286for ac_hdr in dlfcn.h; do
2287ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
2288echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
2289echo "$progname:2289: checking for $ac_hdr" >&5
2290if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
2291  echo $ac_n "(cached) $ac_c" 1>&6
2292else
2293  cat > conftest.$ac_ext <<EOF
2294#line 2294 "ltconfig"
2295#include <$ac_hdr>
2296int fnord = 0;
2297EOF
2298ac_try="$ac_compile conftest.$ac_ext >/dev/null 2>conftest.out"
2299{ (eval echo $progname:2299: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
2300ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
2301if test -z "$ac_err"; then
2302  rm -rf conftest*
2303  eval "ac_cv_header_$ac_safe=yes"
2304else
2305  echo "$ac_err" >&5
2306  echo "$progname: failed program was:" >&5
2307  cat conftest.$ac_ext >&5
2308  rm -rf conftest*
2309  eval "ac_cv_header_$ac_safe=no"
2310fi
2311rm -f conftest*
2312fi
2313if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
2314  echo "$ac_t""yes" 1>&6
2315else
2316  echo "$ac_t""no" 1>&6
2317fi
2318done
2319
2320    if test "x$ac_cv_header_dlfcn_h" = xyes; then
2321      CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
2322    fi
2323    eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
2324    LIBS="$lt_cv_dlopen_libs $LIBS"
2325
2326  echo $ac_n "checking whether a program can dlopen itself""... $ac_c" 1>&6
2327echo "$progname:2327: checking whether a program can dlopen itself" >&5
2328if test "${lt_cv_dlopen_self+set}" = set; then
2329  echo $ac_n "(cached) $ac_c" 1>&6
2330else
2331  if test "$cross_compiling" = yes; then
2332    lt_cv_dlopen_self=cross
2333  else
2334    cat > conftest.c <<EOF
2335#line 2335 "ltconfig"
2336
2337#if HAVE_DLFCN_H
2338#include <dlfcn.h>
2339#endif
2340
2341#include <stdio.h>
2342
2343#ifdef RTLD_GLOBAL
2344# define LTDL_GLOBAL	RTLD_GLOBAL
2345#else
2346# ifdef DL_GLOBAL
2347#  define LTDL_GLOBAL	DL_GLOBAL
2348# else
2349#  define LTDL_GLOBAL	0
2350# endif
2351#endif
2352
2353/* We may have to define LTDL_LAZY_OR_NOW in the command line if we
2354   find out it does not work in some platform. */
2355#ifndef LTDL_LAZY_OR_NOW
2356# ifdef RTLD_LAZY
2357#  define LTDL_LAZY_OR_NOW	RTLD_LAZY
2358# else
2359#  ifdef DL_LAZY
2360#   define LTDL_LAZY_OR_NOW	DL_LAZY
2361#  else
2362#   ifdef RTLD_NOW
2363#    define LTDL_LAZY_OR_NOW	RTLD_NOW
2364#   else
2365#    ifdef DL_NOW
2366#     define LTDL_LAZY_OR_NOW	DL_NOW
2367#    else
2368#     define LTDL_LAZY_OR_NOW	0
2369#    endif
2370#   endif
2371#  endif
2372# endif
2373#endif
2374
2375fnord() { int i=42;}
2376main() { void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW);
2377    if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord");
2378	       if(ptr1 || ptr2) exit(0); } exit(1); } 
2379
2380EOF
2381if { (eval echo $progname:2381: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
2382then
2383  lt_cv_dlopen_self=yes
2384else
2385  echo "$progname: failed program was:" >&5
2386  cat conftest.$ac_ext >&5
2387  rm -fr conftest*
2388  lt_cv_dlopen_self=no
2389fi
2390rm -fr conftest*
2391fi
2392
2393fi
2394
2395echo "$ac_t""$lt_cv_dlopen_self" 1>&6
2396
2397  if test "$lt_cv_dlopen_self" = yes; then
2398    LDFLAGS="$LDFLAGS $link_static_flag"
2399  echo $ac_n "checking whether a statically linked program can dlopen itself""... $ac_c" 1>&6
2400echo "$progname:2400: checking whether a statically linked program can dlopen itself" >&5
2401if test "${lt_cv_dlopen_self_static+set}" = set; then
2402  echo $ac_n "(cached) $ac_c" 1>&6
2403else
2404  if test "$cross_compiling" = yes; then
2405    lt_cv_dlopen_self_static=cross
2406  else
2407    cat > conftest.c <<EOF
2408#line 2408 "ltconfig"
2409
2410#if HAVE_DLFCN_H
2411#include <dlfcn.h>
2412#endif
2413
2414#include <stdio.h>
2415
2416#ifdef RTLD_GLOBAL
2417# define LTDL_GLOBAL	RTLD_GLOBAL
2418#else
2419# ifdef DL_GLOBAL
2420#  define LTDL_GLOBAL	DL_GLOBAL
2421# else
2422#  define LTDL_GLOBAL	0
2423# endif
2424#endif
2425
2426/* We may have to define LTDL_LAZY_OR_NOW in the command line if we
2427   find out it does not work in some platform. */
2428#ifndef LTDL_LAZY_OR_NOW
2429# ifdef RTLD_LAZY
2430#  define LTDL_LAZY_OR_NOW	RTLD_LAZY
2431# else
2432#  ifdef DL_LAZY
2433#   define LTDL_LAZY_OR_NOW	DL_LAZY
2434#  else
2435#   ifdef RTLD_NOW
2436#    define LTDL_LAZY_OR_NOW	RTLD_NOW
2437#   else
2438#    ifdef DL_NOW
2439#     define LTDL_LAZY_OR_NOW	DL_NOW
2440#    else
2441#     define LTDL_LAZY_OR_NOW	0
2442#    endif
2443#   endif
2444#  endif
2445# endif
2446#endif
2447
2448fnord() { int i=42;}
2449main() { void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW);
2450    if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord");
2451    if(ptr1 || ptr2) exit(0); } exit(1); } 
2452
2453EOF
2454if { (eval echo $progname:2454: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
2455then
2456  lt_cv_dlopen_self_static=yes
2457else
2458  echo "$progname: failed program was:" >&5
2459  cat conftest.$ac_ext >&5
2460  rm -fr conftest*
2461  lt_cv_dlopen_self_static=no
2462fi
2463rm -fr conftest*
2464fi
2465
2466fi
2467
2468echo "$ac_t""$lt_cv_dlopen_self_static" 1>&6
2469fi
2470    ;;
2471  esac
2472
2473  case "$lt_cv_dlopen_self" in
2474  yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
2475  *) enable_dlopen_self=unknown ;;
2476  esac
2477
2478  case "$lt_cv_dlopen_self_static" in
2479  yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
2480  *) enable_dlopen_self_static=unknown ;;
2481  esac
2482fi
2483
2484# Copy echo and quote the copy, instead of the original, because it is
2485# used later.
2486ltecho="$echo"
2487if test "X$ltecho" = "X$CONFIG_SHELL $0 --fallback-echo"; then
2488   ltecho="$CONFIG_SHELL \$0 --fallback-echo"
2489fi
2490LTSHELL="$SHELL"
2491
2492LTCONFIG_VERSION="$VERSION"
2493
2494# Only quote variables if we're using ltmain.sh.
2495case "$ltmain" in
2496*.sh)
2497  # Now quote all the things that may contain metacharacters.
2498  for var in ltecho old_CC old_CFLAGS old_CPPFLAGS \
2499    old_LD old_LDFLAGS old_LIBS \
2500    old_NM old_RANLIB old_LN_S old_DLLTOOL old_OBJDUMP old_AS \
2501    AR CC LD LN_S NM LTSHELL LTCONFIG_VERSION \
2502    reload_flag reload_cmds wl \
2503    pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
2504    thread_safe_flag_spec whole_archive_flag_spec libname_spec \
2505    library_names_spec soname_spec \
2506    RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
2507    old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds postuninstall_cmds \
2508    file_magic_cmd export_symbols_cmds deplibs_check_method allow_undefined_flag no_undefined_flag \
2509    finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \
2510    hardcode_libdir_flag_spec hardcode_libdir_separator  \
2511    sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
2512    compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do
2513
2514    case "$var" in
2515    reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \
2516    old_postinstall_cmds | old_postuninstall_cmds | \
2517    export_symbols_cmds | archive_cmds | archive_expsym_cmds | \
2518    postinstall_cmds | postuninstall_cmds | \
2519    finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
2520      # Double-quote double-evaled strings.
2521      eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
2522      ;;
2523    *)
2524      eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
2525      ;;
2526    esac
2527  done
2528
2529  case "$ltecho" in
2530  *'\$0 --fallback-echo"')
2531    ltecho=`$echo "X$ltecho" | $Xsed -e 's/\\\\\\\$0 --fallback-echo"$/$0 --fallback-echo"/'`
2532    ;;
2533  esac
2534
2535  trap "$rm \"$ofile\"; exit 1" 1 2 15
2536  echo "creating $ofile"
2537  $rm "$ofile"
2538  cat <<EOF > "$ofile"
2539#! $SHELL
2540
2541# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
2542# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
2543# NOTE: Changes made to this file will be lost: look at ltconfig or ltmain.sh.
2544#
2545# Copyright (C) 1996-1999 Free Software Foundation, Inc.
2546# Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
2547#
2548# This program is free software; you can redistribute it and/or modify
2549# it under the terms of the GNU General Public License as published by
2550# the Free Software Foundation; either version 2 of the License, or
2551# (at your option) any later version.
2552#
2553# This program is distributed in the hope that it will be useful, but
2554# WITHOUT ANY WARRANTY; without even the implied warranty of
2555# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
2556# General Public License for more details.
2557#
2558# You should have received a copy of the GNU General Public License
2559# along with this program; if not, write to the Free Software
2560# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
2561#
2562# As a special exception to the GNU General Public License, if you
2563# distribute this file as part of a program that contains a
2564# configuration script generated by Autoconf, you may include it under
2565# the same distribution terms that you use for the rest of that program.
2566
2567# Sed that helps us avoid accidentally triggering echo(1) options like -n.
2568Xsed="sed -e s/^X//"
2569
2570# The HP-UX ksh and POSIX shell print the target directory to stdout
2571# if CDPATH is set.
2572if test "\${CDPATH+set}" = set; then CDPATH=; export CDPATH; fi
2573
2574### BEGIN LIBTOOL CONFIG
2575EOF
2576  cfgfile="$ofile"
2577  ;;
2578
2579*)
2580  # Double-quote the variables that need it (for aesthetics).
2581  for var in old_CC old_CFLAGS old_CPPFLAGS \
2582    old_LD old_LDFLAGS old_LIBS \
2583    old_NM old_RANLIB old_LN_S old_DLLTOOL old_OBJDUMP old_AS; do
2584    eval "$var=\\\"\$var\\\""
2585  done
2586
2587  # Just create a config file.
2588  cfgfile="$ofile.cfg"
2589  trap "$rm \"$cfgfile\"; exit 1" 1 2 15
2590  echo "creating $cfgfile"
2591  $rm "$cfgfile"
2592  cat <<EOF > "$cfgfile"
2593# `$echo "$cfgfile" | sed 's%^.*/%%'` - Libtool configuration file.
2594# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
2595EOF
2596  ;;
2597esac
2598
2599cat <<EOF >> "$cfgfile"
2600# Libtool was configured as follows, on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
2601#
2602# CC=$old_CC CFLAGS=$old_CFLAGS CPPFLAGS=$old_CPPFLAGS \\
2603# LD=$old_LD LDFLAGS=$old_LDFLAGS LIBS=$old_LIBS \\
2604# NM=$old_NM RANLIB=$old_RANLIB LN_S=$old_LN_S \\
2605# DLLTOOL=$old_DLLTOOL OBJDUMP=$old_OBJDUMP AS=$old_AS \\
2606#   $0$ltconfig_args
2607#
2608# Compiler and other test output produced by $progname, useful for
2609# debugging $progname, is in ./config.log if it exists.
2610
2611# The version of $progname that generated this script.
2612LTCONFIG_VERSION=$LTCONFIG_VERSION
2613
2614# Shell to use when invoking shell scripts.
2615SHELL=$LTSHELL
2616
2617# Whether or not to build shared libraries.
2618build_libtool_libs=$enable_shared
2619
2620# Whether or not to build static libraries.
2621build_old_libs=$enable_static
2622
2623# Whether or not to optimize for fast installation.
2624fast_install=$enable_fast_install
2625
2626# The host system.
2627host_alias=$host_alias
2628host=$host
2629
2630# An echo program that does not interpret backslashes.
2631echo=$ltecho
2632
2633# The archiver.
2634AR=$AR
2635
2636# The default C compiler.
2637CC=$CC
2638
2639# The linker used to build libraries.
2640LD=$LD
2641
2642# Whether we need hard or soft links.
2643LN_S=$LN_S
2644
2645# A BSD-compatible nm program.
2646NM=$NM
2647
2648# Used on cygwin: DLL creation program.
2649DLLTOOL="$DLLTOOL"
2650
2651# Used on cygwin: object dumper.
2652OBJDUMP="$OBJDUMP"
2653
2654# Used on cygwin: assembler.
2655AS="$AS"
2656
2657# The name of the directory that contains temporary libtool files.
2658objdir=$objdir
2659
2660# How to create reloadable object files.
2661reload_flag=$reload_flag
2662reload_cmds=$reload_cmds
2663
2664# How to pass a linker flag through the compiler.
2665wl=$wl
2666
2667# Object file suffix (normally "o").
2668objext="$objext"
2669
2670# Old archive suffix (normally "a").
2671libext="$libext"
2672
2673# Additional compiler flags for building library objects.
2674pic_flag=$pic_flag
2675
2676# Does compiler simultaneously support -c and -o options?
2677compiler_c_o=$compiler_c_o
2678
2679# Can we write directly to a .lo ?
2680compiler_o_lo=$compiler_o_lo
2681
2682# Must we lock files when doing compilation ?
2683need_locks=$need_locks
2684
2685# Do we need the lib prefix for modules?
2686need_lib_prefix=$need_lib_prefix
2687
2688# Do we need a version for libraries?
2689need_version=$need_version
2690
2691# Whether dlopen is supported.
2692dlopen=$enable_dlopen
2693
2694# Whether dlopen of programs is supported.
2695dlopen_self=$enable_dlopen_self
2696
2697# Whether dlopen of statically linked programs is supported.
2698dlopen_self_static=$enable_dlopen_self_static
2699
2700# Compiler flag to prevent dynamic linking.
2701link_static_flag=$link_static_flag
2702
2703# Compiler flag to turn off builtin functions.
2704no_builtin_flag=$no_builtin_flag
2705
2706# Compiler flag to allow reflexive dlopens.
2707export_dynamic_flag_spec=$export_dynamic_flag_spec
2708
2709# Compiler flag to generate shared objects directly from archives.
2710whole_archive_flag_spec=$whole_archive_flag_spec
2711
2712# Compiler flag to generate thread-safe objects.
2713thread_safe_flag_spec=$thread_safe_flag_spec
2714
2715# Library versioning type.
2716version_type=$version_type
2717
2718# Format of library name prefix.
2719libname_spec=$libname_spec
2720
2721# List of archive names.  First name is the real one, the rest are links.
2722# The last name is the one that the linker finds with -lNAME.
2723library_names_spec=$library_names_spec
2724
2725# The coded name of the library, if different from the real name.
2726soname_spec=$soname_spec
2727
2728# Commands used to build and install an old-style archive.
2729RANLIB=$RANLIB
2730old_archive_cmds=$old_archive_cmds
2731old_postinstall_cmds=$old_postinstall_cmds
2732old_postuninstall_cmds=$old_postuninstall_cmds
2733
2734# Create an old-style archive from a shared archive.
2735old_archive_from_new_cmds=$old_archive_from_new_cmds
2736
2737# Commands used to build and install a shared archive.
2738archive_cmds=$archive_cmds
2739archive_expsym_cmds=$archive_expsym_cmds
2740postinstall_cmds=$postinstall_cmds
2741postuninstall_cmds=$postuninstall_cmds
2742
2743# Method to check whether dependent libraries are shared objects.
2744deplibs_check_method=$deplibs_check_method
2745
2746# Command to use when deplibs_check_method == file_magic.
2747file_magic_cmd=$file_magic_cmd
2748
2749# Flag that allows shared libraries with undefined symbols to be built.
2750allow_undefined_flag=$allow_undefined_flag
2751
2752# Flag that forces no undefined symbols.
2753no_undefined_flag=$no_undefined_flag
2754
2755# Commands used to finish a libtool library installation in a directory.
2756finish_cmds=$finish_cmds
2757
2758# Same as above, but a single script fragment to be evaled but not shown.
2759finish_eval=$finish_eval
2760
2761# Take the output of nm and produce a listing of raw symbols and C names.
2762global_symbol_pipe=$global_symbol_pipe
2763
2764# Transform the output of nm in a proper C declaration
2765global_symbol_to_cdecl=$global_symbol_to_cdecl
2766
2767# This is the shared library runtime path variable.
2768runpath_var=$runpath_var
2769
2770# This is the shared library path variable.
2771shlibpath_var=$shlibpath_var
2772
2773# Is shlibpath searched before the hard-coded library search path?
2774shlibpath_overrides_runpath=$shlibpath_overrides_runpath
2775
2776# How to hardcode a shared library path into an executable.
2777hardcode_action=$hardcode_action
2778
2779# Flag to hardcode \$libdir into a binary during linking.
2780# This must work even if \$libdir does not exist.
2781hardcode_libdir_flag_spec=$hardcode_libdir_flag_spec
2782
2783# Whether we need a single -rpath flag with a separated argument.
2784hardcode_libdir_separator=$hardcode_libdir_separator
2785
2786# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
2787# resulting binary.
2788hardcode_direct=$hardcode_direct
2789
2790# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
2791# resulting binary.
2792hardcode_minus_L=$hardcode_minus_L
2793
2794# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
2795# the resulting binary.
2796hardcode_shlibpath_var=$hardcode_shlibpath_var
2797
2798# Compile-time system search path for libraries
2799sys_lib_search_path_spec=$sys_lib_search_path_spec
2800
2801# Run-time system search path for libraries
2802sys_lib_dlsearch_path_spec=$sys_lib_dlsearch_path_spec
2803
2804# Fix the shell variable \$srcfile for the compiler.
2805fix_srcfile_path="$fix_srcfile_path"
2806
2807# Set to yes if exported symbols are required.
2808always_export_symbols=$always_export_symbols
2809
2810# The commands to list exported symbols.
2811export_symbols_cmds=$export_symbols_cmds
2812
2813# Symbols that should not be listed in the preloaded symbols.
2814exclude_expsyms=$exclude_expsyms
2815
2816# Symbols that must always be exported.
2817include_expsyms=$include_expsyms
2818
2819EOF
2820
2821case "$ltmain" in
2822*.sh)
2823  echo '### END LIBTOOL CONFIG' >> "$ofile"
2824  echo >> "$ofile"
2825  case "$host_os" in
2826  aix3*)
2827    cat <<\EOF >> "$ofile"
2828
2829# AIX sometimes has problems with the GCC collect2 program.  For some
2830# reason, if we set the COLLECT_NAMES environment variable, the problems
2831# vanish in a puff of smoke.
2832if test "${COLLECT_NAMES+set}" != set; then
2833  COLLECT_NAMES=
2834  export COLLECT_NAMES
2835fi
2836EOF
2837    ;;
2838  esac
2839
2840  # Append the ltmain.sh script.
2841  cat "$ltmain" >> "$ofile" || (rm -f "$ofile"; exit 1)
2842
2843  chmod +x "$ofile"
2844  ;;
2845
2846*)
2847  # Compile the libtool program.
2848  echo "FIXME: would compile $ltmain"
2849  ;;
2850esac
2851
2852test -n "$cache_file" || exit 0
2853
2854# AC_CACHE_SAVE
2855trap '' 1 2 15
2856cat > confcache <<\EOF
2857# This file is a shell script that caches the results of configure
2858# tests run on this system so they can be shared between configure
2859# scripts and configure runs.  It is not useful on other systems.
2860# If it contains results you don't want to keep, you may remove or edit it.
2861#
2862# By default, configure uses ./config.cache as the cache file,
2863# creating it if it does not exist already.  You can give configure
2864# the --cache-file=FILE option to use a different cache file; that is
2865# what configure does when it calls configure scripts in
2866# subdirectories, so they share the cache.
2867# Giving --cache-file=/dev/null disables caching, for debugging configure.
2868# config.status only pays attention to the cache file if you give it the
2869# --recheck option to rerun configure.
2870#
2871EOF
2872# The following way of writing the cache mishandles newlines in values,
2873# but we know of no workaround that is simple, portable, and efficient.
2874# So, don't put newlines in cache variables' values.
2875# Ultrix sh set writes to stderr and can't be redirected directly,
2876# and sets the high bit in the cache file unless we assign to the vars.
2877(set) 2>&1 |
2878  case `(ac_space=' '; set | grep ac_space) 2>&1` in
2879  *ac_space=\ *)
2880    # `set' does not quote correctly, so add quotes (double-quote substitution
2881    # turns \\\\ into \\, and sed turns \\ into \).
2882    sed -n \
2883      -e "s/'/'\\\\''/g" \
2884      -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
2885    ;;
2886  *)
2887    # `set' quotes correctly as required by POSIX, so do not add quotes.
2888    sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
2889    ;;
2890  esac >> confcache
2891if cmp -s $cache_file confcache; then
2892  :
2893else
2894  if test -w $cache_file; then
2895    echo "updating cache $cache_file"
2896    cat confcache > $cache_file
2897  else
2898    echo "not updating unwritable cache $cache_file"
2899  fi
2900fi
2901rm -f confcache
2902
2903exit 0
2904
2905# Local Variables:
2906# mode:shell-script
2907# sh-indentation:2
2908# End:
2909