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