blob: fc947acaf9842b24c3d59911a751c800320ecae4 [file] [log] [blame]
San Mehata430b2b2014-09-23 08:30:51 -07001AH_TEMPLATE(socklen_t, [The type for socklen])
2AC_DEFUN([AC_TYPE_SOCKLEN_T],
3[AC_CACHE_CHECK([for socklen_t], ac_cv_type_socklen_t,
4[
5 AC_TRY_COMPILE(
6 [#include <sys/types.h>
7 #include <sys/socket.h>],
8 [socklen_t len = 42; return 0;],
9 ac_cv_type_socklen_t=yes,
10 ac_cv_type_socklen_t=no)
11])
12 if test $ac_cv_type_socklen_t != yes; then
13 AC_DEFINE(socklen_t, int)
14 fi
15])
16
17dnl Available from the GNU Autoconf Macro Archive at:
18dnl http://www.gnu.org/software/ac-archive/htmldoc/ac_compile_check_sizeof.html
19dnl
20AC_DEFUN([AC_COMPILE_CHECK_SIZEOF],
21[changequote(<<, >>)dnl
22dnl The name to #define.
23define(<<AC_TYPE_NAME>>, translit(sizeof_$1, [a-z *], [A-Z_P]))dnl
24dnl The cache variable name.
25define(<<AC_CV_NAME>>, translit(ac_cv_sizeof_$1, [ *], [_p]))dnl
26changequote([, ])dnl
27AC_MSG_CHECKING(size of $1)
28AC_CACHE_VAL(AC_CV_NAME,
29[for ac_size in 4 8 1 2 16 $2 ; do # List sizes in rough order of prevalence.
30 AC_TRY_COMPILE([#include "confdefs.h"
31#include <sys/types.h>
32$2
33], [switch (0) case 0: case (sizeof ($1) == $ac_size):;], AC_CV_NAME=$ac_size)
34 if test x$AC_CV_NAME != x ; then break; fi
35done
36])
37if test x$AC_CV_NAME = x ; then
38 AC_MSG_ERROR([cannot determine a size for $1])
39fi
40AC_MSG_RESULT($AC_CV_NAME)
41AC_DEFINE_UNQUOTED(AC_TYPE_NAME, $AC_CV_NAME, [The number of bytes in type $1])
42undefine([AC_TYPE_NAME])dnl
43undefine([AC_CV_NAME])dnl
44])
45
46dnl Available from the GNU Autoconf Macro Archive at:
47dnl http://www.gnu.org/software/ac-archive/htmldoc/ac_create_stdint_h.html
48dnl
49AC_DEFUN([AC_CREATE_STDINT_H],
50[# ------ AC CREATE STDINT H -------------------------------------
51AC_MSG_CHECKING([for stdint-types....])
52ac_stdint_h=`echo ifelse($1, , _stdint.h, $1)`
53if test "$ac_stdint_h" = "stdint.h" ; then
54 AC_MSG_RESULT("(are you sure you want them in ./stdint.h?)")
55elif test "$ac_stdint_h" = "inttypes.h" ; then
56 AC_MSG_RESULT("(are you sure you want them in ./inttypes.h?)")
57else
58 AC_MSG_RESULT("(putting them into $ac_stdint_h)")
59fi
60
61inttype_headers=`echo inttypes.h sys/inttypes.h sys/inttypes.h $2 \
62| sed -e 's/,/ /g'`
63
64 ac_cv_header_stdint_x="no-file"
65 ac_cv_header_stdint_o="no-file"
66 ac_cv_header_stdint_u="no-file"
67 for i in stdint.h $inttype_headers ; do
68 unset ac_cv_type_uintptr_t
69 unset ac_cv_type_uint64_t
70 _AC_CHECK_TYPE_NEW(uintptr_t,[ac_cv_header_stdint_x=$i],dnl
71 continue,[#include <$i>])
72 AC_CHECK_TYPE(uint64_t,[and64="(uint64_t too)"],[and64=""],[#include<$i>])
73 AC_MSG_RESULT(... seen our uintptr_t in $i $and64)
74 break;
75 done
76 if test "$ac_cv_header_stdint_x" = "no-file" ; then
77 for i in stdint.h $inttype_headers ; do
78 unset ac_cv_type_uint32_t
79 unset ac_cv_type_uint64_t
80 AC_CHECK_TYPE(uint32_t,[ac_cv_header_stdint_o=$i],dnl
81 continue,[#include <$i>])
82 AC_CHECK_TYPE(uint64_t,[and64="(uint64_t too)"],[and64=""],[#include<$i>])
83 AC_MSG_RESULT(... seen our uint32_t in $i $and64)
84 break;
85 done
86 if test "$ac_cv_header_stdint_o" = "no-file" ; then
87 for i in sys/types.h $inttype_headers ; do
88 unset ac_cv_type_u_int32_t
89 unset ac_cv_type_u_int64_t
90 AC_CHECK_TYPE(u_int32_t,[ac_cv_header_stdint_u=$i],dnl
91 continue,[#include <$i>])
92 AC_CHECK_TYPE(uint64_t,[and64="(u_int64_t too)"],[and64=""],[#include<$i>])
93 AC_MSG_RESULT(... seen our u_int32_t in $i $and64)
94 break;
95 done
96 fi
97 fi
98
99# ----------------- DONE inttypes.h checks MAYBE C basic types --------
100
101if test "$ac_cv_header_stdint_x" = "no-file" ; then
102 AC_COMPILE_CHECK_SIZEOF(char)
103 AC_COMPILE_CHECK_SIZEOF(short)
104 AC_COMPILE_CHECK_SIZEOF(int)
105 AC_COMPILE_CHECK_SIZEOF(long)
106 AC_COMPILE_CHECK_SIZEOF(void*)
107 ac_cv_header_stdint_test="yes"
108else
109 ac_cv_header_stdint_test="no"
110fi
111
112# ----------------- DONE inttypes.h checks START header -------------
113_ac_stdint_h=AS_TR_CPP(_$ac_stdint_h)
114AC_MSG_RESULT(creating $ac_stdint_h : $_ac_stdint_h)
115echo "#ifndef" $_ac_stdint_h >$ac_stdint_h
116echo "#define" $_ac_stdint_h "1" >>$ac_stdint_h
117echo "#ifndef" _GENERATED_STDINT_H >>$ac_stdint_h
118echo "#define" _GENERATED_STDINT_H '"'$PACKAGE $VERSION'"' >>$ac_stdint_h
119if test "$GCC" = "yes" ; then
120 echo "/* generated using a gnu compiler version" `$CC --version` "*/" \
121 >>$ac_stdint_h
122else
123 echo "/* generated using $CC */" >>$ac_stdint_h
124fi
125echo "" >>$ac_stdint_h
126
127if test "$ac_cv_header_stdint_x" != "no-file" ; then
128 ac_cv_header_stdint="$ac_cv_header_stdint_x"
129elif test "$ac_cv_header_stdint_o" != "no-file" ; then
130 ac_cv_header_stdint="$ac_cv_header_stdint_o"
131elif test "$ac_cv_header_stdint_u" != "no-file" ; then
132 ac_cv_header_stdint="$ac_cv_header_stdint_u"
133else
134 ac_cv_header_stdint="stddef.h"
135fi
136
137# ----------------- See if int_least and int_fast types are present
138unset ac_cv_type_int_least32_t
139unset ac_cv_type_int_fast32_t
140AC_CHECK_TYPE(int_least32_t,,,[#include <$ac_cv_header_stdint>])
141AC_CHECK_TYPE(int_fast32_t,,,[#include<$ac_cv_header_stdint>])
142
143if test "$ac_cv_header_stdint" != "stddef.h" ; then
144if test "$ac_cv_header_stdint" != "stdint.h" ; then
145AC_MSG_RESULT(..adding include stddef.h)
146 echo "#include <stddef.h>" >>$ac_stdint_h
147fi ; fi
148AC_MSG_RESULT(..adding include $ac_cv_header_stdint)
149 echo "#include <$ac_cv_header_stdint>" >>$ac_stdint_h
150echo "" >>$ac_stdint_h
151
152# ----------------- DONE header START basic int types -------------
153if test "$ac_cv_header_stdint_x" = "no-file" ; then
154 AC_MSG_RESULT(... need to look at C basic types)
155dnl ac_cv_header_stdint_test="yes" # moved up before creating the file
156else
157 AC_MSG_RESULT(... seen good stdint.h inttypes)
158dnl ac_cv_header_stdint_test="no" # moved up before creating the file
159fi
160
161if test "$ac_cv_header_stdint_u" != "no-file" ; then
162 AC_MSG_RESULT(... seen bsd/sysv typedefs)
163 cat >>$ac_stdint_h <<EOF
164
165/* int8_t int16_t int32_t defined by inet code, redeclare the u_intXX types */
166typedef u_int8_t uint8_t;
167typedef u_int16_t uint16_t;
168typedef u_int32_t uint32_t;
169EOF
170 cat >>$ac_stdint_h <<EOF
171
172/* glibc compatibility */
173#ifndef __int8_t_defined
174#define __int8_t_defined
175#endif
176EOF
177fi
178
179ac_cv_sizeof_x="$ac_cv_sizeof_char:$ac_cv_sizeof_short"
180ac_cv_sizeof_X="$ac_cv_sizeof_x:$ac_cv_sizeof_int"
181ac_cv_sizeof_X="$ac_cv_sizeof_X:$ac_cv_sizeof_voidp:$ac_cv_sizeof_long"
182if test "$ac_cv_header_stdint" = "stddef.h" ; then
183# we must guess all the basic types. Apart from byte-adressable system,
184# there a few 32-bit-only dsp-systems. nibble-addressable systems are way off.
185 cat >>$ac_stdint_h <<EOF
186/* ------------ BITSPECIFIC INTTYPES SECTION --------------- */
187EOF
188 t="typedefs for a"
189 case "$ac_cv_sizeof_X" in
190 1:2:2:2:4) AC_MSG_RESULT(..adding $t normal 16-bit system)
191 cat >>$ac_stdint_h <<EOF
192/* a normal 16-bit system */
193typedef unsigned char uint8_t;
194typedef unsigned short uint16_t;
195typedef unsigned long uint32_t;
196#ifndef __int8_t_defined
197#define __int8_t_defined
198typedef char int8_t;
199typedef short int16_t;
200typedef long int32_t;
201#endif
202EOF
203;;
204 1:2:2:4:4) AC_MSG_RESULT(..adding $t 32-bit system derived from a 16-bit)
205 cat >>$ac_stdint_h <<EOF
206/* a 32-bit system derived from a 16-bit */
207typedef unsigned char uint8_t;
208typedef unsigned short uint16_t;
209typedef unsigned int uint32_t;
210#ifndef __int8_t_defined
211#define __int8_t_defined
212typedef char int8_t;
213typedef short int16_t;
214typedef int int32_t;
215#endif
216EOF
217;;
218 1:2:4:4:4) AC_MSG_RESULT(..adding $t normal 32-bit system)
219 cat >>$ac_stdint_h <<EOF
220/* a normal 32-bit system */
221typedef unsigned char uint8_t;
222typedef unsigned short uint16_t;
223typedef unsigned int uint32_t;
224#ifndef __int8_t_defined
225#define __int8_t_defined
226typedef char int8_t;
227typedef short int16_t;
228typedef int int32_t;
229#endif
230EOF
231;;
232 1:2:4:4:8) AC_MSG_RESULT(..adding $t 32-bit system prepared for 64-bit)
233 cat >>$ac_stdint_h <<EOF
234
235/* a 32-bit system prepared for 64-bit */
236typedef unsigned char uint8_t;
237typedef unsigned short uint16_t;
238typedef unsigned int uint32_t;
239#ifndef __int8_t_defined
240#define __int8_t_defined
241typedef char int8_t;
242typedef short int16_t;
243typedef int int32_t;
244#endif
245EOF
246;;
247 1:2:4:8:8) AC_MSG_RESULT(..adding $t normal 64-bit system)
248 cat >>$ac_stdint_h <<EOF
249
250/* a normal 64-bit system */
251typedef unsigned char uint8_t;
252typedef unsigned short uint16_t;
253typedef unsigned int uint32_t;
254#ifndef __int8_t_defined
255#define __int8_t_defined
256typedef char int8_t;
257typedef short int16_t;
258typedef int int32_t;
259#endif
260EOF
261;;
262 1:2:4:8:4) AC_MSG_RESULT(..adding $t 64-bit system derived from a 32-bit)
263 cat >>$ac_stdint_h <<EOF
264
265/* a 64-bit system derived from a 32-bit system */
266typedef unsigned char uint8_t;
267typedef unsigned short uint16_t;
268typedef unsigned int uint32_t;
269#ifndef __int8_t_defined
270#define __int8_t_defined
271typedef char int8_t;
272typedef short int16_t;
273typedef int int32_t;
274#endif
275EOF
276;;
277 *)
278 AC_MSG_ERROR([ $ac_cv_sizeof_X dnl
279 what is that a system? contact the author, quick! http://ac-archive.sf.net])
280 exit 1
281;;
282 esac
283fi
284
285# ------------- DONE basic int types START int64_t types ------------
286if test "$ac_cv_type_uint64_t" = "yes"
287then AC_MSG_RESULT(... seen good uint64_t)
288 cat >>$ac_stdint_h <<EOF
289
290/* system headers have good uint64_t */
291#ifndef _HAVE_UINT64_T
292#define _HAVE_UINT64_T
293#endif
294EOF
295
296elif test "$ac_cv_type_u_int64_t" = "yes"
297then AC_MSG_RESULT(..adding typedef u_int64_t uint64_t)
298 cat >>$ac_stdint_h <<EOF
299
300/* system headers have an u_int64_t */
301#ifndef _HAVE_UINT64_T
302#define _HAVE_UINT64_T
303typedef u_int64_t uint64_t;
304#endif
305EOF
306else AC_MSG_RESULT(..adding generic uint64_t runtime checks)
307 cat >>$ac_stdint_h <<EOF
308
309/* -------------------- 64 BIT GENERIC SECTION -------------------- */
310/* here are some common heuristics using compiler runtime specifics */
311#if defined __STDC_VERSION__ && defined __STDC_VERSION__ > 199901L
312
313#ifndef _HAVE_UINT64_T
314#define _HAVE_UINT64_T
315typedef long long int64_t;
316typedef unsigned long long uint64_t;
317#endif
318
319#elif !defined __STRICT_ANSI__
320#if defined _MSC_VER || defined __WATCOMC__ || defined __BORLANDC__
321
322#ifndef _HAVE_UINT64_T
323#define _HAVE_UINT64_T
324typedef __int64 int64_t;
325typedef unsigned __int64 uint64_t;
326#endif
327
328#elif defined __GNUC__ || defined __MWERKS__ || defined __ELF__
329dnl /* note: all ELF-systems seem to have loff-support which needs 64-bit */
330
331#if !defined _NO_LONGLONG
332#ifndef _HAVE_UINT64_T
333#define _HAVE_UINT64_T
334typedef long long int64_t;
335typedef unsigned long long uint64_t;
336#endif
337#endif
338
339#elif defined __alpha || (defined __mips && defined _ABIN32)
340
341#if !defined _NO_LONGLONG
342#ifndef _HAVE_UINT64_T
343#define _HAVE_UINT64_T
344typedef long int64_t;
345typedef unsigned long uint64_t;
346#endif
347#endif
348 /* compiler/cpu type ... or just ISO C99 */
349#endif
350#endif
351EOF
352
353# plus a default 64-bit for systems that are likely to be 64-bit ready
354 case "$ac_cv_sizeof_x:$ac_cv_sizeof_voidp:$ac_cv_sizeof_long" in
355 1:2:8:8) AC_MSG_RESULT(..adding uint64_t default, normal 64-bit system)
356cat >>$ac_stdint_h <<EOF
357/* DEFAULT: */
358/* seen normal 64-bit system, CC has sizeof(long and void*) == 8 bytes */
359#ifndef _HAVE_UINT64_T
360#define _HAVE_UINT64_T
361typedef long int64_t;
362typedef unsigned long uint64_t;
363#endif
364EOF
365;;
366 1:2:4:8) AC_MSG_RESULT(..adding uint64_t default, typedef to long)
367cat >>$ac_stdint_h <<EOF
368/* DEFAULT: */
369/* seen 32-bit system prepared for 64-bit, CC has sizeof(long) == 8 bytes */
370#ifndef _HAVE_UINT64_T
371#define _HAVE_UINT64_T
372typedef long int64_t;
373typedef unsigned long uint64_t;
374#endif
375EOF
376;;
377 1:2:8:4) AC_MSG_RESULT(..adding uint64_t default, typedef long long)
378cat >>$ac_stdint_h <<EOF
379/* DEFAULT: */
380/* seen 64-bit derived from a 32-bit, CC has sizeof(long) == 4 bytes */
381#ifndef _HAVE_UINT64_T
382#define _HAVE_UINT64_T
383typedef long long int64_t;
384typedef unsigned long long uint64_t;
385#endif
386EOF
387;;
388 *)
389cat >>$ac_stdint_h <<EOF
390/* NOTE: */
391/* the configure-checks for the basic types did not make us believe */
392/* that we could add a fallback to a 'long long' typedef to int64_t */
393EOF
394 esac
395fi
396
397# ------------- DONE int64_t types START intptr types ------------
398if test "$ac_cv_header_stdint_x" = "no-file" ; then
399 cat >>$ac_stdint_h <<EOF
400
401/* -------------------------- INPTR SECTION --------------------------- */
402EOF
403 case "$ac_cv_sizeof_x:$ac_cv_sizeof_voidp" in
404 1:2:2)
405 a="int16_t" ; cat >>$ac_stdint_h <<EOF
406/* we tested sizeof(void*) to be of 2 chars, hence we declare it 16-bit */
407
408typedef uint16_t uintptr_t;
409typedef int16_t intptr_t;
410EOF
411;;
412 1:2:4)
413 a="int32_t" ; cat >>$ac_stdint_h <<EOF
414/* we tested sizeof(void*) to be of 4 chars, hence we declare it 32-bit */
415
416typedef uint32_t uintptr_t;
417typedef int32_t intptr_t;
418EOF
419;;
420 1:2:8)
421 a="int64_t" ; cat >>$ac_stdint_h <<EOF
422/* we tested sizeof(void*) to be of 8 chars, hence we declare it 64-bit */
423
424typedef uint64_t uintptr_t;
425typedef int64_t intptr_t;
426EOF
427;;
428 *)
429 a="long" ; cat >>$ac_stdint_h <<EOF
430/* we tested sizeof(void*) but got no guess, hence we declare it as if long */
431
432typedef unsigned long uintptr_t;
433typedef long intptr_t;
434EOF
435;;
436 esac
437AC_MSG_RESULT(..adding typedef $a intptr_t)
438fi
439
440# ------------- DONE intptr types START int_least types ------------
441if test "$ac_cv_type_int_least32_t" = "no"; then
442AC_MSG_RESULT(..adding generic int_least-types)
443 cat >>$ac_stdint_h <<EOF
444
445/* --------------GENERIC INT_LEAST ------------------ */
446
447typedef int8_t int_least8_t;
448typedef int16_t int_least16_t;
449typedef int32_t int_least32_t;
450#ifdef _HAVE_INT64_T
451typedef int64_t int_least64_t;
452#endif
453
454typedef uint8_t uint_least8_t;
455typedef uint16_t uint_least16_t;
456typedef uint32_t uint_least32_t;
457#ifdef _HAVE_INT64_T
458typedef uint64_t uint_least64_t;
459#endif
460EOF
461fi
462
463# ------------- DONE intptr types START int_least types ------------
464if test "$ac_cv_type_int_fast32_t" = "no"; then
465AC_MSG_RESULT(..adding generic int_fast-types)
466 cat >>$ac_stdint_h <<EOF
467
468/* --------------GENERIC INT_FAST ------------------ */
469
470typedef int8_t int_fast8_t;
471typedef int32_t int_fast16_t;
472typedef int32_t int_fast32_t;
473#ifdef _HAVE_INT64_T
474typedef int64_t int_fast64_t;
475#endif
476
477typedef uint8_t uint_fast8_t;
478typedef uint32_t uint_fast16_t;
479typedef uint32_t uint_fast32_t;
480#ifdef _HAVE_INT64_T
481typedef uint64_t uint_fast64_t;
482#endif
483EOF
484fi
485
486if test "$ac_cv_header_stdint_x" = "no-file" ; then
487 cat >>$ac_stdint_h <<EOF
488
489#ifdef _HAVE_INT64_T
490typedef int64_t intmax_t;
491typedef uint64_t uintmax_t;
492#else
493typedef long int intmax_t;
494typedef unsigned long uintmax_t;
495#endif
496EOF
497fi
498
499AC_MSG_RESULT(... DONE $ac_stdint_h)
500 cat >>$ac_stdint_h <<EOF
501
502 /* once */
503#endif
504#endif
505EOF
506])
507
508dnl quote from SunOS-5.8 sys/inttypes.h:
509dnl Use at your own risk. As of February 1996, the committee is squarely
510dnl behind the fixed sized types; the "least" and "fast" types are still being
511dnl discussed. The probability that the "fast" types may be removed before
512dnl the standard is finalized is high enough that they are not currently
513dnl implemented.
514
515dnl Available from the GNU Autoconf Macro Archive at:
516dnl http://www.gnu.org/software/ac-archive/htmldoc/ax_prefix_config_h.html
517dnl
518AC_DEFUN([AX_PREFIX_CONFIG_H],[AC_REQUIRE([AC_CONFIG_HEADER])
519AC_CONFIG_COMMANDS([ifelse($1,,$PACKAGE-config.h,$1)],[dnl
520AS_VAR_PUSHDEF([_OUT],[ac_prefix_conf_OUT])dnl
521AS_VAR_PUSHDEF([_DEF],[ac_prefix_conf_DEF])dnl
522AS_VAR_PUSHDEF([_PKG],[ac_prefix_conf_PKG])dnl
523AS_VAR_PUSHDEF([_LOW],[ac_prefix_conf_LOW])dnl
524AS_VAR_PUSHDEF([_UPP],[ac_prefix_conf_UPP])dnl
525AS_VAR_PUSHDEF([_INP],[ac_prefix_conf_INP])dnl
526m4_pushdef([_script],[conftest.prefix])dnl
527m4_pushdef([_symbol],[m4_cr_Letters[]m4_cr_digits[]_])dnl
528_OUT=`echo ifelse($1, , $PACKAGE-config.h, $1)`
529_DEF=`echo _$_OUT | sed -e "y:m4_cr_letters:m4_cr_LETTERS[]:" -e "s/@<:@^m4_cr_Letters@:>@/_/g"`
530_PKG=`echo ifelse($2, , $PACKAGE, $2)`
531_LOW=`echo _$_PKG | sed -e "y:m4_cr_LETTERS-:m4_cr_letters[]_:"`
532_UPP=`echo $_PKG | sed -e "y:m4_cr_letters-:m4_cr_LETTERS[]_:" -e "/^@<:@m4_cr_digits@:>@/s/^/_/"`
533_INP=`echo ifelse($3, , _, $3)`
534if test "$ac_prefix_conf_INP" = "_"; then
535 for ac_file in : $CONFIG_HEADERS; do test "_$ac_file" = _: && continue
536 test -f "$ac_prefix_conf_INP" && continue
537 case $ac_file in
538 *.h) test -f $ac_file && _INP=$ac_file ;;
539 *)
540 esac
541 done
542fi
543if test "$_INP" = "_"; then
544 case "$_OUT" in
545 */*) _INP=`basename "$_OUT"`
546 ;;
547 *-*) _INP=`echo "$_OUT" | sed -e "s/@<:@_symbol@:>@*-//"`
548 ;;
549 *) _INP=config.h
550 ;;
551 esac
552fi
553if test -z "$_PKG" ; then
554 AC_MSG_ERROR([no prefix for _PREFIX_PKG_CONFIG_H])
555else
556 if test ! -f "$_INP" ; then if test -f "$srcdir/$_INP" ; then
557 _INP="$srcdir/$_INP"
558 fi fi
559 AC_MSG_NOTICE(creating $_OUT - prefix $_UPP for $_INP defines)
560 if test -f $_INP ; then
561 echo "s/@%:@undef *\\(@<:@m4_cr_LETTERS[]_@:>@\\)/@%:@undef $_UPP""_\\1/" > _script
562 # no! these are things like socklen_t, const, vfork
563 # echo "s/@%:@undef *\\(@<:@m4_cr_letters@:>@\\)/@%:@undef $_LOW""_\\1/" >> _script
564 echo "s/@%:@def[]ine *\\(@<:@m4_cr_LETTERS[]_@:>@@<:@_symbol@:>@*\\)\\(.*\\)/@%:@ifndef $_UPP""_\\1 \\" >> _script
565 echo "@%:@def[]ine $_UPP""_\\1 \\2 \\" >> _script
566 echo "@%:@endif/" >>_script
567 # no! these are things like socklen_t, const, vfork
568 # echo "s/@%:@def[]ine *\\(@<:@m4_cr_letters@:>@@<:@_symbol@:>@*\\)\\(.*\\)/@%:@ifndef $_LOW""_\\1 \\" >> _script
569 # echo "@%:@define $_LOW""_\\1 \\2 \\" >> _script
570 # echo "@%:@endif/" >> _script
571 # now executing _script on _DEF input to create _OUT output file
572 echo "@%:@ifndef $_DEF" >$tmp/pconfig.h
573 echo "@%:@def[]ine $_DEF 1" >>$tmp/pconfig.h
574 echo ' ' >>$tmp/pconfig.h
575 echo /'*' $_OUT. Generated automatically at end of configure. '*'/ >>$tmp/pconfig.h
576
577 sed -f _script $_INP >>$tmp/pconfig.h
578 echo ' ' >>$tmp/pconfig.h
579 echo '/* once:' $_DEF '*/' >>$tmp/pconfig.h
580 echo "@%:@endif" >>$tmp/pconfig.h
581 if cmp -s $_OUT $tmp/pconfig.h 2>/dev/null; then
582 AC_MSG_NOTICE([$_OUT is unchanged])
583 else
584 ac_dir=`AS_DIRNAME(["$_OUT"])`
585 AS_MKDIR_P(["$ac_dir"])
586 rm -f "$_OUT"
587 mv $tmp/pconfig.h "$_OUT"
588 fi
589 cp _script _configs.sed
590 else
591 AC_MSG_ERROR([input file $_INP does not exist - skip generating $_OUT])
592 fi
593 rm -f conftest.*
594fi
595m4_popdef([_symbol])dnl
596m4_popdef([_script])dnl
597AS_VAR_POPDEF([_INP])dnl
598AS_VAR_POPDEF([_UPP])dnl
599AS_VAR_POPDEF([_LOW])dnl
600AS_VAR_POPDEF([_PKG])dnl
601AS_VAR_POPDEF([_DEF])dnl
602AS_VAR_POPDEF([_OUT])dnl
603],[PACKAGE="$PACKAGE"])])
604
605# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
606## Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005
607## Free Software Foundation, Inc.
608## Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
609##
610## This file is free software; the Free Software Foundation gives
611## unlimited permission to copy and/or distribute it, with or without
612## modifications, as long as this notice is preserved.
613
614# serial 48 AC_PROG_LIBTOOL
615
616
617# AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED)
618# -----------------------------------------------------------
619# If this macro is not defined by Autoconf, define it here.
620m4_ifdef([AC_PROVIDE_IFELSE],
621 [],
622 [m4_define([AC_PROVIDE_IFELSE],
623 [m4_ifdef([AC_PROVIDE_$1],
624 [$2], [$3])])])
625
626
627# AC_PROG_LIBTOOL
628# ---------------
629AC_DEFUN([AC_PROG_LIBTOOL],
630[AC_REQUIRE([_AC_PROG_LIBTOOL])dnl
631dnl If AC_PROG_CXX has already been expanded, run AC_LIBTOOL_CXX
632dnl immediately, otherwise, hook it in at the end of AC_PROG_CXX.
633 AC_PROVIDE_IFELSE([AC_PROG_CXX],
634 [AC_LIBTOOL_CXX],
635 [define([AC_PROG_CXX], defn([AC_PROG_CXX])[AC_LIBTOOL_CXX
636 ])])
637dnl And a similar setup for Fortran 77 support
638 AC_PROVIDE_IFELSE([AC_PROG_F77],
639 [AC_LIBTOOL_F77],
640 [define([AC_PROG_F77], defn([AC_PROG_F77])[AC_LIBTOOL_F77
641])])
642
643dnl Quote A][M_PROG_GCJ so that aclocal doesn't bring it in needlessly.
644dnl If either AC_PROG_GCJ or A][M_PROG_GCJ have already been expanded, run
645dnl AC_LIBTOOL_GCJ immediately, otherwise, hook it in at the end of both.
646 AC_PROVIDE_IFELSE([AC_PROG_GCJ],
647 [AC_LIBTOOL_GCJ],
648 [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
649 [AC_LIBTOOL_GCJ],
650 [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],
651 [AC_LIBTOOL_GCJ],
652 [ifdef([AC_PROG_GCJ],
653 [define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[AC_LIBTOOL_GCJ])])
654 ifdef([A][M_PROG_GCJ],
655 [define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[AC_LIBTOOL_GCJ])])
656 ifdef([LT_AC_PROG_GCJ],
657 [define([LT_AC_PROG_GCJ],
658 defn([LT_AC_PROG_GCJ])[AC_LIBTOOL_GCJ])])])])
659])])# AC_PROG_LIBTOOL
660
661
662# _AC_PROG_LIBTOOL
663# ----------------
664AC_DEFUN([_AC_PROG_LIBTOOL],
665[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
666AC_BEFORE([$0],[AC_LIBTOOL_CXX])dnl
667AC_BEFORE([$0],[AC_LIBTOOL_F77])dnl
668AC_BEFORE([$0],[AC_LIBTOOL_GCJ])dnl
669
670# This can be used to rebuild libtool when needed
671LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
672
673# Always use our own libtool.
674LIBTOOL='$(SHELL) $(top_builddir)/libtool'
675AC_SUBST(LIBTOOL)dnl
676
677# Prevent multiple expansion
678define([AC_PROG_LIBTOOL], [])
679])# _AC_PROG_LIBTOOL
680
681
682# AC_LIBTOOL_SETUP
683# ----------------
684AC_DEFUN([AC_LIBTOOL_SETUP],
685[AC_PREREQ(2.50)dnl
686AC_REQUIRE([AC_ENABLE_SHARED])dnl
687AC_REQUIRE([AC_ENABLE_STATIC])dnl
688AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
689AC_REQUIRE([AC_CANONICAL_HOST])dnl
690AC_REQUIRE([AC_CANONICAL_BUILD])dnl
691AC_REQUIRE([AC_PROG_CC])dnl
692AC_REQUIRE([AC_PROG_LD])dnl
693AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
694AC_REQUIRE([AC_PROG_NM])dnl
695
696AC_REQUIRE([AC_PROG_LN_S])dnl
697AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
698# Autoconf 2.13's AC_OBJEXT and AC_EXEEXT macros only works for C compilers!
699AC_REQUIRE([AC_OBJEXT])dnl
700AC_REQUIRE([AC_EXEEXT])dnl
701dnl
702
703AC_LIBTOOL_SYS_MAX_CMD_LEN
704AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
705AC_LIBTOOL_OBJDIR
706
707AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
708_LT_AC_PROG_ECHO_BACKSLASH
709
710case $host_os in
711aix3*)
712 # AIX sometimes has problems with the GCC collect2 program. For some
713 # reason, if we set the COLLECT_NAMES environment variable, the problems
714 # vanish in a puff of smoke.
715 if test "X${COLLECT_NAMES+set}" != Xset; then
716 COLLECT_NAMES=
717 export COLLECT_NAMES
718 fi
719 ;;
720esac
721
722# Sed substitution that helps us do robust quoting. It backslashifies
723# metacharacters that are still active within double-quoted strings.
724Xsed='sed -e 1s/^X//'
725[sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g']
726
727# Same as above, but do not quote variable references.
728[double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g']
729
730# Sed substitution to delay expansion of an escaped shell variable in a
731# double_quote_subst'ed string.
732delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
733
734# Sed substitution to avoid accidental globbing in evaled expressions
735no_glob_subst='s/\*/\\\*/g'
736
737# Constants:
738rm="rm -f"
739
740# Global variables:
741default_ofile=libtool
742can_build_shared=yes
743
744# All known linkers require a `.a' archive for static linking (except MSVC,
745# which needs '.lib').
746libext=a
747ltmain="$ac_aux_dir/ltmain.sh"
748ofile="$default_ofile"
749with_gnu_ld="$lt_cv_prog_gnu_ld"
750
751AC_CHECK_TOOL(AR, ar, false)
752AC_CHECK_TOOL(RANLIB, ranlib, :)
753AC_CHECK_TOOL(STRIP, strip, :)
754
755old_CC="$CC"
756old_CFLAGS="$CFLAGS"
757
758# Set sane defaults for various variables
759test -z "$AR" && AR=ar
760test -z "$AR_FLAGS" && AR_FLAGS=cru
761test -z "$AS" && AS=as
762test -z "$CC" && CC=cc
763test -z "$LTCC" && LTCC=$CC
764test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
765test -z "$DLLTOOL" && DLLTOOL=dlltool
766test -z "$LD" && LD=ld
767test -z "$LN_S" && LN_S="ln -s"
768test -z "$MAGIC_CMD" && MAGIC_CMD=file
769test -z "$NM" && NM=nm
770test -z "$SED" && SED=sed
771test -z "$OBJDUMP" && OBJDUMP=objdump
772test -z "$RANLIB" && RANLIB=:
773test -z "$STRIP" && STRIP=:
774test -z "$ac_objext" && ac_objext=o
775
776# Determine commands to create old-style static archives.
777old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
778old_postinstall_cmds='chmod 644 $oldlib'
779old_postuninstall_cmds=
780
781if test -n "$RANLIB"; then
782 case $host_os in
783 openbsd*)
784 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
785 ;;
786 *)
787 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
788 ;;
789 esac
790 old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
791fi
792
793_LT_CC_BASENAME([$compiler])
794
795# Only perform the check for file, if the check method requires it
796case $deplibs_check_method in
797file_magic*)
798 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
799 AC_PATH_MAGIC
800 fi
801 ;;
802esac
803
804AC_PROVIDE_IFELSE([AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no)
805AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL],
806enable_win32_dll=yes, enable_win32_dll=no)
807
808AC_ARG_ENABLE([libtool-lock],
809 [AC_HELP_STRING([--disable-libtool-lock],
810 [avoid locking (might break parallel builds)])])
811test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
812
813AC_ARG_WITH([pic],
814 [AC_HELP_STRING([--with-pic],
815 [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
816 [pic_mode="$withval"],
817 [pic_mode=default])
818test -z "$pic_mode" && pic_mode=default
819
820# Use C for the default configuration in the libtool script
821tagname=
822AC_LIBTOOL_LANG_C_CONFIG
823_LT_AC_TAGCONFIG
824])# AC_LIBTOOL_SETUP
825
826
827# _LT_AC_SYS_COMPILER
828# -------------------
829AC_DEFUN([_LT_AC_SYS_COMPILER],
830[AC_REQUIRE([AC_PROG_CC])dnl
831
832# If no C compiler was specified, use CC.
833LTCC=${LTCC-"$CC"}
834
835# If no C compiler flags were specified, use CFLAGS.
836LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
837
838# Allow CC to be a program name with arguments.
839compiler=$CC
840])# _LT_AC_SYS_COMPILER
841
842
843# _LT_CC_BASENAME(CC)
844# -------------------
845# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
846AC_DEFUN([_LT_CC_BASENAME],
847[for cc_temp in $1""; do
848 case $cc_temp in
849 compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
850 distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
851 \-*) ;;
852 *) break;;
853 esac
854done
855cc_basename=`$echo "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
856])
857
858
859# _LT_COMPILER_BOILERPLATE
860# ------------------------
861# Check for compiler boilerplate output or warnings with
862# the simple compiler test code.
863AC_DEFUN([_LT_COMPILER_BOILERPLATE],
864[ac_outfile=conftest.$ac_objext
865printf "$lt_simple_compile_test_code" >conftest.$ac_ext
866eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
867_lt_compiler_boilerplate=`cat conftest.err`
868$rm conftest*
869])# _LT_COMPILER_BOILERPLATE
870
871
872# _LT_LINKER_BOILERPLATE
873# ----------------------
874# Check for linker boilerplate output or warnings with
875# the simple link test code.
876AC_DEFUN([_LT_LINKER_BOILERPLATE],
877[ac_outfile=conftest.$ac_objext
878printf "$lt_simple_link_test_code" >conftest.$ac_ext
879eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
880_lt_linker_boilerplate=`cat conftest.err`
881$rm conftest*
882])# _LT_LINKER_BOILERPLATE
883
884
885# _LT_AC_SYS_LIBPATH_AIX
886# ----------------------
887# Links a minimal program and checks the executable
888# for the system default hardcoded library path. In most cases,
889# this is /usr/lib:/lib, but when the MPI compilers are used
890# the location of the communication and MPI libs are included too.
891# If we don't find anything, use the default library path according
892# to the aix ld manual.
893AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX],
894[AC_LINK_IFELSE(AC_LANG_PROGRAM,[
895aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
896}'`
897# Check for a 64-bit object if we didn't find anything.
898if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; }
899}'`; fi],[])
900if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
901])# _LT_AC_SYS_LIBPATH_AIX
902
903
904# _LT_AC_SHELL_INIT(ARG)
905# ----------------------
906AC_DEFUN([_LT_AC_SHELL_INIT],
907[ifdef([AC_DIVERSION_NOTICE],
908 [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
909 [AC_DIVERT_PUSH(NOTICE)])
910$1
911AC_DIVERT_POP
912])# _LT_AC_SHELL_INIT
913
914
915# _LT_AC_PROG_ECHO_BACKSLASH
916# --------------------------
917# Add some code to the start of the generated configure script which
918# will find an echo command which doesn't interpret backslashes.
919AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH],
920[_LT_AC_SHELL_INIT([
921# Check that we are running under the correct shell.
922SHELL=${CONFIG_SHELL-/bin/sh}
923
924case X$ECHO in
925X*--fallback-echo)
926 # Remove one level of quotation (which was required for Make).
927 ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
928 ;;
929esac
930
931echo=${ECHO-echo}
932if test "X[$]1" = X--no-reexec; then
933 # Discard the --no-reexec flag, and continue.
934 shift
935elif test "X[$]1" = X--fallback-echo; then
936 # Avoid inline document here, it may be left over
937 :
938elif test "X`($echo '\t') 2>/dev/null`" = 'X\t' ; then
939 # Yippee, $echo works!
940 :
941else
942 # Restart under the correct shell.
943 exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
944fi
945
946if test "X[$]1" = X--fallback-echo; then
947 # used as fallback echo
948 shift
949 cat <<EOF
950[$]*
951EOF
952 exit 0
953fi
954
955# The HP-UX ksh and POSIX shell print the target directory to stdout
956# if CDPATH is set.
957(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
958
959if test -z "$ECHO"; then
960if test "X${echo_test_string+set}" != Xset; then
961# find a string as large as possible, as long as the shell can cope with it
962 for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
963 # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
964 if (echo_test_string=`eval $cmd`) 2>/dev/null &&
965 echo_test_string=`eval $cmd` &&
966 (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
967 then
968 break
969 fi
970 done
971fi
972
973if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
974 echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
975 test "X$echo_testing_string" = "X$echo_test_string"; then
976 :
977else
978 # The Solaris, AIX, and Digital Unix default echo programs unquote
979 # backslashes. This makes it impossible to quote backslashes using
980 # echo "$something" | sed 's/\\/\\\\/g'
981 #
982 # So, first we look for a working echo in the user's PATH.
983
984 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
985 for dir in $PATH /usr/ucb; do
986 IFS="$lt_save_ifs"
987 if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
988 test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
989 echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
990 test "X$echo_testing_string" = "X$echo_test_string"; then
991 echo="$dir/echo"
992 break
993 fi
994 done
995 IFS="$lt_save_ifs"
996
997 if test "X$echo" = Xecho; then
998 # We didn't find a better echo, so look for alternatives.
999 if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
1000 echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` &&
1001 test "X$echo_testing_string" = "X$echo_test_string"; then
1002 # This shell has a builtin print -r that does the trick.
1003 echo='print -r'
1004 elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
1005 test "X$CONFIG_SHELL" != X/bin/ksh; then
1006 # If we have ksh, try running configure again with it.
1007 ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
1008 export ORIGINAL_CONFIG_SHELL
1009 CONFIG_SHELL=/bin/ksh
1010 export CONFIG_SHELL
1011 exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
1012 else
1013 # Try using printf.
1014 echo='printf %s\n'
1015 if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
1016 echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
1017 test "X$echo_testing_string" = "X$echo_test_string"; then
1018 # Cool, printf works
1019 :
1020 elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
1021 test "X$echo_testing_string" = 'X\t' &&
1022 echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
1023 test "X$echo_testing_string" = "X$echo_test_string"; then
1024 CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
1025 export CONFIG_SHELL
1026 SHELL="$CONFIG_SHELL"
1027 export SHELL
1028 echo="$CONFIG_SHELL [$]0 --fallback-echo"
1029 elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
1030 test "X$echo_testing_string" = 'X\t' &&
1031 echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
1032 test "X$echo_testing_string" = "X$echo_test_string"; then
1033 echo="$CONFIG_SHELL [$]0 --fallback-echo"
1034 else
1035 # maybe with a smaller string...
1036 prev=:
1037
1038 for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
1039 if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null
1040 then
1041 break
1042 fi
1043 prev="$cmd"
1044 done
1045
1046 if test "$prev" != 'sed 50q "[$]0"'; then
1047 echo_test_string=`eval $prev`
1048 export echo_test_string
1049 exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
1050 else
1051 # Oops. We lost completely, so just stick with echo.
1052 echo=echo
1053 fi
1054 fi
1055 fi
1056 fi
1057fi
1058fi
1059
1060# Copy echo and quote the copy suitably for passing to libtool from
1061# the Makefile, instead of quoting the original, which is used later.
1062ECHO=$echo
1063if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
1064 ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
1065fi
1066
1067AC_SUBST(ECHO)
1068])])# _LT_AC_PROG_ECHO_BACKSLASH
1069
1070
1071# _LT_AC_LOCK
1072# -----------
1073AC_DEFUN([_LT_AC_LOCK],
1074[AC_ARG_ENABLE([libtool-lock],
1075 [AC_HELP_STRING([--disable-libtool-lock],
1076 [avoid locking (might break parallel builds)])])
1077test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
1078
1079# Some flags need to be propagated to the compiler or linker for good
1080# libtool support.
1081case $host in
1082ia64-*-hpux*)
1083 # Find out which ABI we are using.
1084 echo 'int i;' > conftest.$ac_ext
1085 if AC_TRY_EVAL(ac_compile); then
1086 case `/usr/bin/file conftest.$ac_objext` in
1087 *ELF-32*)
1088 HPUX_IA64_MODE="32"
1089 ;;
1090 *ELF-64*)
1091 HPUX_IA64_MODE="64"
1092 ;;
1093 esac
1094 fi
1095 rm -rf conftest*
1096 ;;
1097*-*-irix6*)
1098 # Find out which ABI we are using.
1099 echo '[#]line __oline__ "configure"' > conftest.$ac_ext
1100 if AC_TRY_EVAL(ac_compile); then
1101 if test "$lt_cv_prog_gnu_ld" = yes; then
1102 case `/usr/bin/file conftest.$ac_objext` in
1103 *32-bit*)
1104 LD="${LD-ld} -melf32bsmip"
1105 ;;
1106 *N32*)
1107 LD="${LD-ld} -melf32bmipn32"
1108 ;;
1109 *64-bit*)
1110 LD="${LD-ld} -melf64bmip"
1111 ;;
1112 esac
1113 else
1114 case `/usr/bin/file conftest.$ac_objext` in
1115 *32-bit*)
1116 LD="${LD-ld} -32"
1117 ;;
1118 *N32*)
1119 LD="${LD-ld} -n32"
1120 ;;
1121 *64-bit*)
1122 LD="${LD-ld} -64"
1123 ;;
1124 esac
1125 fi
1126 fi
1127 rm -rf conftest*
1128 ;;
1129
1130x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*)
1131 # Find out which ABI we are using.
1132 echo 'int i;' > conftest.$ac_ext
1133 if AC_TRY_EVAL(ac_compile); then
1134 case `/usr/bin/file conftest.o` in
1135 *32-bit*)
1136 case $host in
1137 x86_64-*linux*)
1138 LD="${LD-ld} -m elf_i386"
1139 ;;
1140 ppc64-*linux*|powerpc64-*linux*)
1141 LD="${LD-ld} -m elf32ppclinux"
1142 ;;
1143 s390x-*linux*)
1144 LD="${LD-ld} -m elf_s390"
1145 ;;
1146 sparc64-*linux*)
1147 LD="${LD-ld} -m elf32_sparc"
1148 ;;
1149 esac
1150 ;;
1151 *64-bit*)
1152 case $host in
1153 x86_64-*linux*)
1154 LD="${LD-ld} -m elf_x86_64"
1155 ;;
1156 ppc*-*linux*|powerpc*-*linux*)
1157 LD="${LD-ld} -m elf64ppc"
1158 ;;
1159 s390*-*linux*)
1160 LD="${LD-ld} -m elf64_s390"
1161 ;;
1162 sparc*-*linux*)
1163 LD="${LD-ld} -m elf64_sparc"
1164 ;;
1165 esac
1166 ;;
1167 esac
1168 fi
1169 rm -rf conftest*
1170 ;;
1171
1172*-*-sco3.2v5*)
1173 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
1174 SAVE_CFLAGS="$CFLAGS"
1175 CFLAGS="$CFLAGS -belf"
1176 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1177 [AC_LANG_PUSH(C)
1178 AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
1179 AC_LANG_POP])
1180 if test x"$lt_cv_cc_needs_belf" != x"yes"; then
1181 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
1182 CFLAGS="$SAVE_CFLAGS"
1183 fi
1184 ;;
1185sparc*-*solaris*)
1186 # Find out which ABI we are using.
1187 echo 'int i;' > conftest.$ac_ext
1188 if AC_TRY_EVAL(ac_compile); then
1189 case `/usr/bin/file conftest.o` in
1190 *64-bit*)
1191 case $lt_cv_prog_gnu_ld in
1192 yes*) LD="${LD-ld} -m elf64_sparc" ;;
1193 *) LD="${LD-ld} -64" ;;
1194 esac
1195 ;;
1196 esac
1197 fi
1198 rm -rf conftest*
1199 ;;
1200
1201AC_PROVIDE_IFELSE([AC_LIBTOOL_WIN32_DLL],
1202[*-*-cygwin* | *-*-mingw* | *-*-pw32*)
1203 AC_CHECK_TOOL(DLLTOOL, dlltool, false)
1204 AC_CHECK_TOOL(AS, as, false)
1205 AC_CHECK_TOOL(OBJDUMP, objdump, false)
1206 ;;
1207 ])
1208esac
1209
1210need_locks="$enable_libtool_lock"
1211
1212])# _LT_AC_LOCK
1213
1214
1215# AC_LIBTOOL_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1216# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1217# ----------------------------------------------------------------
1218# Check whether the given compiler option works
1219AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION],
1220[AC_REQUIRE([LT_AC_PROG_SED])
1221AC_CACHE_CHECK([$1], [$2],
1222 [$2=no
1223 ifelse([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
1224 printf "$lt_simple_compile_test_code" > conftest.$ac_ext
1225 lt_compiler_flag="$3"
1226 # Insert the option either (1) after the last *FLAGS variable, or
1227 # (2) before a word containing "conftest.", or (3) at the end.
1228 # Note that $ac_compile itself does not contain backslashes and begins
1229 # with a dollar sign (not a hyphen), so the echo should work correctly.
1230 # The option is referenced via a variable to avoid confusing sed.
1231 lt_compile=`echo "$ac_compile" | $SED \
1232 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1233 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1234 -e 's:$: $lt_compiler_flag:'`
1235 (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1236 (eval "$lt_compile" 2>conftest.err)
1237 ac_status=$?
1238 cat conftest.err >&AS_MESSAGE_LOG_FD
1239 echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1240 if (exit $ac_status) && test -s "$ac_outfile"; then
1241 # The compiler can only warn and ignore the option if not recognized
1242 # So say no if there are warnings other than the usual output.
1243 $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
1244 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1245 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
1246 $2=yes
1247 fi
1248 fi
1249 $rm conftest*
1250])
1251
1252if test x"[$]$2" = xyes; then
1253 ifelse([$5], , :, [$5])
1254else
1255 ifelse([$6], , :, [$6])
1256fi
1257])# AC_LIBTOOL_COMPILER_OPTION
1258
1259
1260# AC_LIBTOOL_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1261# [ACTION-SUCCESS], [ACTION-FAILURE])
1262# ------------------------------------------------------------
1263# Check whether the given compiler option works
1264AC_DEFUN([AC_LIBTOOL_LINKER_OPTION],
1265[AC_CACHE_CHECK([$1], [$2],
1266 [$2=no
1267 save_LDFLAGS="$LDFLAGS"
1268 LDFLAGS="$LDFLAGS $3"
1269 printf "$lt_simple_link_test_code" > conftest.$ac_ext
1270 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
1271 # The linker can only warn and ignore the option if not recognized
1272 # So say no if there are warnings
1273 if test -s conftest.err; then
1274 # Append any errors to the config.log.
1275 cat conftest.err 1>&AS_MESSAGE_LOG_FD
1276 $echo "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
1277 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1278 if diff conftest.exp conftest.er2 >/dev/null; then
1279 $2=yes
1280 fi
1281 else
1282 $2=yes
1283 fi
1284 fi
1285 $rm conftest*
1286 LDFLAGS="$save_LDFLAGS"
1287])
1288
1289if test x"[$]$2" = xyes; then
1290 ifelse([$4], , :, [$4])
1291else
1292 ifelse([$5], , :, [$5])
1293fi
1294])# AC_LIBTOOL_LINKER_OPTION
1295
1296
1297# AC_LIBTOOL_SYS_MAX_CMD_LEN
1298# --------------------------
1299AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN],
1300[# find the maximum length of command line arguments
1301AC_MSG_CHECKING([the maximum length of command line arguments])
1302AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1303 i=0
1304 teststring="ABCD"
1305
1306 case $build_os in
1307 msdosdjgpp*)
1308 # On DJGPP, this test can blow up pretty badly due to problems in libc
1309 # (any single argument exceeding 2000 bytes causes a buffer overrun
1310 # during glob expansion). Even if it were fixed, the result of this
1311 # check would be larger than it should be.
1312 lt_cv_sys_max_cmd_len=12288; # 12K is about right
1313 ;;
1314
1315 gnu*)
1316 # Under GNU Hurd, this test is not required because there is
1317 # no limit to the length of command line arguments.
1318 # Libtool will interpret -1 as no limit whatsoever
1319 lt_cv_sys_max_cmd_len=-1;
1320 ;;
1321
1322 cygwin* | mingw*)
1323 # On Win9x/ME, this test blows up -- it succeeds, but takes
1324 # about 5 minutes as the teststring grows exponentially.
1325 # Worse, since 9x/ME are not pre-emptively multitasking,
1326 # you end up with a "frozen" computer, even though with patience
1327 # the test eventually succeeds (with a max line length of 256k).
1328 # Instead, let's just punt: use the minimum linelength reported by
1329 # all of the supported platforms: 8192 (on NT/2K/XP).
1330 lt_cv_sys_max_cmd_len=8192;
1331 ;;
1332
1333 amigaos*)
1334 # On AmigaOS with pdksh, this test takes hours, literally.
1335 # So we just punt and use a minimum line length of 8192.
1336 lt_cv_sys_max_cmd_len=8192;
1337 ;;
1338
1339 netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
1340 # This has been around since 386BSD, at least. Likely further.
1341 if test -x /sbin/sysctl; then
1342 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1343 elif test -x /usr/sbin/sysctl; then
1344 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1345 else
1346 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
1347 fi
1348 # And add a safety zone
1349 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1350 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1351 ;;
1352
1353 interix*)
1354 # We know the value 262144 and hardcode it with a safety zone (like BSD)
1355 lt_cv_sys_max_cmd_len=196608
1356 ;;
1357
1358 osf*)
1359 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1360 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1361 # nice to cause kernel panics so lets avoid the loop below.
1362 # First set a reasonable default.
1363 lt_cv_sys_max_cmd_len=16384
1364 #
1365 if test -x /sbin/sysconfig; then
1366 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1367 *1*) lt_cv_sys_max_cmd_len=-1 ;;
1368 esac
1369 fi
1370 ;;
1371 sco3.2v5*)
1372 lt_cv_sys_max_cmd_len=102400
1373 ;;
1374 sysv5* | sco5v6* | sysv4.2uw2*)
1375 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1376 if test -n "$kargmax"; then
1377 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
1378 else
1379 lt_cv_sys_max_cmd_len=32768
1380 fi
1381 ;;
1382 *)
1383 # If test is not a shell built-in, we'll probably end up computing a
1384 # maximum length that is only half of the actual maximum length, but
1385 # we can't tell.
1386 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
1387 while (test "X"`$SHELL [$]0 --fallback-echo "X$teststring" 2>/dev/null` \
1388 = "XX$teststring") >/dev/null 2>&1 &&
1389 new_result=`expr "X$teststring" : ".*" 2>&1` &&
1390 lt_cv_sys_max_cmd_len=$new_result &&
1391 test $i != 17 # 1/2 MB should be enough
1392 do
1393 i=`expr $i + 1`
1394 teststring=$teststring$teststring
1395 done
1396 teststring=
1397 # Add a significant safety factor because C++ compilers can tack on massive
1398 # amounts of additional arguments before passing them to the linker.
1399 # It appears as though 1/2 is a usable value.
1400 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1401 ;;
1402 esac
1403])
1404if test -n $lt_cv_sys_max_cmd_len ; then
1405 AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1406else
1407 AC_MSG_RESULT(none)
1408fi
1409])# AC_LIBTOOL_SYS_MAX_CMD_LEN
1410
1411
1412# _LT_AC_CHECK_DLFCN
1413# ------------------
1414AC_DEFUN([_LT_AC_CHECK_DLFCN],
1415[AC_CHECK_HEADERS(dlfcn.h)dnl
1416])# _LT_AC_CHECK_DLFCN
1417
1418
1419# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1420# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1421# ---------------------------------------------------------------------
1422AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF],
1423[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
1424if test "$cross_compiling" = yes; then :
1425 [$4]
1426else
1427 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1428 lt_status=$lt_dlunknown
1429 cat > conftest.$ac_ext <<EOF
1430[#line __oline__ "configure"
1431#include "confdefs.h"
1432
1433#if HAVE_DLFCN_H
1434#include <dlfcn.h>
1435#endif
1436
1437#include <stdio.h>
1438
1439#ifdef RTLD_GLOBAL
1440# define LT_DLGLOBAL RTLD_GLOBAL
1441#else
1442# ifdef DL_GLOBAL
1443# define LT_DLGLOBAL DL_GLOBAL
1444# else
1445# define LT_DLGLOBAL 0
1446# endif
1447#endif
1448
1449/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1450 find out it does not work in some platform. */
1451#ifndef LT_DLLAZY_OR_NOW
1452# ifdef RTLD_LAZY
1453# define LT_DLLAZY_OR_NOW RTLD_LAZY
1454# else
1455# ifdef DL_LAZY
1456# define LT_DLLAZY_OR_NOW DL_LAZY
1457# else
1458# ifdef RTLD_NOW
1459# define LT_DLLAZY_OR_NOW RTLD_NOW
1460# else
1461# ifdef DL_NOW
1462# define LT_DLLAZY_OR_NOW DL_NOW
1463# else
1464# define LT_DLLAZY_OR_NOW 0
1465# endif
1466# endif
1467# endif
1468# endif
1469#endif
1470
1471#ifdef __cplusplus
1472extern "C" void exit (int);
1473#endif
1474
1475void fnord() { int i=42;}
1476int main ()
1477{
1478 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1479 int status = $lt_dlunknown;
1480
1481 if (self)
1482 {
1483 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
1484 else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1485 /* dlclose (self); */
1486 }
1487 else
1488 puts (dlerror ());
1489
1490 exit (status);
1491}]
1492EOF
1493 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
1494 (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
1495 lt_status=$?
1496 case x$lt_status in
1497 x$lt_dlno_uscore) $1 ;;
1498 x$lt_dlneed_uscore) $2 ;;
1499 x$lt_dlunknown|x*) $3 ;;
1500 esac
1501 else :
1502 # compilation failed
1503 $3
1504 fi
1505fi
1506rm -fr conftest*
1507])# _LT_AC_TRY_DLOPEN_SELF
1508
1509
1510# AC_LIBTOOL_DLOPEN_SELF
1511# ----------------------
1512AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF],
1513[AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
1514if test "x$enable_dlopen" != xyes; then
1515 enable_dlopen=unknown
1516 enable_dlopen_self=unknown
1517 enable_dlopen_self_static=unknown
1518else
1519 lt_cv_dlopen=no
1520 lt_cv_dlopen_libs=
1521
1522 case $host_os in
1523 beos*)
1524 lt_cv_dlopen="load_add_on"
1525 lt_cv_dlopen_libs=
1526 lt_cv_dlopen_self=yes
1527 ;;
1528
1529 mingw* | pw32*)
1530 lt_cv_dlopen="LoadLibrary"
1531 lt_cv_dlopen_libs=
1532 ;;
1533
1534 cygwin*)
1535 lt_cv_dlopen="dlopen"
1536 lt_cv_dlopen_libs=
1537 ;;
1538
1539 darwin*)
1540 # if libdl is installed we need to link against it
1541 AC_CHECK_LIB([dl], [dlopen],
1542 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
1543 lt_cv_dlopen="dyld"
1544 lt_cv_dlopen_libs=
1545 lt_cv_dlopen_self=yes
1546 ])
1547 ;;
1548
1549 *)
1550 AC_CHECK_FUNC([shl_load],
1551 [lt_cv_dlopen="shl_load"],
1552 [AC_CHECK_LIB([dld], [shl_load],
1553 [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"],
1554 [AC_CHECK_FUNC([dlopen],
1555 [lt_cv_dlopen="dlopen"],
1556 [AC_CHECK_LIB([dl], [dlopen],
1557 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
1558 [AC_CHECK_LIB([svld], [dlopen],
1559 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
1560 [AC_CHECK_LIB([dld], [dld_link],
1561 [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"])
1562 ])
1563 ])
1564 ])
1565 ])
1566 ])
1567 ;;
1568 esac
1569
1570 if test "x$lt_cv_dlopen" != xno; then
1571 enable_dlopen=yes
1572 else
1573 enable_dlopen=no
1574 fi
1575
1576 case $lt_cv_dlopen in
1577 dlopen)
1578 save_CPPFLAGS="$CPPFLAGS"
1579 test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
1580
1581 save_LDFLAGS="$LDFLAGS"
1582 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
1583
1584 save_LIBS="$LIBS"
1585 LIBS="$lt_cv_dlopen_libs $LIBS"
1586
1587 AC_CACHE_CHECK([whether a program can dlopen itself],
1588 lt_cv_dlopen_self, [dnl
1589 _LT_AC_TRY_DLOPEN_SELF(
1590 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
1591 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
1592 ])
1593
1594 if test "x$lt_cv_dlopen_self" = xyes; then
1595 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
1596 AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
1597 lt_cv_dlopen_self_static, [dnl
1598 _LT_AC_TRY_DLOPEN_SELF(
1599 lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
1600 lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
1601 ])
1602 fi
1603
1604 CPPFLAGS="$save_CPPFLAGS"
1605 LDFLAGS="$save_LDFLAGS"
1606 LIBS="$save_LIBS"
1607 ;;
1608 esac
1609
1610 case $lt_cv_dlopen_self in
1611 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
1612 *) enable_dlopen_self=unknown ;;
1613 esac
1614
1615 case $lt_cv_dlopen_self_static in
1616 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
1617 *) enable_dlopen_self_static=unknown ;;
1618 esac
1619fi
1620])# AC_LIBTOOL_DLOPEN_SELF
1621
1622
1623# AC_LIBTOOL_PROG_CC_C_O([TAGNAME])
1624# ---------------------------------
1625# Check to see if options -c and -o are simultaneously supported by compiler
1626AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O],
1627[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
1628AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
1629 [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
1630 [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
1631 $rm -r conftest 2>/dev/null
1632 mkdir conftest
1633 cd conftest
1634 mkdir out
1635 printf "$lt_simple_compile_test_code" > conftest.$ac_ext
1636
1637 lt_compiler_flag="-o out/conftest2.$ac_objext"
1638 # Insert the option either (1) after the last *FLAGS variable, or
1639 # (2) before a word containing "conftest.", or (3) at the end.
1640 # Note that $ac_compile itself does not contain backslashes and begins
1641 # with a dollar sign (not a hyphen), so the echo should work correctly.
1642 lt_compile=`echo "$ac_compile" | $SED \
1643 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1644 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1645 -e 's:$: $lt_compiler_flag:'`
1646 (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1647 (eval "$lt_compile" 2>out/conftest.err)
1648 ac_status=$?
1649 cat out/conftest.err >&AS_MESSAGE_LOG_FD
1650 echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1651 if (exit $ac_status) && test -s out/conftest2.$ac_objext
1652 then
1653 # The compiler can only warn and ignore the option if not recognized
1654 # So say no if there are warnings
1655 $echo "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
1656 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
1657 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
1658 _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
1659 fi
1660 fi
1661 chmod u+w . 2>&AS_MESSAGE_LOG_FD
1662 $rm conftest*
1663 # SGI C++ compiler will create directory out/ii_files/ for
1664 # template instantiation
1665 test -d out/ii_files && $rm out/ii_files/* && rmdir out/ii_files
1666 $rm out/* && rmdir out
1667 cd ..
1668 rmdir conftest
1669 $rm conftest*
1670])
1671])# AC_LIBTOOL_PROG_CC_C_O
1672
1673
1674# AC_LIBTOOL_SYS_HARD_LINK_LOCKS([TAGNAME])
1675# -----------------------------------------
1676# Check to see if we can do hard links to lock some files if needed
1677AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS],
1678[AC_REQUIRE([_LT_AC_LOCK])dnl
1679
1680hard_links="nottested"
1681if test "$_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
1682 # do not overwrite the value of need_locks provided by the user
1683 AC_MSG_CHECKING([if we can lock with hard links])
1684 hard_links=yes
1685 $rm conftest*
1686 ln conftest.a conftest.b 2>/dev/null && hard_links=no
1687 touch conftest.a
1688 ln conftest.a conftest.b 2>&5 || hard_links=no
1689 ln conftest.a conftest.b 2>/dev/null && hard_links=no
1690 AC_MSG_RESULT([$hard_links])
1691 if test "$hard_links" = no; then
1692 AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
1693 need_locks=warn
1694 fi
1695else
1696 need_locks=no
1697fi
1698])# AC_LIBTOOL_SYS_HARD_LINK_LOCKS
1699
1700
1701# AC_LIBTOOL_OBJDIR
1702# -----------------
1703AC_DEFUN([AC_LIBTOOL_OBJDIR],
1704[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
1705[rm -f .libs 2>/dev/null
1706mkdir .libs 2>/dev/null
1707if test -d .libs; then
1708 lt_cv_objdir=.libs
1709else
1710 # MS-DOS does not allow filenames that begin with a dot.
1711 lt_cv_objdir=_libs
1712fi
1713rmdir .libs 2>/dev/null])
1714objdir=$lt_cv_objdir
1715])# AC_LIBTOOL_OBJDIR
1716
1717
1718# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH([TAGNAME])
1719# ----------------------------------------------
1720# Check hardcoding attributes.
1721AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH],
1722[AC_MSG_CHECKING([how to hardcode library paths into programs])
1723_LT_AC_TAGVAR(hardcode_action, $1)=
1724if test -n "$_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)" || \
1725 test -n "$_LT_AC_TAGVAR(runpath_var, $1)" || \
1726 test "X$_LT_AC_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
1727
1728 # We can hardcode non-existant directories.
1729 if test "$_LT_AC_TAGVAR(hardcode_direct, $1)" != no &&
1730 # If the only mechanism to avoid hardcoding is shlibpath_var, we
1731 # have to relink, otherwise we might link with an installed library
1732 # when we should be linking with a yet-to-be-installed one
1733 ## test "$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
1734 test "$_LT_AC_TAGVAR(hardcode_minus_L, $1)" != no; then
1735 # Linking always hardcodes the temporary library directory.
1736 _LT_AC_TAGVAR(hardcode_action, $1)=relink
1737 else
1738 # We can link without hardcoding, and we can hardcode nonexisting dirs.
1739 _LT_AC_TAGVAR(hardcode_action, $1)=immediate
1740 fi
1741else
1742 # We cannot hardcode anything, or else we can only hardcode existing
1743 # directories.
1744 _LT_AC_TAGVAR(hardcode_action, $1)=unsupported
1745fi
1746AC_MSG_RESULT([$_LT_AC_TAGVAR(hardcode_action, $1)])
1747
1748if test "$_LT_AC_TAGVAR(hardcode_action, $1)" = relink; then
1749 # Fast installation is not supported
1750 enable_fast_install=no
1751elif test "$shlibpath_overrides_runpath" = yes ||
1752 test "$enable_shared" = no; then
1753 # Fast installation is not necessary
1754 enable_fast_install=needless
1755fi
1756])# AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH
1757
1758
1759# AC_LIBTOOL_SYS_LIB_STRIP
1760# ------------------------
1761AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP],
1762[striplib=
1763old_striplib=
1764AC_MSG_CHECKING([whether stripping libraries is possible])
1765if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then
1766 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
1767 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
1768 AC_MSG_RESULT([yes])
1769else
1770# FIXME - insert some real tests, host_os isn't really good enough
1771 case $host_os in
1772 darwin*)
1773 if test -n "$STRIP" ; then
1774 striplib="$STRIP -x"
1775 AC_MSG_RESULT([yes])
1776 else
1777 AC_MSG_RESULT([no])
1778fi
1779 ;;
1780 *)
1781 AC_MSG_RESULT([no])
1782 ;;
1783 esac
1784fi
1785])# AC_LIBTOOL_SYS_LIB_STRIP
1786
1787
1788# AC_LIBTOOL_SYS_DYNAMIC_LINKER
1789# -----------------------------
1790# PORTME Fill in your ld.so characteristics
1791AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER],
1792[AC_MSG_CHECKING([dynamic linker characteristics])
1793library_names_spec=
1794libname_spec='lib$name'
1795soname_spec=
1796shrext_cmds=".so"
1797postinstall_cmds=
1798postuninstall_cmds=
1799finish_cmds=
1800finish_eval=
1801shlibpath_var=
1802shlibpath_overrides_runpath=unknown
1803version_type=none
1804dynamic_linker="$host_os ld.so"
1805sys_lib_dlsearch_path_spec="/lib /usr/lib"
1806if test "$GCC" = yes; then
1807 sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
1808 if echo "$sys_lib_search_path_spec" | grep ';' >/dev/null ; then
1809 # if the path contains ";" then we assume it to be the separator
1810 # otherwise default to the standard path separator (i.e. ":") - it is
1811 # assumed that no part of a normal pathname contains ";" but that should
1812 # okay in the real world where ";" in dirpaths is itself problematic.
1813 sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
1814 else
1815 sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
1816 fi
1817else
1818 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
1819fi
1820need_lib_prefix=unknown
1821hardcode_into_libs=no
1822
1823# when you set need_version to no, make sure it does not cause -set_version
1824# flags to be left without arguments
1825need_version=unknown
1826
1827case $host_os in
1828aix3*)
1829 version_type=linux
1830 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
1831 shlibpath_var=LIBPATH
1832
1833 # AIX 3 has no versioning support, so we append a major version to the name.
1834 soname_spec='${libname}${release}${shared_ext}$major'
1835 ;;
1836
1837aix4* | aix5*)
1838 version_type=linux
1839 need_lib_prefix=no
1840 need_version=no
1841 hardcode_into_libs=yes
1842 if test "$host_cpu" = ia64; then
1843 # AIX 5 supports IA64
1844 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
1845 shlibpath_var=LD_LIBRARY_PATH
1846 else
1847 # With GCC up to 2.95.x, collect2 would create an import file
1848 # for dependence libraries. The import file would start with
1849 # the line `#! .'. This would cause the generated library to
1850 # depend on `.', always an invalid library. This was fixed in
1851 # development snapshots of GCC prior to 3.0.
1852 case $host_os in
1853 aix4 | aix4.[[01]] | aix4.[[01]].*)
1854 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
1855 echo ' yes '
1856 echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then
1857 :
1858 else
1859 can_build_shared=no
1860 fi
1861 ;;
1862 esac
1863 # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
1864 # soname into executable. Probably we can add versioning support to
1865 # collect2, so additional links can be useful in future.
1866 if test "$aix_use_runtimelinking" = yes; then
1867 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
1868 # instead of lib<name>.a to let people know that these are not
1869 # typical AIX shared libraries.
1870 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1871 else
1872 # We preserve .a as extension for shared libraries through AIX4.2
1873 # and later when we are not doing run time linking.
1874 library_names_spec='${libname}${release}.a $libname.a'
1875 soname_spec='${libname}${release}${shared_ext}$major'
1876 fi
1877 shlibpath_var=LIBPATH
1878 fi
1879 ;;
1880
1881amigaos*)
1882 library_names_spec='$libname.ixlibrary $libname.a'
1883 # Create ${libname}_ixlibrary.a entries in /sys/libs.
1884 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'
1885 ;;
1886
1887beos*)
1888 library_names_spec='${libname}${shared_ext}'
1889 dynamic_linker="$host_os ld.so"
1890 shlibpath_var=LIBRARY_PATH
1891 ;;
1892
1893bsdi[[45]]*)
1894 version_type=linux
1895 need_version=no
1896 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
1897 soname_spec='${libname}${release}${shared_ext}$major'
1898 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
1899 shlibpath_var=LD_LIBRARY_PATH
1900 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
1901 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
1902 # the default ld.so.conf also contains /usr/contrib/lib and
1903 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
1904 # libtool to hard-code these into programs
1905 ;;
1906
1907cygwin* | mingw* | pw32*)
1908 version_type=windows
1909 shrext_cmds=".dll"
1910 need_version=no
1911 need_lib_prefix=no
1912
1913 case $GCC,$host_os in
1914 yes,cygwin* | yes,mingw* | yes,pw32*)
1915 library_names_spec='$libname.dll.a'
1916 # DLL is installed to $(libdir)/../bin by postinstall_cmds
1917 postinstall_cmds='base_file=`basename \${file}`~
1918 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo \$dlname'\''`~
1919 dldir=$destdir/`dirname \$dlpath`~
1920 test -d \$dldir || mkdir -p \$dldir~
1921 $install_prog $dir/$dlname \$dldir/$dlname~
1922 chmod a+x \$dldir/$dlname'
1923 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
1924 dlpath=$dir/\$dldll~
1925 $rm \$dlpath'
1926 shlibpath_overrides_runpath=yes
1927
1928 case $host_os in
1929 cygwin*)
1930 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
1931 soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
1932 sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
1933 ;;
1934 mingw*)
1935 # MinGW DLLs use traditional 'lib' prefix
1936 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
1937 sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
1938 if echo "$sys_lib_search_path_spec" | [grep ';[c-zC-Z]:/' >/dev/null]; then
1939 # It is most probably a Windows format PATH printed by
1940 # mingw gcc, but we are running on Cygwin. Gcc prints its search
1941 # path with ; separators, and with drive letters. We can handle the
1942 # drive letters (cygwin fileutils understands them), so leave them,
1943 # especially as we might pass files found there to a mingw objdump,
1944 # which wouldn't understand a cygwinified path. Ahh.
1945 sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
1946 else
1947 sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
1948 fi
1949 ;;
1950 pw32*)
1951 # pw32 DLLs use 'pw' prefix rather than 'lib'
1952 library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
1953 ;;
1954 esac
1955 ;;
1956
1957 *)
1958 library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
1959 ;;
1960 esac
1961 dynamic_linker='Win32 ld.exe'
1962 # FIXME: first we should search . and the directory the executable is in
1963 shlibpath_var=PATH
1964 ;;
1965
1966darwin* | rhapsody*)
1967 dynamic_linker="$host_os dyld"
1968 version_type=darwin
1969 need_lib_prefix=no
1970 need_version=no
1971 library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext'
1972 soname_spec='${libname}${release}${major}$shared_ext'
1973 shlibpath_overrides_runpath=yes
1974 shlibpath_var=DYLD_LIBRARY_PATH
1975 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
1976 # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
1977 if test "$GCC" = yes; then
1978 sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
1979 else
1980 sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib'
1981 fi
1982 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
1983 ;;
1984
1985dgux*)
1986 version_type=linux
1987 need_lib_prefix=no
1988 need_version=no
1989 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
1990 soname_spec='${libname}${release}${shared_ext}$major'
1991 shlibpath_var=LD_LIBRARY_PATH
1992 ;;
1993
1994freebsd1*)
1995 dynamic_linker=no
1996 ;;
1997
1998kfreebsd*-gnu)
1999 version_type=linux
2000 need_lib_prefix=no
2001 need_version=no
2002 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2003 soname_spec='${libname}${release}${shared_ext}$major'
2004 shlibpath_var=LD_LIBRARY_PATH
2005 shlibpath_overrides_runpath=no
2006 hardcode_into_libs=yes
2007 dynamic_linker='GNU ld.so'
2008 ;;
2009
2010freebsd* | dragonfly*)
2011 # DragonFly does not have aout. When/if they implement a new
2012 # versioning mechanism, adjust this.
2013 if test -x /usr/bin/objformat; then
2014 objformat=`/usr/bin/objformat`
2015 else
2016 case $host_os in
2017 freebsd[[123]]*) objformat=aout ;;
2018 *) objformat=elf ;;
2019 esac
2020 fi
2021 version_type=freebsd-$objformat
2022 case $version_type in
2023 freebsd-elf*)
2024 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2025 need_version=no
2026 need_lib_prefix=no
2027 ;;
2028 freebsd-*)
2029 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
2030 need_version=yes
2031 ;;
2032 esac
2033 shlibpath_var=LD_LIBRARY_PATH
2034 case $host_os in
2035 freebsd2*)
2036 shlibpath_overrides_runpath=yes
2037 ;;
2038 freebsd3.[[01]]* | freebsdelf3.[[01]]*)
2039 shlibpath_overrides_runpath=yes
2040 hardcode_into_libs=yes
2041 ;;
2042 freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2043 freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
2044 shlibpath_overrides_runpath=no
2045 hardcode_into_libs=yes
2046 ;;
2047 freebsd*) # from 4.6 on
2048 shlibpath_overrides_runpath=yes
2049 hardcode_into_libs=yes
2050 ;;
2051 esac
2052 ;;
2053
2054gnu*)
2055 version_type=linux
2056 need_lib_prefix=no
2057 need_version=no
2058 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2059 soname_spec='${libname}${release}${shared_ext}$major'
2060 shlibpath_var=LD_LIBRARY_PATH
2061 hardcode_into_libs=yes
2062 ;;
2063
2064hpux9* | hpux10* | hpux11*)
2065 # Give a soname corresponding to the major version so that dld.sl refuses to
2066 # link against other versions.
2067 version_type=sunos
2068 need_lib_prefix=no
2069 need_version=no
2070 case $host_cpu in
2071 ia64*)
2072 shrext_cmds='.so'
2073 hardcode_into_libs=yes
2074 dynamic_linker="$host_os dld.so"
2075 shlibpath_var=LD_LIBRARY_PATH
2076 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2077 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2078 soname_spec='${libname}${release}${shared_ext}$major'
2079 if test "X$HPUX_IA64_MODE" = X32; then
2080 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
2081 else
2082 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
2083 fi
2084 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2085 ;;
2086 hppa*64*)
2087 shrext_cmds='.sl'
2088 hardcode_into_libs=yes
2089 dynamic_linker="$host_os dld.sl"
2090 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2091 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2092 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2093 soname_spec='${libname}${release}${shared_ext}$major'
2094 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2095 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2096 ;;
2097 *)
2098 shrext_cmds='.sl'
2099 dynamic_linker="$host_os dld.sl"
2100 shlibpath_var=SHLIB_PATH
2101 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2102 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2103 soname_spec='${libname}${release}${shared_ext}$major'
2104 ;;
2105 esac
2106 # HP-UX runs *really* slowly unless shared libraries are mode 555.
2107 postinstall_cmds='chmod 555 $lib'
2108 ;;
2109
2110interix3*)
2111 version_type=linux
2112 need_lib_prefix=no
2113 need_version=no
2114 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2115 soname_spec='${libname}${release}${shared_ext}$major'
2116 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2117 shlibpath_var=LD_LIBRARY_PATH
2118 shlibpath_overrides_runpath=no
2119 hardcode_into_libs=yes
2120 ;;
2121
2122irix5* | irix6* | nonstopux*)
2123 case $host_os in
2124 nonstopux*) version_type=nonstopux ;;
2125 *)
2126 if test "$lt_cv_prog_gnu_ld" = yes; then
2127 version_type=linux
2128 else
2129 version_type=irix
2130 fi ;;
2131 esac
2132 need_lib_prefix=no
2133 need_version=no
2134 soname_spec='${libname}${release}${shared_ext}$major'
2135 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
2136 case $host_os in
2137 irix5* | nonstopux*)
2138 libsuff= shlibsuff=
2139 ;;
2140 *)
2141 case $LD in # libtool.m4 will add one of these switches to LD
2142 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2143 libsuff= shlibsuff= libmagic=32-bit;;
2144 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2145 libsuff=32 shlibsuff=N32 libmagic=N32;;
2146 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2147 libsuff=64 shlibsuff=64 libmagic=64-bit;;
2148 *) libsuff= shlibsuff= libmagic=never-match;;
2149 esac
2150 ;;
2151 esac
2152 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2153 shlibpath_overrides_runpath=no
2154 sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
2155 sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
2156 hardcode_into_libs=yes
2157 ;;
2158
2159# No shared lib support for Linux oldld, aout, or coff.
2160linux*oldld* | linux*aout* | linux*coff*)
2161 dynamic_linker=no
2162 ;;
2163
2164# This must be Linux ELF.
2165linux*)
2166 version_type=linux
2167 need_lib_prefix=no
2168 need_version=no
2169 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2170 soname_spec='${libname}${release}${shared_ext}$major'
2171 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2172 shlibpath_var=LD_LIBRARY_PATH
2173 shlibpath_overrides_runpath=no
2174 # This implies no fast_install, which is unacceptable.
2175 # Some rework will be needed to allow for fast_install
2176 # before this can be enabled.
2177 hardcode_into_libs=yes
2178
2179 # Append ld.so.conf contents to the search path
2180 if test -f /etc/ld.so.conf; then
2181 lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
2182 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
2183 fi
2184
2185 # We used to test for /lib/ld.so.1 and disable shared libraries on
2186 # powerpc, because MkLinux only supported shared libraries with the
2187 # GNU dynamic linker. Since this was broken with cross compilers,
2188 # most powerpc-linux boxes support dynamic linking these days and
2189 # people can always --disable-shared, the test was removed, and we
2190 # assume the GNU/Linux dynamic linker is in use.
2191 dynamic_linker='GNU/Linux ld.so'
2192 ;;
2193
2194knetbsd*-gnu)
2195 version_type=linux
2196 need_lib_prefix=no
2197 need_version=no
2198 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2199 soname_spec='${libname}${release}${shared_ext}$major'
2200 shlibpath_var=LD_LIBRARY_PATH
2201 shlibpath_overrides_runpath=no
2202 hardcode_into_libs=yes
2203 dynamic_linker='GNU ld.so'
2204 ;;
2205
2206netbsd*)
2207 version_type=sunos
2208 need_lib_prefix=no
2209 need_version=no
2210 if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
2211 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2212 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2213 dynamic_linker='NetBSD (a.out) ld.so'
2214 else
2215 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2216 soname_spec='${libname}${release}${shared_ext}$major'
2217 dynamic_linker='NetBSD ld.elf_so'
2218 fi
2219 shlibpath_var=LD_LIBRARY_PATH
2220 shlibpath_overrides_runpath=yes
2221 hardcode_into_libs=yes
2222 ;;
2223
2224newsos6)
2225 version_type=linux
2226 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2227 shlibpath_var=LD_LIBRARY_PATH
2228 shlibpath_overrides_runpath=yes
2229 ;;
2230
2231nto-qnx*)
2232 version_type=linux
2233 need_lib_prefix=no
2234 need_version=no
2235 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2236 soname_spec='${libname}${release}${shared_ext}$major'
2237 shlibpath_var=LD_LIBRARY_PATH
2238 shlibpath_overrides_runpath=yes
2239 ;;
2240
2241openbsd*)
2242 version_type=sunos
2243 sys_lib_dlsearch_path_spec="/usr/lib"
2244 need_lib_prefix=no
2245 # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
2246 case $host_os in
2247 openbsd3.3 | openbsd3.3.*) need_version=yes ;;
2248 *) need_version=no ;;
2249 esac
2250 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2251 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2252 shlibpath_var=LD_LIBRARY_PATH
2253 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
2254 case $host_os in
2255 openbsd2.[[89]] | openbsd2.[[89]].*)
2256 shlibpath_overrides_runpath=no
2257 ;;
2258 *)
2259 shlibpath_overrides_runpath=yes
2260 ;;
2261 esac
2262 else
2263 shlibpath_overrides_runpath=yes
2264 fi
2265 ;;
2266
2267os2*)
2268 libname_spec='$name'
2269 shrext_cmds=".dll"
2270 need_lib_prefix=no
2271 library_names_spec='$libname${shared_ext} $libname.a'
2272 dynamic_linker='OS/2 ld.exe'
2273 shlibpath_var=LIBPATH
2274 ;;
2275
2276osf3* | osf4* | osf5*)
2277 version_type=osf
2278 need_lib_prefix=no
2279 need_version=no
2280 soname_spec='${libname}${release}${shared_ext}$major'
2281 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2282 shlibpath_var=LD_LIBRARY_PATH
2283 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
2284 sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
2285 ;;
2286
2287solaris*)
2288 version_type=linux
2289 need_lib_prefix=no
2290 need_version=no
2291 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2292 soname_spec='${libname}${release}${shared_ext}$major'
2293 shlibpath_var=LD_LIBRARY_PATH
2294 shlibpath_overrides_runpath=yes
2295 hardcode_into_libs=yes
2296 # ldd complains unless libraries are executable
2297 postinstall_cmds='chmod +x $lib'
2298 ;;
2299
2300sunos4*)
2301 version_type=sunos
2302 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2303 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
2304 shlibpath_var=LD_LIBRARY_PATH
2305 shlibpath_overrides_runpath=yes
2306 if test "$with_gnu_ld" = yes; then
2307 need_lib_prefix=no
2308 fi
2309 need_version=yes
2310 ;;
2311
2312sysv4 | sysv4.3*)
2313 version_type=linux
2314 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2315 soname_spec='${libname}${release}${shared_ext}$major'
2316 shlibpath_var=LD_LIBRARY_PATH
2317 case $host_vendor in
2318 sni)
2319 shlibpath_overrides_runpath=no
2320 need_lib_prefix=no
2321 export_dynamic_flag_spec='${wl}-Blargedynsym'
2322 runpath_var=LD_RUN_PATH
2323 ;;
2324 siemens)
2325 need_lib_prefix=no
2326 ;;
2327 motorola)
2328 need_lib_prefix=no
2329 need_version=no
2330 shlibpath_overrides_runpath=no
2331 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
2332 ;;
2333 esac
2334 ;;
2335
2336sysv4*MP*)
2337 if test -d /usr/nec ;then
2338 version_type=linux
2339 library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
2340 soname_spec='$libname${shared_ext}.$major'
2341 shlibpath_var=LD_LIBRARY_PATH
2342 fi
2343 ;;
2344
2345sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
2346 version_type=freebsd-elf
2347 need_lib_prefix=no
2348 need_version=no
2349 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2350 soname_spec='${libname}${release}${shared_ext}$major'
2351 shlibpath_var=LD_LIBRARY_PATH
2352 hardcode_into_libs=yes
2353 if test "$with_gnu_ld" = yes; then
2354 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
2355 shlibpath_overrides_runpath=no
2356 else
2357 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
2358 shlibpath_overrides_runpath=yes
2359 case $host_os in
2360 sco3.2v5*)
2361 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
2362 ;;
2363 esac
2364 fi
2365 sys_lib_dlsearch_path_spec='/usr/lib'
2366 ;;
2367
2368uts4*)
2369 version_type=linux
2370 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2371 soname_spec='${libname}${release}${shared_ext}$major'
2372 shlibpath_var=LD_LIBRARY_PATH
2373 ;;
2374
2375*)
2376 dynamic_linker=no
2377 ;;
2378esac
2379AC_MSG_RESULT([$dynamic_linker])
2380test "$dynamic_linker" = no && can_build_shared=no
2381
2382variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
2383if test "$GCC" = yes; then
2384 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
2385fi
2386])# AC_LIBTOOL_SYS_DYNAMIC_LINKER
2387
2388
2389# _LT_AC_TAGCONFIG
2390# ----------------
2391AC_DEFUN([_LT_AC_TAGCONFIG],
2392[AC_ARG_WITH([tags],
2393 [AC_HELP_STRING([--with-tags@<:@=TAGS@:>@],
2394 [include additional configurations @<:@automatic@:>@])],
2395 [tagnames="$withval"])
2396
2397if test -f "$ltmain" && test -n "$tagnames"; then
2398 if test ! -f "${ofile}"; then
2399 AC_MSG_WARN([output file `$ofile' does not exist])
2400 fi
2401
2402 if test -z "$LTCC"; then
2403 eval "`$SHELL ${ofile} --config | grep '^LTCC='`"
2404 if test -z "$LTCC"; then
2405 AC_MSG_WARN([output file `$ofile' does not look like a libtool script])
2406 else
2407 AC_MSG_WARN([using `LTCC=$LTCC', extracted from `$ofile'])
2408 fi
2409 fi
2410 if test -z "$LTCFLAGS"; then
2411 eval "`$SHELL ${ofile} --config | grep '^LTCFLAGS='`"
2412 fi
2413
2414 # Extract list of available tagged configurations in $ofile.
2415 # Note that this assumes the entire list is on one line.
2416 available_tags=`grep "^available_tags=" "${ofile}" | $SED -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'`
2417
2418 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
2419 for tagname in $tagnames; do
2420 IFS="$lt_save_ifs"
2421 # Check whether tagname contains only valid characters
2422 case `$echo "X$tagname" | $Xsed -e 's:[[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]]::g'` in
2423 "") ;;
2424 *) AC_MSG_ERROR([invalid tag name: $tagname])
2425 ;;
2426 esac
2427
2428 if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "${ofile}" > /dev/null
2429 then
2430 AC_MSG_ERROR([tag name \"$tagname\" already exists])
2431 fi
2432
2433 # Update the list of available tags.
2434 if test -n "$tagname"; then
2435 echo appending configuration tag \"$tagname\" to $ofile
2436
2437 case $tagname in
2438 CXX)
2439 if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
2440 ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
2441 (test "X$CXX" != "Xg++"))) ; then
2442 AC_LIBTOOL_LANG_CXX_CONFIG
2443 else
2444 tagname=""
2445 fi
2446 ;;
2447
2448 F77)
2449 if test -n "$F77" && test "X$F77" != "Xno"; then
2450 AC_LIBTOOL_LANG_F77_CONFIG
2451 else
2452 tagname=""
2453 fi
2454 ;;
2455
2456 GCJ)
2457 if test -n "$GCJ" && test "X$GCJ" != "Xno"; then
2458 AC_LIBTOOL_LANG_GCJ_CONFIG
2459 else
2460 tagname=""
2461 fi
2462 ;;
2463
2464 RC)
2465 AC_LIBTOOL_LANG_RC_CONFIG
2466 ;;
2467
2468 *)
2469 AC_MSG_ERROR([Unsupported tag name: $tagname])
2470 ;;
2471 esac
2472
2473 # Append the new tag name to the list of available tags.
2474 if test -n "$tagname" ; then
2475 available_tags="$available_tags $tagname"
2476 fi
2477 fi
2478 done
2479 IFS="$lt_save_ifs"
2480
2481 # Now substitute the updated list of available tags.
2482 if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' \"$ofile\" > \"${ofile}T\""; then
2483 mv "${ofile}T" "$ofile"
2484 chmod +x "$ofile"
2485 else
2486 rm -f "${ofile}T"
2487 AC_MSG_ERROR([unable to update list of available tagged configurations.])
2488 fi
2489fi
2490])# _LT_AC_TAGCONFIG
2491
2492
2493# AC_LIBTOOL_DLOPEN
2494# -----------------
2495# enable checks for dlopen support
2496AC_DEFUN([AC_LIBTOOL_DLOPEN],
2497 [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])
2498])# AC_LIBTOOL_DLOPEN
2499
2500
2501# AC_LIBTOOL_WIN32_DLL
2502# --------------------
2503# declare package support for building win32 DLLs
2504AC_DEFUN([AC_LIBTOOL_WIN32_DLL],
2505[AC_BEFORE([$0], [AC_LIBTOOL_SETUP])
2506])# AC_LIBTOOL_WIN32_DLL
2507
2508
2509# AC_ENABLE_SHARED([DEFAULT])
2510# ---------------------------
2511# implement the --enable-shared flag
2512# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
2513AC_DEFUN([AC_ENABLE_SHARED],
2514[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
2515AC_ARG_ENABLE([shared],
2516 [AC_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
2517 [build shared libraries @<:@default=]AC_ENABLE_SHARED_DEFAULT[@:>@])],
2518 [p=${PACKAGE-default}
2519 case $enableval in
2520 yes) enable_shared=yes ;;
2521 no) enable_shared=no ;;
2522 *)
2523 enable_shared=no
2524 # Look at the argument we got. We use all the common list separators.
2525 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
2526 for pkg in $enableval; do
2527 IFS="$lt_save_ifs"
2528 if test "X$pkg" = "X$p"; then
2529 enable_shared=yes
2530 fi
2531 done
2532 IFS="$lt_save_ifs"
2533 ;;
2534 esac],
2535 [enable_shared=]AC_ENABLE_SHARED_DEFAULT)
2536])# AC_ENABLE_SHARED
2537
2538
2539# AC_DISABLE_SHARED
2540# -----------------
2541# set the default shared flag to --disable-shared
2542AC_DEFUN([AC_DISABLE_SHARED],
2543[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
2544AC_ENABLE_SHARED(no)
2545])# AC_DISABLE_SHARED
2546
2547
2548# AC_ENABLE_STATIC([DEFAULT])
2549# ---------------------------
2550# implement the --enable-static flag
2551# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
2552AC_DEFUN([AC_ENABLE_STATIC],
2553[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
2554AC_ARG_ENABLE([static],
2555 [AC_HELP_STRING([--enable-static@<:@=PKGS@:>@],
2556 [build static libraries @<:@default=]AC_ENABLE_STATIC_DEFAULT[@:>@])],
2557 [p=${PACKAGE-default}
2558 case $enableval in
2559 yes) enable_static=yes ;;
2560 no) enable_static=no ;;
2561 *)
2562 enable_static=no
2563 # Look at the argument we got. We use all the common list separators.
2564 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
2565 for pkg in $enableval; do
2566 IFS="$lt_save_ifs"
2567 if test "X$pkg" = "X$p"; then
2568 enable_static=yes
2569 fi
2570 done
2571 IFS="$lt_save_ifs"
2572 ;;
2573 esac],
2574 [enable_static=]AC_ENABLE_STATIC_DEFAULT)
2575])# AC_ENABLE_STATIC
2576
2577
2578# AC_DISABLE_STATIC
2579# -----------------
2580# set the default static flag to --disable-static
2581AC_DEFUN([AC_DISABLE_STATIC],
2582[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
2583AC_ENABLE_STATIC(no)
2584])# AC_DISABLE_STATIC
2585
2586
2587# AC_ENABLE_FAST_INSTALL([DEFAULT])
2588# ---------------------------------
2589# implement the --enable-fast-install flag
2590# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
2591AC_DEFUN([AC_ENABLE_FAST_INSTALL],
2592[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
2593AC_ARG_ENABLE([fast-install],
2594 [AC_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
2595 [optimize for fast installation @<:@default=]AC_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
2596 [p=${PACKAGE-default}
2597 case $enableval in
2598 yes) enable_fast_install=yes ;;
2599 no) enable_fast_install=no ;;
2600 *)
2601 enable_fast_install=no
2602 # Look at the argument we got. We use all the common list separators.
2603 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
2604 for pkg in $enableval; do
2605 IFS="$lt_save_ifs"
2606 if test "X$pkg" = "X$p"; then
2607 enable_fast_install=yes
2608 fi
2609 done
2610 IFS="$lt_save_ifs"
2611 ;;
2612 esac],
2613 [enable_fast_install=]AC_ENABLE_FAST_INSTALL_DEFAULT)
2614])# AC_ENABLE_FAST_INSTALL
2615
2616
2617# AC_DISABLE_FAST_INSTALL
2618# -----------------------
2619# set the default to --disable-fast-install
2620AC_DEFUN([AC_DISABLE_FAST_INSTALL],
2621[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
2622AC_ENABLE_FAST_INSTALL(no)
2623])# AC_DISABLE_FAST_INSTALL
2624
2625
2626# AC_LIBTOOL_PICMODE([MODE])
2627# --------------------------
2628# implement the --with-pic flag
2629# MODE is either `yes' or `no'. If omitted, it defaults to `both'.
2630AC_DEFUN([AC_LIBTOOL_PICMODE],
2631[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
2632pic_mode=ifelse($#,1,$1,default)
2633])# AC_LIBTOOL_PICMODE
2634
2635
2636# AC_PROG_EGREP
2637# -------------
2638# This is predefined starting with Autoconf 2.54, so this conditional
2639# definition can be removed once we require Autoconf 2.54 or later.
2640m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP],
2641[AC_CACHE_CHECK([for egrep], [ac_cv_prog_egrep],
2642 [if echo a | (grep -E '(a|b)') >/dev/null 2>&1
2643 then ac_cv_prog_egrep='grep -E'
2644 else ac_cv_prog_egrep='egrep'
2645 fi])
2646 EGREP=$ac_cv_prog_egrep
2647 AC_SUBST([EGREP])
2648])])
2649
2650
2651# AC_PATH_TOOL_PREFIX
2652# -------------------
2653# find a file program which can recognise shared library
2654AC_DEFUN([AC_PATH_TOOL_PREFIX],
2655[AC_REQUIRE([AC_PROG_EGREP])dnl
2656AC_MSG_CHECKING([for $1])
2657AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
2658[case $MAGIC_CMD in
2659[[\\/*] | ?:[\\/]*])
2660 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
2661 ;;
2662*)
2663 lt_save_MAGIC_CMD="$MAGIC_CMD"
2664 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2665dnl $ac_dummy forces splitting on constant user-supplied paths.
2666dnl POSIX.2 word splitting is done only on the output of word expansions,
2667dnl not every word. This closes a longstanding sh security hole.
2668 ac_dummy="ifelse([$2], , $PATH, [$2])"
2669 for ac_dir in $ac_dummy; do
2670 IFS="$lt_save_ifs"
2671 test -z "$ac_dir" && ac_dir=.
2672 if test -f $ac_dir/$1; then
2673 lt_cv_path_MAGIC_CMD="$ac_dir/$1"
2674 if test -n "$file_magic_test_file"; then
2675 case $deplibs_check_method in
2676 "file_magic "*)
2677 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
2678 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2679 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
2680 $EGREP "$file_magic_regex" > /dev/null; then
2681 :
2682 else
2683 cat <<EOF 1>&2
2684
2685*** Warning: the command libtool uses to detect shared libraries,
2686*** $file_magic_cmd, produces output that libtool cannot recognize.
2687*** The result is that libtool may fail to recognize shared libraries
2688*** as such. This will affect the creation of libtool libraries that
2689*** depend on shared libraries, but programs linked with such libtool
2690*** libraries will work regardless of this problem. Nevertheless, you
2691*** may want to report the problem to your system manager and/or to
2692*** bug-libtool@gnu.org
2693
2694EOF
2695 fi ;;
2696 esac
2697 fi
2698 break
2699 fi
2700 done
2701 IFS="$lt_save_ifs"
2702 MAGIC_CMD="$lt_save_MAGIC_CMD"
2703 ;;
2704esac])
2705MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2706if test -n "$MAGIC_CMD"; then
2707 AC_MSG_RESULT($MAGIC_CMD)
2708else
2709 AC_MSG_RESULT(no)
2710fi
2711])# AC_PATH_TOOL_PREFIX
2712
2713
2714# AC_PATH_MAGIC
2715# -------------
2716# find a file program which can recognise a shared library
2717AC_DEFUN([AC_PATH_MAGIC],
2718[AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
2719if test -z "$lt_cv_path_MAGIC_CMD"; then
2720 if test -n "$ac_tool_prefix"; then
2721 AC_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
2722 else
2723 MAGIC_CMD=:
2724 fi
2725fi
2726])# AC_PATH_MAGIC
2727
2728
2729# AC_PROG_LD
2730# ----------
2731# find the pathname to the GNU or non-GNU linker
2732AC_DEFUN([AC_PROG_LD],
2733[AC_ARG_WITH([gnu-ld],
2734 [AC_HELP_STRING([--with-gnu-ld],
2735 [assume the C compiler uses GNU ld @<:@default=no@:>@])],
2736 [test "$withval" = no || with_gnu_ld=yes],
2737 [with_gnu_ld=no])
2738AC_REQUIRE([LT_AC_PROG_SED])dnl
2739AC_REQUIRE([AC_PROG_CC])dnl
2740AC_REQUIRE([AC_CANONICAL_HOST])dnl
2741AC_REQUIRE([AC_CANONICAL_BUILD])dnl
2742ac_prog=ld
2743if test "$GCC" = yes; then
2744 # Check if gcc -print-prog-name=ld gives a path.
2745 AC_MSG_CHECKING([for ld used by $CC])
2746 case $host in
2747 *-*-mingw*)
2748 # gcc leaves a trailing carriage return which upsets mingw
2749 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
2750 *)
2751 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
2752 esac
2753 case $ac_prog in
2754 # Accept absolute paths.
2755 [[\\/]]* | ?:[[\\/]]*)
2756 re_direlt='/[[^/]][[^/]]*/\.\./'
2757 # Canonicalize the pathname of ld
2758 ac_prog=`echo $ac_prog| $SED 's%\\\\%/%g'`
2759 while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
2760 ac_prog=`echo $ac_prog| $SED "s%$re_direlt%/%"`
2761 done
2762 test -z "$LD" && LD="$ac_prog"
2763 ;;
2764 "")
2765 # If it fails, then pretend we aren't using GCC.
2766 ac_prog=ld
2767 ;;
2768 *)
2769 # If it is relative, then search for the first ld in PATH.
2770 with_gnu_ld=unknown
2771 ;;
2772 esac
2773elif test "$with_gnu_ld" = yes; then
2774 AC_MSG_CHECKING([for GNU ld])
2775else
2776 AC_MSG_CHECKING([for non-GNU ld])
2777fi
2778AC_CACHE_VAL(lt_cv_path_LD,
2779[if test -z "$LD"; then
2780 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2781 for ac_dir in $PATH; do
2782 IFS="$lt_save_ifs"
2783 test -z "$ac_dir" && ac_dir=.
2784 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
2785 lt_cv_path_LD="$ac_dir/$ac_prog"
2786 # Check to see if the program is GNU ld. I'd rather use --version,
2787 # but apparently some variants of GNU ld only accept -v.
2788 # Break only if it was the GNU/non-GNU ld that we prefer.
2789 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
2790 *GNU* | *'with BFD'*)
2791 test "$with_gnu_ld" != no && break
2792 ;;
2793 *)
2794 test "$with_gnu_ld" != yes && break
2795 ;;
2796 esac
2797 fi
2798 done
2799 IFS="$lt_save_ifs"
2800else
2801 lt_cv_path_LD="$LD" # Let the user override the test with a path.
2802fi])
2803LD="$lt_cv_path_LD"
2804if test -n "$LD"; then
2805 AC_MSG_RESULT($LD)
2806else
2807 AC_MSG_RESULT(no)
2808fi
2809test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
2810AC_PROG_LD_GNU
2811])# AC_PROG_LD
2812
2813
2814# AC_PROG_LD_GNU
2815# --------------
2816AC_DEFUN([AC_PROG_LD_GNU],
2817[AC_REQUIRE([AC_PROG_EGREP])dnl
2818AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
2819[# I'd rather use --version here, but apparently some GNU lds only accept -v.
2820case `$LD -v 2>&1 </dev/null` in
2821*GNU* | *'with BFD'*)
2822 lt_cv_prog_gnu_ld=yes
2823 ;;
2824*)
2825 lt_cv_prog_gnu_ld=no
2826 ;;
2827esac])
2828with_gnu_ld=$lt_cv_prog_gnu_ld
2829])# AC_PROG_LD_GNU
2830
2831
2832# AC_PROG_LD_RELOAD_FLAG
2833# ----------------------
2834# find reload flag for linker
2835# -- PORTME Some linkers may need a different reload flag.
2836AC_DEFUN([AC_PROG_LD_RELOAD_FLAG],
2837[AC_CACHE_CHECK([for $LD option to reload object files],
2838 lt_cv_ld_reload_flag,
2839 [lt_cv_ld_reload_flag='-r'])
2840reload_flag=$lt_cv_ld_reload_flag
2841case $reload_flag in
2842"" | " "*) ;;
2843*) reload_flag=" $reload_flag" ;;
2844esac
2845reload_cmds='$LD$reload_flag -o $output$reload_objs'
2846case $host_os in
2847 darwin*)
2848 if test "$GCC" = yes; then
2849 reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
2850 else
2851 reload_cmds='$LD$reload_flag -o $output$reload_objs'
2852 fi
2853 ;;
2854esac
2855])# AC_PROG_LD_RELOAD_FLAG
2856
2857
2858# AC_DEPLIBS_CHECK_METHOD
2859# -----------------------
2860# how to check for library dependencies
2861# -- PORTME fill in with the dynamic library characteristics
2862AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
2863[AC_CACHE_CHECK([how to recognise dependent libraries],
2864lt_cv_deplibs_check_method,
2865[lt_cv_file_magic_cmd='$MAGIC_CMD'
2866lt_cv_file_magic_test_file=
2867lt_cv_deplibs_check_method='unknown'
2868# Need to set the preceding variable on all platforms that support
2869# interlibrary dependencies.
2870# 'none' -- dependencies not supported.
2871# `unknown' -- same as none, but documents that we really don't know.
2872# 'pass_all' -- all dependencies passed with no checks.
2873# 'test_compile' -- check by making test program.
2874# 'file_magic [[regex]]' -- check by looking for files in library path
2875# which responds to the $file_magic_cmd with a given extended regex.
2876# If you have `file' or equivalent on your system and you're not sure
2877# whether `pass_all' will *always* work, you probably want this one.
2878
2879case $host_os in
2880aix4* | aix5*)
2881 lt_cv_deplibs_check_method=pass_all
2882 ;;
2883
2884beos*)
2885 lt_cv_deplibs_check_method=pass_all
2886 ;;
2887
2888bsdi[[45]]*)
2889 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
2890 lt_cv_file_magic_cmd='/usr/bin/file -L'
2891 lt_cv_file_magic_test_file=/shlib/libc.so
2892 ;;
2893
2894cygwin*)
2895 # func_win32_libid is a shell function defined in ltmain.sh
2896 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
2897 lt_cv_file_magic_cmd='func_win32_libid'
2898 ;;
2899
2900mingw* | pw32*)
2901 # Base MSYS/MinGW do not provide the 'file' command needed by
2902 # func_win32_libid shell function, so use a weaker test based on 'objdump'.
2903 lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
2904 lt_cv_file_magic_cmd='$OBJDUMP -f'
2905 ;;
2906
2907darwin* | rhapsody*)
2908 lt_cv_deplibs_check_method=pass_all
2909 ;;
2910
2911freebsd* | kfreebsd*-gnu | dragonfly*)
2912 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
2913 case $host_cpu in
2914 i*86 )
2915 # Not sure whether the presence of OpenBSD here was a mistake.
2916 # Let's accept both of them until this is cleared up.
2917 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
2918 lt_cv_file_magic_cmd=/usr/bin/file
2919 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
2920 ;;
2921 esac
2922 else
2923 lt_cv_deplibs_check_method=pass_all
2924 fi
2925 ;;
2926
2927gnu*)
2928 lt_cv_deplibs_check_method=pass_all
2929 ;;
2930
2931hpux10.20* | hpux11*)
2932 lt_cv_file_magic_cmd=/usr/bin/file
2933 case $host_cpu in
2934 ia64*)
2935 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
2936 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
2937 ;;
2938 hppa*64*)
2939 [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]']
2940 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
2941 ;;
2942 *)
2943 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
2944 lt_cv_file_magic_test_file=/usr/lib/libc.sl
2945 ;;
2946 esac
2947 ;;
2948
2949interix3*)
2950 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
2951 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
2952 ;;
2953
2954irix5* | irix6* | nonstopux*)
2955 case $LD in
2956 *-32|*"-32 ") libmagic=32-bit;;
2957 *-n32|*"-n32 ") libmagic=N32;;
2958 *-64|*"-64 ") libmagic=64-bit;;
2959 *) libmagic=never-match;;
2960 esac
2961 lt_cv_deplibs_check_method=pass_all
2962 ;;
2963
2964# This must be Linux ELF.
2965linux*)
2966 lt_cv_deplibs_check_method=pass_all
2967 ;;
2968
2969netbsd*)
2970 if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
2971 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
2972 else
2973 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
2974 fi
2975 ;;
2976
2977newos6*)
2978 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
2979 lt_cv_file_magic_cmd=/usr/bin/file
2980 lt_cv_file_magic_test_file=/usr/lib/libnls.so
2981 ;;
2982
2983nto-qnx*)
2984 lt_cv_deplibs_check_method=unknown
2985 ;;
2986
2987openbsd*)
2988 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
2989 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
2990 else
2991 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
2992 fi
2993 ;;
2994
2995osf3* | osf4* | osf5*)
2996 lt_cv_deplibs_check_method=pass_all
2997 ;;
2998
2999solaris*)
3000 lt_cv_deplibs_check_method=pass_all
3001 ;;
3002
3003sysv4 | sysv4.3*)
3004 case $host_vendor in
3005 motorola)
3006 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
3007 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3008 ;;
3009 ncr)
3010 lt_cv_deplibs_check_method=pass_all
3011 ;;
3012 sequent)
3013 lt_cv_file_magic_cmd='/bin/file'
3014 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3015 ;;
3016 sni)
3017 lt_cv_file_magic_cmd='/bin/file'
3018 lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3019 lt_cv_file_magic_test_file=/lib/libc.so
3020 ;;
3021 siemens)
3022 lt_cv_deplibs_check_method=pass_all
3023 ;;
3024 pc)
3025 lt_cv_deplibs_check_method=pass_all
3026 ;;
3027 esac
3028 ;;
3029
3030sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3031 lt_cv_deplibs_check_method=pass_all
3032 ;;
3033esac
3034])
3035file_magic_cmd=$lt_cv_file_magic_cmd
3036deplibs_check_method=$lt_cv_deplibs_check_method
3037test -z "$deplibs_check_method" && deplibs_check_method=unknown
3038])# AC_DEPLIBS_CHECK_METHOD
3039
3040
3041# AC_PROG_NM
3042# ----------
3043# find the pathname to a BSD-compatible name lister
3044AC_DEFUN([AC_PROG_NM],
3045[AC_CACHE_CHECK([for BSD-compatible nm], lt_cv_path_NM,
3046[if test -n "$NM"; then
3047 # Let the user override the test.
3048 lt_cv_path_NM="$NM"
3049else
3050 lt_nm_to_check="${ac_tool_prefix}nm"
3051 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
3052 lt_nm_to_check="$lt_nm_to_check nm"
3053 fi
3054 for lt_tmp_nm in $lt_nm_to_check; do
3055 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3056 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
3057 IFS="$lt_save_ifs"
3058 test -z "$ac_dir" && ac_dir=.
3059 tmp_nm="$ac_dir/$lt_tmp_nm"
3060 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
3061 # Check to see if the nm accepts a BSD-compat flag.
3062 # Adding the `sed 1q' prevents false positives on HP-UX, which says:
3063 # nm: unknown option "B" ignored
3064 # Tru64's nm complains that /dev/null is an invalid object file
3065 case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
3066 */dev/null* | *'Invalid file or object type'*)
3067 lt_cv_path_NM="$tmp_nm -B"
3068 break
3069 ;;
3070 *)
3071 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
3072 */dev/null*)
3073 lt_cv_path_NM="$tmp_nm -p"
3074 break
3075 ;;
3076 *)
3077 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3078 continue # so that we can try to find one that supports BSD flags
3079 ;;
3080 esac
3081 ;;
3082 esac
3083 fi
3084 done
3085 IFS="$lt_save_ifs"
3086 done
3087 test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
3088fi])
3089NM="$lt_cv_path_NM"
3090])# AC_PROG_NM
3091
3092
3093# AC_CHECK_LIBM
3094# -------------
3095# check for math library
3096AC_DEFUN([AC_CHECK_LIBM],
3097[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3098LIBM=
3099case $host in
3100*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
3101 # These system don't have libm, or don't need it
3102 ;;
3103*-ncr-sysv4.3*)
3104 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
3105 AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
3106 ;;
3107*)
3108 AC_CHECK_LIB(m, cos, LIBM="-lm")
3109 ;;
3110esac
3111])# AC_CHECK_LIBM
3112
3113
3114# AC_LIBLTDL_CONVENIENCE([DIRECTORY])
3115# -----------------------------------
3116# sets LIBLTDL to the link flags for the libltdl convenience library and
3117# LTDLINCL to the include flags for the libltdl header and adds
3118# --enable-ltdl-convenience to the configure arguments. Note that
3119# AC_CONFIG_SUBDIRS is not called here. If DIRECTORY is not provided,
3120# it is assumed to be `libltdl'. LIBLTDL will be prefixed with
3121# '${top_builddir}/' and LTDLINCL will be prefixed with '${top_srcdir}/'
3122# (note the single quotes!). If your package is not flat and you're not
3123# using automake, define top_builddir and top_srcdir appropriately in
3124# the Makefiles.
3125AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
3126[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
3127 case $enable_ltdl_convenience in
3128 no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
3129 "") enable_ltdl_convenience=yes
3130 ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
3131 esac
3132 LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
3133 LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
3134 # For backwards non-gettext consistent compatibility...
3135 INCLTDL="$LTDLINCL"
3136])# AC_LIBLTDL_CONVENIENCE
3137
3138
3139# AC_LIBLTDL_INSTALLABLE([DIRECTORY])
3140# -----------------------------------
3141# sets LIBLTDL to the link flags for the libltdl installable library and
3142# LTDLINCL to the include flags for the libltdl header and adds
3143# --enable-ltdl-install to the configure arguments. Note that
3144# AC_CONFIG_SUBDIRS is not called here. If DIRECTORY is not provided,
3145# and an installed libltdl is not found, it is assumed to be `libltdl'.
3146# LIBLTDL will be prefixed with '${top_builddir}/'# and LTDLINCL with
3147# '${top_srcdir}/' (note the single quotes!). If your package is not
3148# flat and you're not using automake, define top_builddir and top_srcdir
3149# appropriately in the Makefiles.
3150# In the future, this macro may have to be called after AC_PROG_LIBTOOL.
3151AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
3152[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
3153 AC_CHECK_LIB(ltdl, lt_dlinit,
3154 [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
3155 [if test x"$enable_ltdl_install" = xno; then
3156 AC_MSG_WARN([libltdl not installed, but installation disabled])
3157 else
3158 enable_ltdl_install=yes
3159 fi
3160 ])
3161 if test x"$enable_ltdl_install" = x"yes"; then
3162 ac_configure_args="$ac_configure_args --enable-ltdl-install"
3163 LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
3164 LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
3165 else
3166 ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
3167 LIBLTDL="-lltdl"
3168 LTDLINCL=
3169 fi
3170 # For backwards non-gettext consistent compatibility...
3171 INCLTDL="$LTDLINCL"
3172])# AC_LIBLTDL_INSTALLABLE
3173
3174
3175# AC_LIBTOOL_CXX
3176# --------------
3177# enable support for C++ libraries
3178AC_DEFUN([AC_LIBTOOL_CXX],
3179[AC_REQUIRE([_LT_AC_LANG_CXX])
3180])# AC_LIBTOOL_CXX
3181
3182
3183# _LT_AC_LANG_CXX
3184# ---------------
3185AC_DEFUN([_LT_AC_LANG_CXX],
3186[AC_REQUIRE([AC_PROG_CXX])
3187AC_REQUIRE([_LT_AC_PROG_CXXCPP])
3188_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}CXX])
3189])# _LT_AC_LANG_CXX
3190
3191# _LT_AC_PROG_CXXCPP
3192# ------------------
3193AC_DEFUN([_LT_AC_PROG_CXXCPP],
3194[
3195AC_REQUIRE([AC_PROG_CXX])
3196if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
3197 ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
3198 (test "X$CXX" != "Xg++"))) ; then
3199 AC_PROG_CXXCPP
3200fi
3201])# _LT_AC_PROG_CXXCPP
3202
3203# AC_LIBTOOL_F77
3204# --------------
3205# enable support for Fortran 77 libraries
3206AC_DEFUN([AC_LIBTOOL_F77],
3207[AC_REQUIRE([_LT_AC_LANG_F77])
3208])# AC_LIBTOOL_F77
3209
3210
3211# _LT_AC_LANG_F77
3212# ---------------
3213AC_DEFUN([_LT_AC_LANG_F77],
3214[AC_REQUIRE([AC_PROG_F77])
3215_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}F77])
3216])# _LT_AC_LANG_F77
3217
3218
3219# AC_LIBTOOL_GCJ
3220# --------------
3221# enable support for GCJ libraries
3222AC_DEFUN([AC_LIBTOOL_GCJ],
3223[AC_REQUIRE([_LT_AC_LANG_GCJ])
3224])# AC_LIBTOOL_GCJ
3225
3226
3227# _LT_AC_LANG_GCJ
3228# ---------------
3229AC_DEFUN([_LT_AC_LANG_GCJ],
3230[AC_PROVIDE_IFELSE([AC_PROG_GCJ],[],
3231 [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],[],
3232 [AC_PROVIDE_IFELSE([LT_AC_PROG_GCJ],[],
3233 [ifdef([AC_PROG_GCJ],[AC_REQUIRE([AC_PROG_GCJ])],
3234 [ifdef([A][M_PROG_GCJ],[AC_REQUIRE([A][M_PROG_GCJ])],
3235 [AC_REQUIRE([A][C_PROG_GCJ_OR_A][M_PROG_GCJ])])])])])])
3236_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}GCJ])
3237])# _LT_AC_LANG_GCJ
3238
3239
3240# AC_LIBTOOL_RC
3241# -------------
3242# enable support for Windows resource files
3243AC_DEFUN([AC_LIBTOOL_RC],
3244[AC_REQUIRE([LT_AC_PROG_RC])
3245_LT_AC_SHELL_INIT([tagnames=${tagnames+${tagnames},}RC])
3246])# AC_LIBTOOL_RC
3247
3248
3249# AC_LIBTOOL_LANG_C_CONFIG
3250# ------------------------
3251# Ensure that the configuration vars for the C compiler are
3252# suitably defined. Those variables are subsequently used by
3253# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
3254AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG], [_LT_AC_LANG_C_CONFIG])
3255AC_DEFUN([_LT_AC_LANG_C_CONFIG],
3256[lt_save_CC="$CC"
3257AC_LANG_PUSH(C)
3258
3259# Source file extension for C test sources.
3260ac_ext=c
3261
3262# Object file extension for compiled C test sources.
3263objext=o
3264_LT_AC_TAGVAR(objext, $1)=$objext
3265
3266# Code to be used in simple compile tests
3267lt_simple_compile_test_code="int some_variable = 0;\n"
3268
3269# Code to be used in simple link tests
3270lt_simple_link_test_code='int main(){return(0);}\n'
3271
3272_LT_AC_SYS_COMPILER
3273
3274# save warnings/boilerplate of simple test code
3275_LT_COMPILER_BOILERPLATE
3276_LT_LINKER_BOILERPLATE
3277
3278## CAVEAT EMPTOR:
3279## There is no encapsulation within the following macros, do not change
3280## the running order or otherwise move them around unless you know exactly
3281## what you are doing...
3282AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1)
3283AC_LIBTOOL_PROG_COMPILER_PIC($1)
3284AC_LIBTOOL_PROG_CC_C_O($1)
3285AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
3286AC_LIBTOOL_PROG_LD_SHLIBS($1)
3287AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
3288AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
3289AC_LIBTOOL_SYS_LIB_STRIP
3290AC_LIBTOOL_DLOPEN_SELF
3291
3292# Report which library types will actually be built
3293AC_MSG_CHECKING([if libtool supports shared libraries])
3294AC_MSG_RESULT([$can_build_shared])
3295
3296AC_MSG_CHECKING([whether to build shared libraries])
3297test "$can_build_shared" = "no" && enable_shared=no
3298
3299# On AIX, shared libraries and static libraries use the same namespace, and
3300# are all built from PIC.
3301case $host_os in
3302aix3*)
3303 test "$enable_shared" = yes && enable_static=no
3304 if test -n "$RANLIB"; then
3305 archive_cmds="$archive_cmds~\$RANLIB \$lib"
3306 postinstall_cmds='$RANLIB $lib'
3307 fi
3308 ;;
3309
3310aix4* | aix5*)
3311 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
3312 test "$enable_shared" = yes && enable_static=no
3313 fi
3314 ;;
3315esac
3316AC_MSG_RESULT([$enable_shared])
3317
3318AC_MSG_CHECKING([whether to build static libraries])
3319# Make sure either enable_shared or enable_static is yes.
3320test "$enable_shared" = yes || enable_static=yes
3321AC_MSG_RESULT([$enable_static])
3322
3323AC_LIBTOOL_CONFIG($1)
3324
3325AC_LANG_POP
3326CC="$lt_save_CC"
3327])# AC_LIBTOOL_LANG_C_CONFIG
3328
3329
3330# AC_LIBTOOL_LANG_CXX_CONFIG
3331# --------------------------
3332# Ensure that the configuration vars for the C compiler are
3333# suitably defined. Those variables are subsequently used by
3334# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
3335AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG], [_LT_AC_LANG_CXX_CONFIG(CXX)])
3336AC_DEFUN([_LT_AC_LANG_CXX_CONFIG],
3337[AC_LANG_PUSH(C++)
3338AC_REQUIRE([AC_PROG_CXX])
3339AC_REQUIRE([_LT_AC_PROG_CXXCPP])
3340
3341_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3342_LT_AC_TAGVAR(allow_undefined_flag, $1)=
3343_LT_AC_TAGVAR(always_export_symbols, $1)=no
3344_LT_AC_TAGVAR(archive_expsym_cmds, $1)=
3345_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=
3346_LT_AC_TAGVAR(hardcode_direct, $1)=no
3347_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
3348_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
3349_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
3350_LT_AC_TAGVAR(hardcode_minus_L, $1)=no
3351_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
3352_LT_AC_TAGVAR(hardcode_automatic, $1)=no
3353_LT_AC_TAGVAR(module_cmds, $1)=
3354_LT_AC_TAGVAR(module_expsym_cmds, $1)=
3355_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown
3356_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
3357_LT_AC_TAGVAR(no_undefined_flag, $1)=
3358_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
3359_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no
3360
3361# Dependencies to place before and after the object being linked:
3362_LT_AC_TAGVAR(predep_objects, $1)=
3363_LT_AC_TAGVAR(postdep_objects, $1)=
3364_LT_AC_TAGVAR(predeps, $1)=
3365_LT_AC_TAGVAR(postdeps, $1)=
3366_LT_AC_TAGVAR(compiler_lib_search_path, $1)=
3367
3368# Source file extension for C++ test sources.
3369ac_ext=cpp
3370
3371# Object file extension for compiled C++ test sources.
3372objext=o
3373_LT_AC_TAGVAR(objext, $1)=$objext
3374
3375# Code to be used in simple compile tests
3376lt_simple_compile_test_code="int some_variable = 0;\n"
3377
3378# Code to be used in simple link tests
3379lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }\n'
3380
3381# ltmain only uses $CC for tagged configurations so make sure $CC is set.
3382_LT_AC_SYS_COMPILER
3383
3384# save warnings/boilerplate of simple test code
3385_LT_COMPILER_BOILERPLATE
3386_LT_LINKER_BOILERPLATE
3387
3388# Allow CC to be a program name with arguments.
3389lt_save_CC=$CC
3390lt_save_LD=$LD
3391lt_save_GCC=$GCC
3392GCC=$GXX
3393lt_save_with_gnu_ld=$with_gnu_ld
3394lt_save_path_LD=$lt_cv_path_LD
3395if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
3396 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
3397else
3398 $as_unset lt_cv_prog_gnu_ld
3399fi
3400if test -n "${lt_cv_path_LDCXX+set}"; then
3401 lt_cv_path_LD=$lt_cv_path_LDCXX
3402else
3403 $as_unset lt_cv_path_LD
3404fi
3405test -z "${LDCXX+set}" || LD=$LDCXX
3406CC=${CXX-"c++"}
3407compiler=$CC
3408_LT_AC_TAGVAR(compiler, $1)=$CC
3409_LT_CC_BASENAME([$compiler])
3410
3411# We don't want -fno-exception wen compiling C++ code, so set the
3412# no_builtin_flag separately
3413if test "$GXX" = yes; then
3414 _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
3415else
3416 _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
3417fi
3418
3419if test "$GXX" = yes; then
3420 # Set up default GNU C++ configuration
3421
3422 AC_PROG_LD
3423
3424 # Check if GNU C++ uses GNU ld as the underlying linker, since the
3425 # archiving commands below assume that GNU ld is being used.
3426 if test "$with_gnu_ld" = yes; then
3427 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
3428 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
3429
3430 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
3431 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
3432
3433 # If archive_cmds runs LD, not CC, wlarc should be empty
3434 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
3435 # investigate it a little bit more. (MM)
3436 wlarc='${wl}'
3437
3438 # ancient GNU ld didn't support --whole-archive et. al.
3439 if eval "`$CC -print-prog-name=ld` --help 2>&1" | \
3440 grep 'no-whole-archive' > /dev/null; then
3441 _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
3442 else
3443 _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
3444 fi
3445 else
3446 with_gnu_ld=no
3447 wlarc=
3448
3449 # A generic and very simple default shared library creation
3450 # command for GNU C++ for the case where it uses the native
3451 # linker, instead of GNU ld. If possible, this setting should
3452 # overridden to take advantage of the native linker features on
3453 # the platform it is being used on.
3454 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
3455 fi
3456
3457 # Commands to make compiler produce verbose output that lists
3458 # what "hidden" libraries, object files and flags are used when
3459 # linking a shared library.
3460 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"'
3461
3462else
3463 GXX=no
3464 with_gnu_ld=no
3465 wlarc=
3466fi
3467
3468# PORTME: fill in a description of your system's C++ link characteristics
3469AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
3470_LT_AC_TAGVAR(ld_shlibs, $1)=yes
3471case $host_os in
3472 aix3*)
3473 # FIXME: insert proper C++ library support
3474 _LT_AC_TAGVAR(ld_shlibs, $1)=no
3475 ;;
3476 aix4* | aix5*)
3477 if test "$host_cpu" = ia64; then
3478 # On IA64, the linker does run time linking by default, so we don't
3479 # have to do anything special.
3480 aix_use_runtimelinking=no
3481 exp_sym_flag='-Bexport'
3482 no_entry_flag=""
3483 else
3484 aix_use_runtimelinking=no
3485
3486 # Test if we are trying to use run time linking or normal
3487 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
3488 # need to do runtime linking.
3489 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
3490 for ld_flag in $LDFLAGS; do
3491 case $ld_flag in
3492 *-brtl*)
3493 aix_use_runtimelinking=yes
3494 break
3495 ;;
3496 esac
3497 done
3498 ;;
3499 esac
3500
3501 exp_sym_flag='-bexport'
3502 no_entry_flag='-bnoentry'
3503 fi
3504
3505 # When large executables or shared objects are built, AIX ld can
3506 # have problems creating the table of contents. If linking a library
3507 # or program results in "error TOC overflow" add -mminimal-toc to
3508 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
3509 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
3510
3511 _LT_AC_TAGVAR(archive_cmds, $1)=''
3512 _LT_AC_TAGVAR(hardcode_direct, $1)=yes
3513 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
3514 _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
3515
3516 if test "$GXX" = yes; then
3517 case $host_os in aix4.[[012]]|aix4.[[012]].*)
3518 # We only want to do this on AIX 4.2 and lower, the check
3519 # below for broken collect2 doesn't work under 4.3+
3520 collect2name=`${CC} -print-prog-name=collect2`
3521 if test -f "$collect2name" && \
3522 strings "$collect2name" | grep resolve_lib_name >/dev/null
3523 then
3524 # We have reworked collect2
3525 _LT_AC_TAGVAR(hardcode_direct, $1)=yes
3526 else
3527 # We have old collect2
3528 _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
3529 # It fails to find uninstalled libraries when the uninstalled
3530 # path is not listed in the libpath. Setting hardcode_minus_L
3531 # to unsupported forces relinking
3532 _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
3533 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
3534 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
3535 fi
3536 ;;
3537 esac
3538 shared_flag='-shared'
3539 if test "$aix_use_runtimelinking" = yes; then
3540 shared_flag="$shared_flag "'${wl}-G'
3541 fi
3542 else
3543 # not using gcc
3544 if test "$host_cpu" = ia64; then
3545 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
3546 # chokes on -Wl,-G. The following line is correct:
3547 shared_flag='-G'
3548 else
3549 if test "$aix_use_runtimelinking" = yes; then
3550 shared_flag='${wl}-G'
3551 else
3552 shared_flag='${wl}-bM:SRE'
3553 fi
3554 fi
3555 fi
3556
3557 # It seems that -bexpall does not export symbols beginning with
3558 # underscore (_), so it is better to generate a list of symbols to export.
3559 _LT_AC_TAGVAR(always_export_symbols, $1)=yes
3560 if test "$aix_use_runtimelinking" = yes; then
3561 # Warning - without using the other runtime loading flags (-brtl),
3562 # -berok will link without error, but may produce a broken library.
3563 _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok'
3564 # Determine the default libpath from the value encoded in an empty executable.
3565 _LT_AC_SYS_LIBPATH_AIX
3566 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
3567
3568 _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
3569 else
3570 if test "$host_cpu" = ia64; then
3571 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
3572 _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
3573 _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
3574 else
3575 # Determine the default libpath from the value encoded in an empty executable.
3576 _LT_AC_SYS_LIBPATH_AIX
3577 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
3578 # Warning - without using the other run time loading flags,
3579 # -berok will link without error, but may produce a broken library.
3580 _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
3581 _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
3582 # Exported symbols can be pulled into shared objects from archives
3583 _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
3584 _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
3585 # This is similar to how AIX traditionally builds its shared libraries.
3586 _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
3587 fi
3588 fi
3589 ;;
3590
3591 beos*)
3592 if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
3593 _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
3594 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
3595 # support --undefined. This deserves some investigation. FIXME
3596 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
3597 else
3598 _LT_AC_TAGVAR(ld_shlibs, $1)=no
3599 fi
3600 ;;
3601
3602 chorus*)
3603 case $cc_basename in
3604 *)
3605 # FIXME: insert proper C++ library support
3606 _LT_AC_TAGVAR(ld_shlibs, $1)=no
3607 ;;
3608 esac
3609 ;;
3610
3611 cygwin* | mingw* | pw32*)
3612 # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
3613 # as there is no search path for DLLs.
3614 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
3615 _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
3616 _LT_AC_TAGVAR(always_export_symbols, $1)=no
3617 _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
3618
3619 if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
3620 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
3621 # If the export-symbols file already is a .def file (1st line
3622 # is EXPORTS), use it as is; otherwise, prepend...
3623 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
3624 cp $export_symbols $output_objdir/$soname.def;
3625 else
3626 echo EXPORTS > $output_objdir/$soname.def;
3627 cat $export_symbols >> $output_objdir/$soname.def;
3628 fi~
3629 $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
3630 else
3631 _LT_AC_TAGVAR(ld_shlibs, $1)=no
3632 fi
3633 ;;
3634 darwin* | rhapsody*)
3635 case $host_os in
3636 rhapsody* | darwin1.[[012]])
3637 _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress'
3638 ;;
3639 *) # Darwin 1.3 on
3640 if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
3641 _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
3642 else
3643 case ${MACOSX_DEPLOYMENT_TARGET} in
3644 10.[[012]])
3645 _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
3646 ;;
3647 10.*)
3648 _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}dynamic_lookup'
3649 ;;
3650 esac
3651 fi
3652 ;;
3653 esac
3654 _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3655 _LT_AC_TAGVAR(hardcode_direct, $1)=no
3656 _LT_AC_TAGVAR(hardcode_automatic, $1)=yes
3657 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
3658 _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=''
3659 _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
3660
3661 if test "$GXX" = yes ; then
3662 lt_int_apple_cc_single_mod=no
3663 output_verbose_link_cmd='echo'
3664 if $CC -dumpspecs 2>&1 | $EGREP 'single_module' >/dev/null ; then
3665 lt_int_apple_cc_single_mod=yes
3666 fi
3667 if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
3668 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
3669 else
3670 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
3671 fi
3672 _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
3673 # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
3674 if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
3675 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
3676 else
3677 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib $allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
3678 fi
3679 _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
3680 else
3681 case $cc_basename in
3682 xlc*)
3683 output_verbose_link_cmd='echo'
3684 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
3685 _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
3686 # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
3687 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
3688 _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
3689 ;;
3690 *)
3691 _LT_AC_TAGVAR(ld_shlibs, $1)=no
3692 ;;
3693 esac
3694 fi
3695 ;;
3696
3697 dgux*)
3698 case $cc_basename in
3699 ec++*)
3700 # FIXME: insert proper C++ library support
3701 _LT_AC_TAGVAR(ld_shlibs, $1)=no
3702 ;;
3703 ghcx*)
3704 # Green Hills C++ Compiler
3705 # FIXME: insert proper C++ library support
3706 _LT_AC_TAGVAR(ld_shlibs, $1)=no
3707 ;;
3708 *)
3709 # FIXME: insert proper C++ library support
3710 _LT_AC_TAGVAR(ld_shlibs, $1)=no
3711 ;;
3712 esac
3713 ;;
3714 freebsd[[12]]*)
3715 # C++ shared libraries reported to be fairly broken before switch to ELF
3716 _LT_AC_TAGVAR(ld_shlibs, $1)=no
3717 ;;
3718 freebsd-elf*)
3719 _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3720 ;;
3721 freebsd* | kfreebsd*-gnu | dragonfly*)
3722 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
3723 # conventions
3724 _LT_AC_TAGVAR(ld_shlibs, $1)=yes
3725 ;;
3726 gnu*)
3727 ;;
3728 hpux9*)
3729 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
3730 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3731 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
3732 _LT_AC_TAGVAR(hardcode_direct, $1)=yes
3733 _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
3734 # but as the default
3735 # location of the library.
3736
3737 case $cc_basename in
3738 CC*)
3739 # FIXME: insert proper C++ library support
3740 _LT_AC_TAGVAR(ld_shlibs, $1)=no
3741 ;;
3742 aCC*)
3743 _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
3744 # Commands to make compiler produce verbose output that lists
3745 # what "hidden" libraries, object files and flags are used when
3746 # linking a shared library.
3747 #
3748 # There doesn't appear to be a way to prevent this compiler from
3749 # explicitly linking system object files so we need to strip them
3750 # from the output so that they don't get included in the library
3751 # dependencies.
3752 output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | grep "[[-]]L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
3753 ;;
3754 *)
3755 if test "$GXX" = yes; then
3756 _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
3757 else
3758 # FIXME: insert proper C++ library support
3759 _LT_AC_TAGVAR(ld_shlibs, $1)=no
3760 fi
3761 ;;
3762 esac
3763 ;;
3764 hpux10*|hpux11*)
3765 if test $with_gnu_ld = no; then
3766 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
3767 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3768
3769 case $host_cpu in
3770 hppa*64*|ia64*)
3771 _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
3772 ;;
3773 *)
3774 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
3775 ;;
3776 esac
3777 fi
3778 case $host_cpu in
3779 hppa*64*|ia64*)
3780 _LT_AC_TAGVAR(hardcode_direct, $1)=no
3781 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
3782 ;;
3783 *)
3784 _LT_AC_TAGVAR(hardcode_direct, $1)=yes
3785 _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
3786 # but as the default
3787 # location of the library.
3788 ;;
3789 esac
3790
3791 case $cc_basename in
3792 CC*)
3793 # FIXME: insert proper C++ library support
3794 _LT_AC_TAGVAR(ld_shlibs, $1)=no
3795 ;;
3796 aCC*)
3797 case $host_cpu in
3798 hppa*64*)
3799 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
3800 ;;
3801 ia64*)
3802 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
3803 ;;
3804 *)
3805 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
3806 ;;
3807 esac
3808 # Commands to make compiler produce verbose output that lists
3809 # what "hidden" libraries, object files and flags are used when
3810 # linking a shared library.
3811 #
3812 # There doesn't appear to be a way to prevent this compiler from
3813 # explicitly linking system object files so we need to strip them
3814 # from the output so that they don't get included in the library
3815 # dependencies.
3816 output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | grep "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
3817 ;;
3818 *)
3819 if test "$GXX" = yes; then
3820 if test $with_gnu_ld = no; then
3821 case $host_cpu in
3822 hppa*64*)
3823 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
3824 ;;
3825 ia64*)
3826 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
3827 ;;
3828 *)
3829 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
3830 ;;
3831 esac
3832 fi
3833 else
3834 # FIXME: insert proper C++ library support
3835 _LT_AC_TAGVAR(ld_shlibs, $1)=no
3836 fi
3837 ;;
3838 esac
3839 ;;
3840 interix3*)
3841 _LT_AC_TAGVAR(hardcode_direct, $1)=no
3842 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
3843 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
3844 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
3845 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
3846 # Instead, shared libraries are loaded at an image base (0x10000000 by
3847 # default) and relocated if they conflict, which is a slow very memory
3848 # consuming and fragmenting process. To avoid this, we pick a random,
3849 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
3850 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
3851 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
3852 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
3853 ;;
3854 irix5* | irix6*)
3855 case $cc_basename in
3856 CC*)
3857 # SGI C++
3858 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
3859
3860 # Archives containing C++ object files must be created using
3861 # "CC -ar", where "CC" is the IRIX C++ compiler. This is
3862 # necessary to make sure instantiated templates are included
3863 # in the archive.
3864 _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
3865 ;;
3866 *)
3867 if test "$GXX" = yes; then
3868 if test "$with_gnu_ld" = no; then
3869 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
3870 else
3871 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` -o $lib'
3872 fi
3873 fi
3874 _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
3875 ;;
3876 esac
3877 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
3878 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3879 ;;
3880 linux*)
3881 case $cc_basename in
3882 KCC*)
3883 # Kuck and Associates, Inc. (KAI) C++ Compiler
3884
3885 # KCC will only create a shared library if the output file
3886 # ends with ".so" (or ".sl" for HP-UX), so rename the library
3887 # to its proper name (with version) after linking.
3888 _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
3889 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
3890 # Commands to make compiler produce verbose output that lists
3891 # what "hidden" libraries, object files and flags are used when
3892 # linking a shared library.
3893 #
3894 # There doesn't appear to be a way to prevent this compiler from
3895 # explicitly linking system object files so we need to strip them
3896 # from the output so that they don't get included in the library
3897 # dependencies.
3898 output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | grep "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
3899
3900 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath,$libdir'
3901 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
3902
3903 # Archives containing C++ object files must be created using
3904 # "CC -Bstatic", where "CC" is the KAI C++ compiler.
3905 _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
3906 ;;
3907 icpc*)
3908 # Intel C++
3909 with_gnu_ld=yes
3910 # version 8.0 and above of icpc choke on multiply defined symbols
3911 # if we add $predep_objects and $postdep_objects, however 7.1 and
3912 # earlier do not add the objects themselves.
3913 case `$CC -V 2>&1` in
3914 *"Version 7."*)
3915 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
3916 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
3917 ;;
3918 *) # Version 8.0 or newer
3919 tmp_idyn=
3920 case $host_cpu in
3921 ia64*) tmp_idyn=' -i_dynamic';;
3922 esac
3923 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
3924 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
3925 ;;
3926 esac
3927 _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
3928 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
3929 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
3930 _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
3931 ;;
3932 pgCC*)
3933 # Portland Group C++ compiler
3934 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
3935 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
3936
3937 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
3938 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
3939 _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
3940 ;;
3941 cxx*)
3942 # Compaq C++
3943 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
3944 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
3945
3946 runpath_var=LD_RUN_PATH
3947 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
3948 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
3949
3950 # Commands to make compiler produce verbose output that lists
3951 # what "hidden" libraries, object files and flags are used when
3952 # linking a shared library.
3953 #
3954 # There doesn't appear to be a way to prevent this compiler from
3955 # explicitly linking system object files so we need to strip them
3956 # from the output so that they don't get included in the library
3957 # dependencies.
3958 output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
3959 ;;
3960 esac
3961 ;;
3962 lynxos*)
3963 # FIXME: insert proper C++ library support
3964 _LT_AC_TAGVAR(ld_shlibs, $1)=no
3965 ;;
3966 m88k*)
3967 # FIXME: insert proper C++ library support
3968 _LT_AC_TAGVAR(ld_shlibs, $1)=no
3969 ;;
3970 mvs*)
3971 case $cc_basename in
3972 cxx*)
3973 # FIXME: insert proper C++ library support
3974 _LT_AC_TAGVAR(ld_shlibs, $1)=no
3975 ;;
3976 *)
3977 # FIXME: insert proper C++ library support
3978 _LT_AC_TAGVAR(ld_shlibs, $1)=no
3979 ;;
3980 esac
3981 ;;
3982 netbsd*)
3983 if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
3984 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
3985 wlarc=
3986 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
3987 _LT_AC_TAGVAR(hardcode_direct, $1)=yes
3988 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
3989 fi
3990 # Workaround some broken pre-1.5 toolchains
3991 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
3992 ;;
3993 openbsd2*)
3994 # C++ shared libraries are fairly broken
3995 _LT_AC_TAGVAR(ld_shlibs, $1)=no
3996 ;;
3997 openbsd*)
3998 _LT_AC_TAGVAR(hardcode_direct, $1)=yes
3999 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4000 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
4001 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
4002 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
4003 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
4004 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
4005 _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
4006 fi
4007 output_verbose_link_cmd='echo'
4008 ;;
4009 osf3*)
4010 case $cc_basename in
4011 KCC*)
4012 # Kuck and Associates, Inc. (KAI) C++ Compiler
4013
4014 # KCC will only create a shared library if the output file
4015 # ends with ".so" (or ".sl" for HP-UX), so rename the library
4016 # to its proper name (with version) after linking.
4017 _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
4018
4019 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
4020 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
4021
4022 # Archives containing C++ object files must be created using
4023 # "CC -Bstatic", where "CC" is the KAI C++ compiler.
4024 _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
4025
4026 ;;
4027 RCC*)
4028 # Rational C++ 2.4.1
4029 # FIXME: insert proper C++ library support
4030 _LT_AC_TAGVAR(ld_shlibs, $1)=no
4031 ;;
4032 cxx*)
4033 _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
4034 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && echo ${wl}-set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
4035
4036 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4037 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
4038
4039 # Commands to make compiler produce verbose output that lists
4040 # what "hidden" libraries, object files and flags are used when
4041 # linking a shared library.
4042 #
4043 # There doesn't appear to be a way to prevent this compiler from
4044 # explicitly linking system object files so we need to strip them
4045 # from the output so that they don't get included in the library
4046 # dependencies.
4047 output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
4048 ;;
4049 *)
4050 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
4051 _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
4052 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
4053
4054 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4055 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
4056
4057 # Commands to make compiler produce verbose output that lists
4058 # what "hidden" libraries, object files and flags are used when
4059 # linking a shared library.
4060 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"'
4061
4062 else
4063 # FIXME: insert proper C++ library support
4064 _LT_AC_TAGVAR(ld_shlibs, $1)=no
4065 fi
4066 ;;
4067 esac
4068 ;;
4069 osf4* | osf5*)
4070 case $cc_basename in
4071 KCC*)
4072 # Kuck and Associates, Inc. (KAI) C++ Compiler
4073
4074 # KCC will only create a shared library if the output file
4075 # ends with ".so" (or ".sl" for HP-UX), so rename the library
4076 # to its proper name (with version) after linking.
4077 _LT_AC_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
4078
4079 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
4080 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
4081
4082 # Archives containing C++ object files must be created using
4083 # the KAI C++ compiler.
4084 _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs'
4085 ;;
4086 RCC*)
4087 # Rational C++ 2.4.1
4088 # FIXME: insert proper C++ library support
4089 _LT_AC_TAGVAR(ld_shlibs, $1)=no
4090 ;;
4091 cxx*)
4092 _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
4093 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
4094 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
4095 echo "-hidden">> $lib.exp~
4096 $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname -Wl,-input -Wl,$lib.exp `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib~
4097 $rm $lib.exp'
4098
4099 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
4100 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
4101
4102 # Commands to make compiler produce verbose output that lists
4103 # what "hidden" libraries, object files and flags are used when
4104 # linking a shared library.
4105 #
4106 # There doesn't appear to be a way to prevent this compiler from
4107 # explicitly linking system object files so we need to strip them
4108 # from the output so that they don't get included in the library
4109 # dependencies.
4110 output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld" | grep -v "ld:"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
4111 ;;
4112 *)
4113 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
4114 _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
4115 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
4116
4117 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4118 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
4119
4120 # Commands to make compiler produce verbose output that lists
4121 # what "hidden" libraries, object files and flags are used when
4122 # linking a shared library.
4123 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "\-L"'
4124
4125 else
4126 # FIXME: insert proper C++ library support
4127 _LT_AC_TAGVAR(ld_shlibs, $1)=no
4128 fi
4129 ;;
4130 esac
4131 ;;
4132 psos*)
4133 # FIXME: insert proper C++ library support
4134 _LT_AC_TAGVAR(ld_shlibs, $1)=no
4135 ;;
4136 sunos4*)
4137 case $cc_basename in
4138 CC*)
4139 # Sun C++ 4.x
4140 # FIXME: insert proper C++ library support
4141 _LT_AC_TAGVAR(ld_shlibs, $1)=no
4142 ;;
4143 lcc*)
4144 # Lucid
4145 # FIXME: insert proper C++ library support
4146 _LT_AC_TAGVAR(ld_shlibs, $1)=no
4147 ;;
4148 *)
4149 # FIXME: insert proper C++ library support
4150 _LT_AC_TAGVAR(ld_shlibs, $1)=no
4151 ;;
4152 esac
4153 ;;
4154 solaris*)
4155 case $cc_basename in
4156 CC*)
4157 # Sun C++ 4.2, 5.x and Centerline C++
4158 _LT_AC_TAGVAR(archive_cmds_need_lc,$1)=yes
4159 _LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs'
4160 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
4161 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
4162 $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
4163
4164 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
4165 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4166 case $host_os in
4167 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
4168 *)
4169 # The C++ compiler is used as linker so we must use $wl
4170 # flag to pass the commands to the underlying system
4171 # linker. We must also pass each convience library through
4172 # to the system linker between allextract/defaultextract.
4173 # The C++ compiler will combine linker options so we
4174 # cannot just pass the convience library names through
4175 # without $wl.
4176 # Supported since Solaris 2.6 (maybe 2.5.1?)
4177 _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}-z ${wl}defaultextract'
4178 ;;
4179 esac
4180 _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
4181
4182 output_verbose_link_cmd='echo'
4183
4184 # Archives containing C++ object files must be created using
4185 # "CC -xar", where "CC" is the Sun C++ compiler. This is
4186 # necessary to make sure instantiated templates are included
4187 # in the archive.
4188 _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
4189 ;;
4190 gcx*)
4191 # Green Hills C++ Compiler
4192 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
4193
4194 # The C++ compiler must be used to create the archive.
4195 _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
4196 ;;
4197 *)
4198 # GNU C++ compiler with Solaris linker
4199 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
4200 _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
4201 if $CC --version | grep -v '^2\.7' > /dev/null; then
4202 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
4203 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
4204 $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
4205
4206 # Commands to make compiler produce verbose output that lists
4207 # what "hidden" libraries, object files and flags are used when
4208 # linking a shared library.
4209 output_verbose_link_cmd="$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\""
4210 else
4211 # g++ 2.7 appears to require `-G' NOT `-shared' on this
4212 # platform.
4213 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
4214 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
4215 $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
4216
4217 # Commands to make compiler produce verbose output that lists
4218 # what "hidden" libraries, object files and flags are used when
4219 # linking a shared library.
4220 output_verbose_link_cmd="$CC -G $CFLAGS -v conftest.$objext 2>&1 | grep \"\-L\""
4221 fi
4222
4223 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
4224 fi
4225 ;;
4226 esac
4227 ;;
4228 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
4229 _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
4230 _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
4231 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4232 runpath_var='LD_RUN_PATH'
4233
4234 case $cc_basename in
4235 CC*)
4236 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
4237 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
4238 ;;
4239 *)
4240 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
4241 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
4242 ;;
4243 esac
4244 ;;
4245 sysv5* | sco3.2v5* | sco5v6*)
4246 # Note: We can NOT use -z defs as we might desire, because we do not
4247 # link with -lc, and that would cause any symbols used from libc to
4248 # always be unresolved, which means just about no library would
4249 # ever link correctly. If we're not using GNU ld we use -z text
4250 # though, which does catch some bad symbols but isn't as heavy-handed
4251 # as -z defs.
4252 # For security reasons, it is highly recommended that you always
4253 # use absolute paths for naming shared libraries, and exclude the
4254 # DT_RUNPATH tag from executables and libraries. But doing so
4255 # requires that you compile everything twice, which is a pain.
4256 # So that behaviour is only enabled if SCOABSPATH is set to a
4257 # non-empty value in the environment. Most likely only useful for
4258 # creating official distributions of packages.
4259 # This is a hack until libtool officially supports absolute path
4260 # names for shared libraries.
4261 _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
4262 _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
4263 _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
4264 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
4265 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`'
4266 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
4267 _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
4268 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
4269 runpath_var='LD_RUN_PATH'
4270
4271 case $cc_basename in
4272 CC*)
4273 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
4274 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
4275 ;;
4276 *)
4277 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
4278 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
4279 ;;
4280 esac
4281 ;;
4282 tandem*)
4283 case $cc_basename in
4284 NCC*)
4285 # NonStop-UX NCC 3.20
4286 # FIXME: insert proper C++ library support
4287 _LT_AC_TAGVAR(ld_shlibs, $1)=no
4288 ;;
4289 *)
4290 # FIXME: insert proper C++ library support
4291 _LT_AC_TAGVAR(ld_shlibs, $1)=no
4292 ;;
4293 esac
4294 ;;
4295 vxworks*)
4296 # FIXME: insert proper C++ library support
4297 _LT_AC_TAGVAR(ld_shlibs, $1)=no
4298 ;;
4299 *)
4300 # FIXME: insert proper C++ library support
4301 _LT_AC_TAGVAR(ld_shlibs, $1)=no
4302 ;;
4303esac
4304AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)])
4305test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
4306
4307_LT_AC_TAGVAR(GCC, $1)="$GXX"
4308_LT_AC_TAGVAR(LD, $1)="$LD"
4309
4310## CAVEAT EMPTOR:
4311## There is no encapsulation within the following macros, do not change
4312## the running order or otherwise move them around unless you know exactly
4313## what you are doing...
4314AC_LIBTOOL_POSTDEP_PREDEP($1)
4315AC_LIBTOOL_PROG_COMPILER_PIC($1)
4316AC_LIBTOOL_PROG_CC_C_O($1)
4317AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
4318AC_LIBTOOL_PROG_LD_SHLIBS($1)
4319AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
4320AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
4321
4322AC_LIBTOOL_CONFIG($1)
4323
4324AC_LANG_POP
4325CC=$lt_save_CC
4326LDCXX=$LD
4327LD=$lt_save_LD
4328GCC=$lt_save_GCC
4329with_gnu_ldcxx=$with_gnu_ld
4330with_gnu_ld=$lt_save_with_gnu_ld
4331lt_cv_path_LDCXX=$lt_cv_path_LD
4332lt_cv_path_LD=$lt_save_path_LD
4333lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
4334lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
4335])# AC_LIBTOOL_LANG_CXX_CONFIG
4336
4337# AC_LIBTOOL_POSTDEP_PREDEP([TAGNAME])
4338# ------------------------------------
4339# Figure out "hidden" library dependencies from verbose
4340# compiler output when linking a shared library.
4341# Parse the compiler output and extract the necessary
4342# objects, libraries and library flags.
4343AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP],[
4344dnl we can't use the lt_simple_compile_test_code here,
4345dnl because it contains code intended for an executable,
4346dnl not a library. It's possible we should let each
4347dnl tag define a new lt_????_link_test_code variable,
4348dnl but it's only used here...
4349ifelse([$1],[],[cat > conftest.$ac_ext <<EOF
4350int a;
4351void foo (void) { a = 0; }
4352EOF
4353],[$1],[CXX],[cat > conftest.$ac_ext <<EOF
4354class Foo
4355{
4356public:
4357 Foo (void) { a = 0; }
4358private:
4359 int a;
4360};
4361EOF
4362],[$1],[F77],[cat > conftest.$ac_ext <<EOF
4363 subroutine foo
4364 implicit none
4365 integer*4 a
4366 a=0
4367 return
4368 end
4369EOF
4370],[$1],[GCJ],[cat > conftest.$ac_ext <<EOF
4371public class foo {
4372 private int a;
4373 public void bar (void) {
4374 a = 0;
4375 }
4376};
4377EOF
4378])
4379dnl Parse the compiler output and extract the necessary
4380dnl objects, libraries and library flags.
4381if AC_TRY_EVAL(ac_compile); then
4382 # Parse the compiler output and extract the necessary
4383 # objects, libraries and library flags.
4384
4385 # Sentinel used to keep track of whether or not we are before
4386 # the conftest object file.
4387 pre_test_object_deps_done=no
4388
4389 # The `*' in the case matches for architectures that use `case' in
4390 # $output_verbose_cmd can trigger glob expansion during the loop
4391 # eval without this substitution.
4392 output_verbose_link_cmd=`$echo "X$output_verbose_link_cmd" | $Xsed -e "$no_glob_subst"`
4393
4394 for p in `eval $output_verbose_link_cmd`; do
4395 case $p in
4396
4397 -L* | -R* | -l*)
4398 # Some compilers place space between "-{L,R}" and the path.
4399 # Remove the space.
4400 if test $p = "-L" \
4401 || test $p = "-R"; then
4402 prev=$p
4403 continue
4404 else
4405 prev=
4406 fi
4407
4408 if test "$pre_test_object_deps_done" = no; then
4409 case $p in
4410 -L* | -R*)
4411 # Internal compiler library paths should come after those
4412 # provided the user. The postdeps already come after the
4413 # user supplied libs so there is no need to process them.
4414 if test -z "$_LT_AC_TAGVAR(compiler_lib_search_path, $1)"; then
4415 _LT_AC_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
4416 else
4417 _LT_AC_TAGVAR(compiler_lib_search_path, $1)="${_LT_AC_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
4418 fi
4419 ;;
4420 # The "-l" case would never come before the object being
4421 # linked, so don't bother handling this case.
4422 esac
4423 else
4424 if test -z "$_LT_AC_TAGVAR(postdeps, $1)"; then
4425 _LT_AC_TAGVAR(postdeps, $1)="${prev}${p}"
4426 else
4427 _LT_AC_TAGVAR(postdeps, $1)="${_LT_AC_TAGVAR(postdeps, $1)} ${prev}${p}"
4428 fi
4429 fi
4430 ;;
4431
4432 *.$objext)
4433 # This assumes that the test object file only shows up
4434 # once in the compiler output.
4435 if test "$p" = "conftest.$objext"; then
4436 pre_test_object_deps_done=yes
4437 continue
4438 fi
4439
4440 if test "$pre_test_object_deps_done" = no; then
4441 if test -z "$_LT_AC_TAGVAR(predep_objects, $1)"; then
4442 _LT_AC_TAGVAR(predep_objects, $1)="$p"
4443 else
4444 _LT_AC_TAGVAR(predep_objects, $1)="$_LT_AC_TAGVAR(predep_objects, $1) $p"
4445 fi
4446 else
4447 if test -z "$_LT_AC_TAGVAR(postdep_objects, $1)"; then
4448 _LT_AC_TAGVAR(postdep_objects, $1)="$p"
4449 else
4450 _LT_AC_TAGVAR(postdep_objects, $1)="$_LT_AC_TAGVAR(postdep_objects, $1) $p"
4451 fi
4452 fi
4453 ;;
4454
4455 *) ;; # Ignore the rest.
4456
4457 esac
4458 done
4459
4460 # Clean up.
4461 rm -f a.out a.exe
4462else
4463 echo "libtool.m4: error: problem compiling $1 test program"
4464fi
4465
4466$rm -f confest.$objext
4467
4468# PORTME: override above test on systems where it is broken
4469ifelse([$1],[CXX],
4470[case $host_os in
4471interix3*)
4472 # Interix 3.5 installs completely hosed .la files for C++, so rather than
4473 # hack all around it, let's just trust "g++" to DTRT.
4474 _LT_AC_TAGVAR(predep_objects,$1)=
4475 _LT_AC_TAGVAR(postdep_objects,$1)=
4476 _LT_AC_TAGVAR(postdeps,$1)=
4477 ;;
4478
4479solaris*)
4480 case $cc_basename in
4481 CC*)
4482 # Adding this requires a known-good setup of shared libraries for
4483 # Sun compiler versions before 5.6, else PIC objects from an old
4484 # archive will be linked into the output, leading to subtle bugs.
4485 _LT_AC_TAGVAR(postdeps,$1)='-lCstd -lCrun'
4486 ;;
4487 esac
4488 ;;
4489esac
4490])
4491
4492case " $_LT_AC_TAGVAR(postdeps, $1) " in
4493*" -lc "*) _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no ;;
4494esac
4495])# AC_LIBTOOL_POSTDEP_PREDEP
4496
4497# AC_LIBTOOL_LANG_F77_CONFIG
4498# --------------------------
4499# Ensure that the configuration vars for the C compiler are
4500# suitably defined. Those variables are subsequently used by
4501# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
4502AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG], [_LT_AC_LANG_F77_CONFIG(F77)])
4503AC_DEFUN([_LT_AC_LANG_F77_CONFIG],
4504[AC_REQUIRE([AC_PROG_F77])
4505AC_LANG_PUSH(Fortran 77)
4506
4507_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
4508_LT_AC_TAGVAR(allow_undefined_flag, $1)=
4509_LT_AC_TAGVAR(always_export_symbols, $1)=no
4510_LT_AC_TAGVAR(archive_expsym_cmds, $1)=
4511_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=
4512_LT_AC_TAGVAR(hardcode_direct, $1)=no
4513_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
4514_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
4515_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
4516_LT_AC_TAGVAR(hardcode_minus_L, $1)=no
4517_LT_AC_TAGVAR(hardcode_automatic, $1)=no
4518_LT_AC_TAGVAR(module_cmds, $1)=
4519_LT_AC_TAGVAR(module_expsym_cmds, $1)=
4520_LT_AC_TAGVAR(link_all_deplibs, $1)=unknown
4521_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
4522_LT_AC_TAGVAR(no_undefined_flag, $1)=
4523_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
4524_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no
4525
4526# Source file extension for f77 test sources.
4527ac_ext=f
4528
4529# Object file extension for compiled f77 test sources.
4530objext=o
4531_LT_AC_TAGVAR(objext, $1)=$objext
4532
4533# Code to be used in simple compile tests
4534lt_simple_compile_test_code=" subroutine t\n return\n end\n"
4535
4536# Code to be used in simple link tests
4537lt_simple_link_test_code=" program t\n end\n"
4538
4539# ltmain only uses $CC for tagged configurations so make sure $CC is set.
4540_LT_AC_SYS_COMPILER
4541
4542# save warnings/boilerplate of simple test code
4543_LT_COMPILER_BOILERPLATE
4544_LT_LINKER_BOILERPLATE
4545
4546# Allow CC to be a program name with arguments.
4547lt_save_CC="$CC"
4548CC=${F77-"f77"}
4549compiler=$CC
4550_LT_AC_TAGVAR(compiler, $1)=$CC
4551_LT_CC_BASENAME([$compiler])
4552
4553AC_MSG_CHECKING([if libtool supports shared libraries])
4554AC_MSG_RESULT([$can_build_shared])
4555
4556AC_MSG_CHECKING([whether to build shared libraries])
4557test "$can_build_shared" = "no" && enable_shared=no
4558
4559# On AIX, shared libraries and static libraries use the same namespace, and
4560# are all built from PIC.
4561case $host_os in
4562aix3*)
4563 test "$enable_shared" = yes && enable_static=no
4564 if test -n "$RANLIB"; then
4565 archive_cmds="$archive_cmds~\$RANLIB \$lib"
4566 postinstall_cmds='$RANLIB $lib'
4567 fi
4568 ;;
4569aix4* | aix5*)
4570 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
4571 test "$enable_shared" = yes && enable_static=no
4572 fi
4573 ;;
4574esac
4575AC_MSG_RESULT([$enable_shared])
4576
4577AC_MSG_CHECKING([whether to build static libraries])
4578# Make sure either enable_shared or enable_static is yes.
4579test "$enable_shared" = yes || enable_static=yes
4580AC_MSG_RESULT([$enable_static])
4581
4582_LT_AC_TAGVAR(GCC, $1)="$G77"
4583_LT_AC_TAGVAR(LD, $1)="$LD"
4584
4585AC_LIBTOOL_PROG_COMPILER_PIC($1)
4586AC_LIBTOOL_PROG_CC_C_O($1)
4587AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
4588AC_LIBTOOL_PROG_LD_SHLIBS($1)
4589AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
4590AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
4591
4592AC_LIBTOOL_CONFIG($1)
4593
4594AC_LANG_POP
4595CC="$lt_save_CC"
4596])# AC_LIBTOOL_LANG_F77_CONFIG
4597
4598
4599# AC_LIBTOOL_LANG_GCJ_CONFIG
4600# --------------------------
4601# Ensure that the configuration vars for the C compiler are
4602# suitably defined. Those variables are subsequently used by
4603# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
4604AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG], [_LT_AC_LANG_GCJ_CONFIG(GCJ)])
4605AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG],
4606[AC_LANG_SAVE
4607
4608# Source file extension for Java test sources.
4609ac_ext=java
4610
4611# Object file extension for compiled Java test sources.
4612objext=o
4613_LT_AC_TAGVAR(objext, $1)=$objext
4614
4615# Code to be used in simple compile tests
4616lt_simple_compile_test_code="class foo {}\n"
4617
4618# Code to be used in simple link tests
4619lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }\n'
4620
4621# ltmain only uses $CC for tagged configurations so make sure $CC is set.
4622_LT_AC_SYS_COMPILER
4623
4624# save warnings/boilerplate of simple test code
4625_LT_COMPILER_BOILERPLATE
4626_LT_LINKER_BOILERPLATE
4627
4628# Allow CC to be a program name with arguments.
4629lt_save_CC="$CC"
4630CC=${GCJ-"gcj"}
4631compiler=$CC
4632_LT_AC_TAGVAR(compiler, $1)=$CC
4633_LT_CC_BASENAME([$compiler])
4634
4635# GCJ did not exist at the time GCC didn't implicitly link libc in.
4636_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
4637
4638_LT_AC_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
4639
4640## CAVEAT EMPTOR:
4641## There is no encapsulation within the following macros, do not change
4642## the running order or otherwise move them around unless you know exactly
4643## what you are doing...
4644AC_LIBTOOL_PROG_COMPILER_NO_RTTI($1)
4645AC_LIBTOOL_PROG_COMPILER_PIC($1)
4646AC_LIBTOOL_PROG_CC_C_O($1)
4647AC_LIBTOOL_SYS_HARD_LINK_LOCKS($1)
4648AC_LIBTOOL_PROG_LD_SHLIBS($1)
4649AC_LIBTOOL_SYS_DYNAMIC_LINKER($1)
4650AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH($1)
4651
4652AC_LIBTOOL_CONFIG($1)
4653
4654AC_LANG_RESTORE
4655CC="$lt_save_CC"
4656])# AC_LIBTOOL_LANG_GCJ_CONFIG
4657
4658
4659# AC_LIBTOOL_LANG_RC_CONFIG
4660# -------------------------
4661# Ensure that the configuration vars for the Windows resource compiler are
4662# suitably defined. Those variables are subsequently used by
4663# AC_LIBTOOL_CONFIG to write the compiler configuration to `libtool'.
4664AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG], [_LT_AC_LANG_RC_CONFIG(RC)])
4665AC_DEFUN([_LT_AC_LANG_RC_CONFIG],
4666[AC_LANG_SAVE
4667
4668# Source file extension for RC test sources.
4669ac_ext=rc
4670
4671# Object file extension for compiled RC test sources.
4672objext=o
4673_LT_AC_TAGVAR(objext, $1)=$objext
4674
4675# Code to be used in simple compile tests
4676lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }\n'
4677
4678# Code to be used in simple link tests
4679lt_simple_link_test_code="$lt_simple_compile_test_code"
4680
4681# ltmain only uses $CC for tagged configurations so make sure $CC is set.
4682_LT_AC_SYS_COMPILER
4683
4684# save warnings/boilerplate of simple test code
4685_LT_COMPILER_BOILERPLATE
4686_LT_LINKER_BOILERPLATE
4687
4688# Allow CC to be a program name with arguments.
4689lt_save_CC="$CC"
4690CC=${RC-"windres"}
4691compiler=$CC
4692_LT_AC_TAGVAR(compiler, $1)=$CC
4693_LT_CC_BASENAME([$compiler])
4694_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
4695
4696AC_LIBTOOL_CONFIG($1)
4697
4698AC_LANG_RESTORE
4699CC="$lt_save_CC"
4700])# AC_LIBTOOL_LANG_RC_CONFIG
4701
4702
4703# AC_LIBTOOL_CONFIG([TAGNAME])
4704# ----------------------------
4705# If TAGNAME is not passed, then create an initial libtool script
4706# with a default configuration from the untagged config vars. Otherwise
4707# add code to config.status for appending the configuration named by
4708# TAGNAME from the matching tagged config vars.
4709AC_DEFUN([AC_LIBTOOL_CONFIG],
4710[# The else clause should only fire when bootstrapping the
4711# libtool distribution, otherwise you forgot to ship ltmain.sh
4712# with your package, and you will get complaints that there are
4713# no rules to generate ltmain.sh.
4714if test -f "$ltmain"; then
4715 # See if we are running on zsh, and set the options which allow our commands through
4716 # without removal of \ escapes.
4717 if test -n "${ZSH_VERSION+set}" ; then
4718 setopt NO_GLOB_SUBST
4719 fi
4720 # Now quote all the things that may contain metacharacters while being
4721 # careful not to overquote the AC_SUBSTed values. We take copies of the
4722 # variables and quote the copies for generation of the libtool script.
4723 for var in echo old_CC old_CFLAGS AR AR_FLAGS EGREP RANLIB LN_S LTCC LTCFLAGS NM \
4724 SED SHELL STRIP \
4725 libname_spec library_names_spec soname_spec extract_expsyms_cmds \
4726 old_striplib striplib file_magic_cmd finish_cmds finish_eval \
4727 deplibs_check_method reload_flag reload_cmds need_locks \
4728 lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl \
4729 lt_cv_sys_global_symbol_to_c_name_address \
4730 sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
4731 old_postinstall_cmds old_postuninstall_cmds \
4732 _LT_AC_TAGVAR(compiler, $1) \
4733 _LT_AC_TAGVAR(CC, $1) \
4734 _LT_AC_TAGVAR(LD, $1) \
4735 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1) \
4736 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1) \
4737 _LT_AC_TAGVAR(lt_prog_compiler_static, $1) \
4738 _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) \
4739 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1) \
4740 _LT_AC_TAGVAR(thread_safe_flag_spec, $1) \
4741 _LT_AC_TAGVAR(whole_archive_flag_spec, $1) \
4742 _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1) \
4743 _LT_AC_TAGVAR(old_archive_cmds, $1) \
4744 _LT_AC_TAGVAR(old_archive_from_new_cmds, $1) \
4745 _LT_AC_TAGVAR(predep_objects, $1) \
4746 _LT_AC_TAGVAR(postdep_objects, $1) \
4747 _LT_AC_TAGVAR(predeps, $1) \
4748 _LT_AC_TAGVAR(postdeps, $1) \
4749 _LT_AC_TAGVAR(compiler_lib_search_path, $1) \
4750 _LT_AC_TAGVAR(archive_cmds, $1) \
4751 _LT_AC_TAGVAR(archive_expsym_cmds, $1) \
4752 _LT_AC_TAGVAR(postinstall_cmds, $1) \
4753 _LT_AC_TAGVAR(postuninstall_cmds, $1) \
4754 _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) \
4755 _LT_AC_TAGVAR(allow_undefined_flag, $1) \
4756 _LT_AC_TAGVAR(no_undefined_flag, $1) \
4757 _LT_AC_TAGVAR(export_symbols_cmds, $1) \
4758 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) \
4759 _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1) \
4760 _LT_AC_TAGVAR(hardcode_libdir_separator, $1) \
4761 _LT_AC_TAGVAR(hardcode_automatic, $1) \
4762 _LT_AC_TAGVAR(module_cmds, $1) \
4763 _LT_AC_TAGVAR(module_expsym_cmds, $1) \
4764 _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1) \
4765 _LT_AC_TAGVAR(exclude_expsyms, $1) \
4766 _LT_AC_TAGVAR(include_expsyms, $1); do
4767
4768 case $var in
4769 _LT_AC_TAGVAR(old_archive_cmds, $1) | \
4770 _LT_AC_TAGVAR(old_archive_from_new_cmds, $1) | \
4771 _LT_AC_TAGVAR(archive_cmds, $1) | \
4772 _LT_AC_TAGVAR(archive_expsym_cmds, $1) | \
4773 _LT_AC_TAGVAR(module_cmds, $1) | \
4774 _LT_AC_TAGVAR(module_expsym_cmds, $1) | \
4775 _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1) | \
4776 _LT_AC_TAGVAR(export_symbols_cmds, $1) | \
4777 extract_expsyms_cmds | reload_cmds | finish_cmds | \
4778 postinstall_cmds | postuninstall_cmds | \
4779 old_postinstall_cmds | old_postuninstall_cmds | \
4780 sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
4781 # Double-quote double-evaled strings.
4782 eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
4783 ;;
4784 *)
4785 eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
4786 ;;
4787 esac
4788 done
4789
4790 case $lt_echo in
4791 *'\[$]0 --fallback-echo"')
4792 lt_echo=`$echo "X$lt_echo" | $Xsed -e 's/\\\\\\\[$]0 --fallback-echo"[$]/[$]0 --fallback-echo"/'`
4793 ;;
4794 esac
4795
4796ifelse([$1], [],
4797 [cfgfile="${ofile}T"
4798 trap "$rm \"$cfgfile\"; exit 1" 1 2 15
4799 $rm -f "$cfgfile"
4800 AC_MSG_NOTICE([creating $ofile])],
4801 [cfgfile="$ofile"])
4802
4803 cat <<__EOF__ >> "$cfgfile"
4804ifelse([$1], [],
4805[#! $SHELL
4806
4807# `$echo "$cfgfile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
4808# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
4809# NOTE: Changes made to this file will be lost: look at ltmain.sh.
4810#
4811# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
4812# Free Software Foundation, Inc.
4813#
4814# This file is part of GNU Libtool:
4815# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
4816#
4817# This program is free software; you can redistribute it and/or modify
4818# it under the terms of the GNU General Public License as published by
4819# the Free Software Foundation; either version 2 of the License, or
4820# (at your option) any later version.
4821#
4822# This program is distributed in the hope that it will be useful, but
4823# WITHOUT ANY WARRANTY; without even the implied warranty of
4824# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
4825# General Public License for more details.
4826#
4827# You should have received a copy of the GNU General Public License
4828# along with this program; if not, write to the Free Software
4829# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
4830#
4831# As a special exception to the GNU General Public License, if you
4832# distribute this file as part of a program that contains a
4833# configuration script generated by Autoconf, you may include it under
4834# the same distribution terms that you use for the rest of that program.
4835
4836# A sed program that does not truncate output.
4837SED=$lt_SED
4838
4839# Sed that helps us avoid accidentally triggering echo(1) options like -n.
4840Xsed="$SED -e 1s/^X//"
4841
4842# The HP-UX ksh and POSIX shell print the target directory to stdout
4843# if CDPATH is set.
4844(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
4845
4846# The names of the tagged configurations supported by this script.
4847available_tags=
4848
4849# ### BEGIN LIBTOOL CONFIG],
4850[# ### BEGIN LIBTOOL TAG CONFIG: $tagname])
4851
4852# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
4853
4854# Shell to use when invoking shell scripts.
4855SHELL=$lt_SHELL
4856
4857# Whether or not to build shared libraries.
4858build_libtool_libs=$enable_shared
4859
4860# Whether or not to build static libraries.
4861build_old_libs=$enable_static
4862
4863# Whether or not to add -lc for building shared libraries.
4864build_libtool_need_lc=$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)
4865
4866# Whether or not to disallow shared libs when runtime libs are static
4867allow_libtool_libs_with_static_runtimes=$_LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)
4868
4869# Whether or not to optimize for fast installation.
4870fast_install=$enable_fast_install
4871
4872# The host system.
4873host_alias=$host_alias
4874host=$host
4875host_os=$host_os
4876
4877# The build system.
4878build_alias=$build_alias
4879build=$build
4880build_os=$build_os
4881
4882# An echo program that does not interpret backslashes.
4883echo=$lt_echo
4884
4885# The archiver.
4886AR=$lt_AR
4887AR_FLAGS=$lt_AR_FLAGS
4888
4889# A C compiler.
4890LTCC=$lt_LTCC
4891
4892# LTCC compiler flags.
4893LTCFLAGS=$lt_LTCFLAGS
4894
4895# A language-specific compiler.
4896CC=$lt_[]_LT_AC_TAGVAR(compiler, $1)
4897
4898# Is the compiler the GNU C compiler?
4899with_gcc=$_LT_AC_TAGVAR(GCC, $1)
4900
4901# An ERE matcher.
4902EGREP=$lt_EGREP
4903
4904# The linker used to build libraries.
4905LD=$lt_[]_LT_AC_TAGVAR(LD, $1)
4906
4907# Whether we need hard or soft links.
4908LN_S=$lt_LN_S
4909
4910# A BSD-compatible nm program.
4911NM=$lt_NM
4912
4913# A symbol stripping program
4914STRIP=$lt_STRIP
4915
4916# Used to examine libraries when file_magic_cmd begins "file"
4917MAGIC_CMD=$MAGIC_CMD
4918
4919# Used on cygwin: DLL creation program.
4920DLLTOOL="$DLLTOOL"
4921
4922# Used on cygwin: object dumper.
4923OBJDUMP="$OBJDUMP"
4924
4925# Used on cygwin: assembler.
4926AS="$AS"
4927
4928# The name of the directory that contains temporary libtool files.
4929objdir=$objdir
4930
4931# How to create reloadable object files.
4932reload_flag=$lt_reload_flag
4933reload_cmds=$lt_reload_cmds
4934
4935# How to pass a linker flag through the compiler.
4936wl=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)
4937
4938# Object file suffix (normally "o").
4939objext="$ac_objext"
4940
4941# Old archive suffix (normally "a").
4942libext="$libext"
4943
4944# Shared library suffix (normally ".so").
4945shrext_cmds='$shrext_cmds'
4946
4947# Executable file suffix (normally "").
4948exeext="$exeext"
4949
4950# Additional compiler flags for building library objects.
4951pic_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)
4952pic_mode=$pic_mode
4953
4954# What is the maximum length of a command?
4955max_cmd_len=$lt_cv_sys_max_cmd_len
4956
4957# Does compiler simultaneously support -c and -o options?
4958compiler_c_o=$lt_[]_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)
4959
4960# Must we lock files when doing compilation?
4961need_locks=$lt_need_locks
4962
4963# Do we need the lib prefix for modules?
4964need_lib_prefix=$need_lib_prefix
4965
4966# Do we need a version for libraries?
4967need_version=$need_version
4968
4969# Whether dlopen is supported.
4970dlopen_support=$enable_dlopen
4971
4972# Whether dlopen of programs is supported.
4973dlopen_self=$enable_dlopen_self
4974
4975# Whether dlopen of statically linked programs is supported.
4976dlopen_self_static=$enable_dlopen_self_static
4977
4978# Compiler flag to prevent dynamic linking.
4979link_static_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_static, $1)
4980
4981# Compiler flag to turn off builtin functions.
4982no_builtin_flag=$lt_[]_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)
4983
4984# Compiler flag to allow reflexive dlopens.
4985export_dynamic_flag_spec=$lt_[]_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)
4986
4987# Compiler flag to generate shared objects directly from archives.
4988whole_archive_flag_spec=$lt_[]_LT_AC_TAGVAR(whole_archive_flag_spec, $1)
4989
4990# Compiler flag to generate thread-safe objects.
4991thread_safe_flag_spec=$lt_[]_LT_AC_TAGVAR(thread_safe_flag_spec, $1)
4992
4993# Library versioning type.
4994version_type=$version_type
4995
4996# Format of library name prefix.
4997libname_spec=$lt_libname_spec
4998
4999# List of archive names. First name is the real one, the rest are links.
5000# The last name is the one that the linker finds with -lNAME.
5001library_names_spec=$lt_library_names_spec
5002
5003# The coded name of the library, if different from the real name.
5004soname_spec=$lt_soname_spec
5005
5006# Commands used to build and install an old-style archive.
5007RANLIB=$lt_RANLIB
5008old_archive_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_cmds, $1)
5009old_postinstall_cmds=$lt_old_postinstall_cmds
5010old_postuninstall_cmds=$lt_old_postuninstall_cmds
5011
5012# Create an old-style archive from a shared archive.
5013old_archive_from_new_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_new_cmds, $1)
5014
5015# Create a temporary old-style archive to link instead of a shared archive.
5016old_archive_from_expsyms_cmds=$lt_[]_LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)
5017
5018# Commands used to build and install a shared archive.
5019archive_cmds=$lt_[]_LT_AC_TAGVAR(archive_cmds, $1)
5020archive_expsym_cmds=$lt_[]_LT_AC_TAGVAR(archive_expsym_cmds, $1)
5021postinstall_cmds=$lt_postinstall_cmds
5022postuninstall_cmds=$lt_postuninstall_cmds
5023
5024# Commands used to build a loadable module (assumed same as above if empty)
5025module_cmds=$lt_[]_LT_AC_TAGVAR(module_cmds, $1)
5026module_expsym_cmds=$lt_[]_LT_AC_TAGVAR(module_expsym_cmds, $1)
5027
5028# Commands to strip libraries.
5029old_striplib=$lt_old_striplib
5030striplib=$lt_striplib
5031
5032# Dependencies to place before the objects being linked to create a
5033# shared library.
5034predep_objects=$lt_[]_LT_AC_TAGVAR(predep_objects, $1)
5035
5036# Dependencies to place after the objects being linked to create a
5037# shared library.
5038postdep_objects=$lt_[]_LT_AC_TAGVAR(postdep_objects, $1)
5039
5040# Dependencies to place before the objects being linked to create a
5041# shared library.
5042predeps=$lt_[]_LT_AC_TAGVAR(predeps, $1)
5043
5044# Dependencies to place after the objects being linked to create a
5045# shared library.
5046postdeps=$lt_[]_LT_AC_TAGVAR(postdeps, $1)
5047
5048# The library search path used internally by the compiler when linking
5049# a shared library.
5050compiler_lib_search_path=$lt_[]_LT_AC_TAGVAR(compiler_lib_search_path, $1)
5051
5052# Method to check whether dependent libraries are shared objects.
5053deplibs_check_method=$lt_deplibs_check_method
5054
5055# Command to use when deplibs_check_method == file_magic.
5056file_magic_cmd=$lt_file_magic_cmd
5057
5058# Flag that allows shared libraries with undefined symbols to be built.
5059allow_undefined_flag=$lt_[]_LT_AC_TAGVAR(allow_undefined_flag, $1)
5060
5061# Flag that forces no undefined symbols.
5062no_undefined_flag=$lt_[]_LT_AC_TAGVAR(no_undefined_flag, $1)
5063
5064# Commands used to finish a libtool library installation in a directory.
5065finish_cmds=$lt_finish_cmds
5066
5067# Same as above, but a single script fragment to be evaled but not shown.
5068finish_eval=$lt_finish_eval
5069
5070# Take the output of nm and produce a listing of raw symbols and C names.
5071global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe
5072
5073# Transform the output of nm in a proper C declaration
5074global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl
5075
5076# Transform the output of nm in a C name address pair
5077global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
5078
5079# This is the shared library runtime path variable.
5080runpath_var=$runpath_var
5081
5082# This is the shared library path variable.
5083shlibpath_var=$shlibpath_var
5084
5085# Is shlibpath searched before the hard-coded library search path?
5086shlibpath_overrides_runpath=$shlibpath_overrides_runpath
5087
5088# How to hardcode a shared library path into an executable.
5089hardcode_action=$_LT_AC_TAGVAR(hardcode_action, $1)
5090
5091# Whether we should hardcode library paths into libraries.
5092hardcode_into_libs=$hardcode_into_libs
5093
5094# Flag to hardcode \$libdir into a binary during linking.
5095# This must work even if \$libdir does not exist.
5096hardcode_libdir_flag_spec=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)
5097
5098# If ld is used when linking, flag to hardcode \$libdir into
5099# a binary during linking. This must work even if \$libdir does
5100# not exist.
5101hardcode_libdir_flag_spec_ld=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)
5102
5103# Whether we need a single -rpath flag with a separated argument.
5104hardcode_libdir_separator=$lt_[]_LT_AC_TAGVAR(hardcode_libdir_separator, $1)
5105
5106# Set to yes if using DIR/libNAME${shared_ext} during linking hardcodes DIR into the
5107# resulting binary.
5108hardcode_direct=$_LT_AC_TAGVAR(hardcode_direct, $1)
5109
5110# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
5111# resulting binary.
5112hardcode_minus_L=$_LT_AC_TAGVAR(hardcode_minus_L, $1)
5113
5114# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
5115# the resulting binary.
5116hardcode_shlibpath_var=$_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)
5117
5118# Set to yes if building a shared library automatically hardcodes DIR into the library
5119# and all subsequent libraries and executables linked against it.
5120hardcode_automatic=$_LT_AC_TAGVAR(hardcode_automatic, $1)
5121
5122# Variables whose values should be saved in libtool wrapper scripts and
5123# restored at relink time.
5124variables_saved_for_relink="$variables_saved_for_relink"
5125
5126# Whether libtool must link a program against all its dependency libraries.
5127link_all_deplibs=$_LT_AC_TAGVAR(link_all_deplibs, $1)
5128
5129# Compile-time system search path for libraries
5130sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
5131
5132# Run-time system search path for libraries
5133sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
5134
5135# Fix the shell variable \$srcfile for the compiler.
5136fix_srcfile_path="$_LT_AC_TAGVAR(fix_srcfile_path, $1)"
5137
5138# Set to yes if exported symbols are required.
5139always_export_symbols=$_LT_AC_TAGVAR(always_export_symbols, $1)
5140
5141# The commands to list exported symbols.
5142export_symbols_cmds=$lt_[]_LT_AC_TAGVAR(export_symbols_cmds, $1)
5143
5144# The commands to extract the exported symbol list from a shared archive.
5145extract_expsyms_cmds=$lt_extract_expsyms_cmds
5146
5147# Symbols that should not be listed in the preloaded symbols.
5148exclude_expsyms=$lt_[]_LT_AC_TAGVAR(exclude_expsyms, $1)
5149
5150# Symbols that must always be exported.
5151include_expsyms=$lt_[]_LT_AC_TAGVAR(include_expsyms, $1)
5152
5153ifelse([$1],[],
5154[# ### END LIBTOOL CONFIG],
5155[# ### END LIBTOOL TAG CONFIG: $tagname])
5156
5157__EOF__
5158
5159ifelse([$1],[], [
5160 case $host_os in
5161 aix3*)
5162 cat <<\EOF >> "$cfgfile"
5163
5164# AIX sometimes has problems with the GCC collect2 program. For some
5165# reason, if we set the COLLECT_NAMES environment variable, the problems
5166# vanish in a puff of smoke.
5167if test "X${COLLECT_NAMES+set}" != Xset; then
5168 COLLECT_NAMES=
5169 export COLLECT_NAMES
5170fi
5171EOF
5172 ;;
5173 esac
5174
5175 # We use sed instead of cat because bash on DJGPP gets confused if
5176 # if finds mixed CR/LF and LF-only lines. Since sed operates in
5177 # text mode, it properly converts lines to CR/LF. This bash problem
5178 # is reportedly fixed, but why not run on old versions too?
5179 sed '$q' "$ltmain" >> "$cfgfile" || (rm -f "$cfgfile"; exit 1)
5180
5181 mv -f "$cfgfile" "$ofile" || \
5182 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
5183 chmod +x "$ofile"
5184])
5185else
5186 # If there is no Makefile yet, we rely on a make rule to execute
5187 # `config.status --recheck' to rerun these tests and create the
5188 # libtool script then.
5189 ltmain_in=`echo $ltmain | sed -e 's/\.sh$/.in/'`
5190 if test -f "$ltmain_in"; then
5191 test -f Makefile && make "$ltmain"
5192 fi
5193fi
5194])# AC_LIBTOOL_CONFIG
5195
5196
5197# AC_LIBTOOL_PROG_COMPILER_NO_RTTI([TAGNAME])
5198# -------------------------------------------
5199AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI],
5200[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
5201
5202_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
5203
5204if test "$GCC" = yes; then
5205 _LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
5206
5207 AC_LIBTOOL_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
5208 lt_cv_prog_compiler_rtti_exceptions,
5209 [-fno-rtti -fno-exceptions], [],
5210 [_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
5211fi
5212])# AC_LIBTOOL_PROG_COMPILER_NO_RTTI
5213
5214
5215# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
5216# ---------------------------------
5217AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE],
5218[AC_REQUIRE([AC_CANONICAL_HOST])
5219AC_REQUIRE([AC_PROG_NM])
5220AC_REQUIRE([AC_OBJEXT])
5221# Check for command to grab the raw symbol name followed by C symbol from nm.
5222AC_MSG_CHECKING([command to parse $NM output from $compiler object])
5223AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
5224[
5225# These are sane defaults that work on at least a few old systems.
5226# [They come from Ultrix. What could be older than Ultrix?!! ;)]
5227
5228# Character class describing NM global symbol codes.
5229symcode='[[BCDEGRST]]'
5230
5231# Regexp to match symbols that can be accessed directly from C.
5232sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
5233
5234# Transform an extracted symbol line into a proper C declaration
5235lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern int \1;/p'"
5236
5237# Transform an extracted symbol line into symbol name and symbol address
5238lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
5239
5240# Define system-specific variables.
5241case $host_os in
5242aix*)
5243 symcode='[[BCDT]]'
5244 ;;
5245cygwin* | mingw* | pw32*)
5246 symcode='[[ABCDGISTW]]'
5247 ;;
5248hpux*) # Its linker distinguishes data from code symbols
5249 if test "$host_cpu" = ia64; then
5250 symcode='[[ABCDEGRST]]'
5251 fi
5252 lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
5253 lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
5254 ;;
5255linux*)
5256 if test "$host_cpu" = ia64; then
5257 symcode='[[ABCDGIRSTW]]'
5258 lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
5259 lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'"
5260 fi
5261 ;;
5262irix* | nonstopux*)
5263 symcode='[[BCDEGRST]]'
5264 ;;
5265osf*)
5266 symcode='[[BCDEGQRST]]'
5267 ;;
5268solaris*)
5269 symcode='[[BDRT]]'
5270 ;;
5271sco3.2v5*)
5272 symcode='[[DT]]'
5273 ;;
5274sysv4.2uw2*)
5275 symcode='[[DT]]'
5276 ;;
5277sysv5* | sco5v6* | unixware* | OpenUNIX*)
5278 symcode='[[ABDT]]'
5279 ;;
5280sysv4)
5281 symcode='[[DFNSTU]]'
5282 ;;
5283esac
5284
5285# Handle CRLF in mingw tool chain
5286opt_cr=
5287case $build_os in
5288mingw*)
5289 opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp
5290 ;;
5291esac
5292
5293# If we're using GNU nm, then use its standard symbol codes.
5294case `$NM -V 2>&1` in
5295*GNU* | *'with BFD'*)
5296 symcode='[[ABCDGIRSTW]]' ;;
5297esac
5298
5299# Try without a prefix undercore, then with it.
5300for ac_symprfx in "" "_"; do
5301
5302 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
5303 symxfrm="\\1 $ac_symprfx\\2 \\2"
5304
5305 # Write the raw and C identifiers.
5306 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
5307
5308 # Check to see that the pipe works correctly.
5309 pipe_works=no
5310
5311 rm -f conftest*
5312 cat > conftest.$ac_ext <<EOF
5313#ifdef __cplusplus
5314extern "C" {
5315#endif
5316char nm_test_var;
5317void nm_test_func(){}
5318#ifdef __cplusplus
5319}
5320#endif
5321int main(){nm_test_var='a';nm_test_func();return(0);}
5322EOF
5323
5324 if AC_TRY_EVAL(ac_compile); then
5325 # Now try to grab the symbols.
5326 nlist=conftest.nm
5327 if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
5328 # Try sorting and uniquifying the output.
5329 if sort "$nlist" | uniq > "$nlist"T; then
5330 mv -f "$nlist"T "$nlist"
5331 else
5332 rm -f "$nlist"T
5333 fi
5334
5335 # Make sure that we snagged all the symbols we need.
5336 if grep ' nm_test_var$' "$nlist" >/dev/null; then
5337 if grep ' nm_test_func$' "$nlist" >/dev/null; then
5338 cat <<EOF > conftest.$ac_ext
5339#ifdef __cplusplus
5340extern "C" {
5341#endif
5342
5343EOF
5344 # Now generate the symbol file.
5345 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | grep -v main >> conftest.$ac_ext'
5346
5347 cat <<EOF >> conftest.$ac_ext
5348#if defined (__STDC__) && __STDC__
5349# define lt_ptr_t void *
5350#else
5351# define lt_ptr_t char *
5352# define const
5353#endif
5354
5355/* The mapping between symbol names and symbols. */
5356const struct {
5357 const char *name;
5358 lt_ptr_t address;
5359}
5360lt_preloaded_symbols[[]] =
5361{
5362EOF
5363 $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr_t) \&\2},/" < "$nlist" | grep -v main >> conftest.$ac_ext
5364 cat <<\EOF >> conftest.$ac_ext
5365 {0, (lt_ptr_t) 0}
5366};
5367
5368#ifdef __cplusplus
5369}
5370#endif
5371EOF
5372 # Now try linking the two files.
5373 mv conftest.$ac_objext conftstm.$ac_objext
5374 lt_save_LIBS="$LIBS"
5375 lt_save_CFLAGS="$CFLAGS"
5376 LIBS="conftstm.$ac_objext"
5377 CFLAGS="$CFLAGS$_LT_AC_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
5378 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
5379 pipe_works=yes
5380 fi
5381 LIBS="$lt_save_LIBS"
5382 CFLAGS="$lt_save_CFLAGS"
5383 else
5384 echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
5385 fi
5386 else
5387 echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
5388 fi
5389 else
5390 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
5391 fi
5392 else
5393 echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
5394 cat conftest.$ac_ext >&5
5395 fi
5396 rm -f conftest* conftst*
5397
5398 # Do not use the global_symbol_pipe unless it works.
5399 if test "$pipe_works" = yes; then
5400 break
5401 else
5402 lt_cv_sys_global_symbol_pipe=
5403 fi
5404done
5405])
5406if test -z "$lt_cv_sys_global_symbol_pipe"; then
5407 lt_cv_sys_global_symbol_to_cdecl=
5408fi
5409if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
5410 AC_MSG_RESULT(failed)
5411else
5412 AC_MSG_RESULT(ok)
5413fi
5414]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
5415
5416
5417# AC_LIBTOOL_PROG_COMPILER_PIC([TAGNAME])
5418# ---------------------------------------
5419AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC],
5420[_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)=
5421_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
5422_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=
5423
5424AC_MSG_CHECKING([for $compiler option to produce PIC])
5425 ifelse([$1],[CXX],[
5426 # C++ specific cases for pic, static, wl, etc.
5427 if test "$GXX" = yes; then
5428 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5429 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
5430
5431 case $host_os in
5432 aix*)
5433 # All AIX code is PIC.
5434 if test "$host_cpu" = ia64; then
5435 # AIX 5 now supports IA64 processor
5436 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5437 fi
5438 ;;
5439 amigaos*)
5440 # FIXME: we need at least 68020 code to build shared libraries, but
5441 # adding the `-m68020' flag to GCC prevents building anything better,
5442 # like `-m68040'.
5443 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
5444 ;;
5445 beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
5446 # PIC is the default for these OSes.
5447 ;;
5448 mingw* | os2* | pw32*)
5449 # This hack is so that the source file can tell whether it is being
5450 # built for inclusion in a dll (and should export symbols for example).
5451 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
5452 ;;
5453 darwin* | rhapsody*)
5454 # PIC is the default on this platform
5455 # Common symbols not allowed in MH_DYLIB files
5456 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
5457 ;;
5458 *djgpp*)
5459 # DJGPP does not support shared libraries at all
5460 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
5461 ;;
5462 interix3*)
5463 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
5464 # Instead, we relocate shared libraries at runtime.
5465 ;;
5466 sysv4*MP*)
5467 if test -d /usr/nec; then
5468 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
5469 fi
5470 ;;
5471 hpux*)
5472 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
5473 # not for PA HP-UX.
5474 case $host_cpu in
5475 hppa*64*|ia64*)
5476 ;;
5477 *)
5478 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5479 ;;
5480 esac
5481 ;;
5482 *)
5483 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5484 ;;
5485 esac
5486 else
5487 case $host_os in
5488 aix4* | aix5*)
5489 # All AIX code is PIC.
5490 if test "$host_cpu" = ia64; then
5491 # AIX 5 now supports IA64 processor
5492 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5493 else
5494 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
5495 fi
5496 ;;
5497 chorus*)
5498 case $cc_basename in
5499 cxch68*)
5500 # Green Hills C++ Compiler
5501 # _LT_AC_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
5502 ;;
5503 esac
5504 ;;
5505 darwin*)
5506 # PIC is the default on this platform
5507 # Common symbols not allowed in MH_DYLIB files
5508 case $cc_basename in
5509 xlc*)
5510 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-qnocommon'
5511 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5512 ;;
5513 esac
5514 ;;
5515 dgux*)
5516 case $cc_basename in
5517 ec++*)
5518 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5519 ;;
5520 ghcx*)
5521 # Green Hills C++ Compiler
5522 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
5523 ;;
5524 *)
5525 ;;
5526 esac
5527 ;;
5528 freebsd* | kfreebsd*-gnu | dragonfly*)
5529 # FreeBSD uses GNU C++
5530 ;;
5531 hpux9* | hpux10* | hpux11*)
5532 case $cc_basename in
5533 CC*)
5534 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5535 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
5536 if test "$host_cpu" != ia64; then
5537 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
5538 fi
5539 ;;
5540 aCC*)
5541 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5542 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
5543 case $host_cpu in
5544 hppa*64*|ia64*)
5545 # +Z the default
5546 ;;
5547 *)
5548 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
5549 ;;
5550 esac
5551 ;;
5552 *)
5553 ;;
5554 esac
5555 ;;
5556 interix*)
5557 # This is c89, which is MS Visual C++ (no shared libs)
5558 # Anyone wants to do a port?
5559 ;;
5560 irix5* | irix6* | nonstopux*)
5561 case $cc_basename in
5562 CC*)
5563 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5564 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
5565 # CC pic flag -KPIC is the default.
5566 ;;
5567 *)
5568 ;;
5569 esac
5570 ;;
5571 linux*)
5572 case $cc_basename in
5573 KCC*)
5574 # KAI C++ Compiler
5575 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
5576 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5577 ;;
5578 icpc* | ecpc*)
5579 # Intel C++
5580 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5581 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5582 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
5583 ;;
5584 pgCC*)
5585 # Portland Group C++ compiler.
5586 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5587 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
5588 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5589 ;;
5590 cxx*)
5591 # Compaq C++
5592 # Make sure the PIC flag is empty. It appears that all Alpha
5593 # Linux and Compaq Tru64 Unix objects are PIC.
5594 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
5595 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
5596 ;;
5597 *)
5598 ;;
5599 esac
5600 ;;
5601 lynxos*)
5602 ;;
5603 m88k*)
5604 ;;
5605 mvs*)
5606 case $cc_basename in
5607 cxx*)
5608 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
5609 ;;
5610 *)
5611 ;;
5612 esac
5613 ;;
5614 netbsd*)
5615 ;;
5616 osf3* | osf4* | osf5*)
5617 case $cc_basename in
5618 KCC*)
5619 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
5620 ;;
5621 RCC*)
5622 # Rational C++ 2.4.1
5623 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
5624 ;;
5625 cxx*)
5626 # Digital/Compaq C++
5627 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5628 # Make sure the PIC flag is empty. It appears that all Alpha
5629 # Linux and Compaq Tru64 Unix objects are PIC.
5630 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
5631 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
5632 ;;
5633 *)
5634 ;;
5635 esac
5636 ;;
5637 psos*)
5638 ;;
5639 solaris*)
5640 case $cc_basename in
5641 CC*)
5642 # Sun C++ 4.2, 5.x and Centerline C++
5643 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5644 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5645 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
5646 ;;
5647 gcx*)
5648 # Green Hills C++ Compiler
5649 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
5650 ;;
5651 *)
5652 ;;
5653 esac
5654 ;;
5655 sunos4*)
5656 case $cc_basename in
5657 CC*)
5658 # Sun C++ 4.x
5659 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
5660 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5661 ;;
5662 lcc*)
5663 # Lucid
5664 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
5665 ;;
5666 *)
5667 ;;
5668 esac
5669 ;;
5670 tandem*)
5671 case $cc_basename in
5672 NCC*)
5673 # NonStop-UX NCC 3.20
5674 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5675 ;;
5676 *)
5677 ;;
5678 esac
5679 ;;
5680 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
5681 case $cc_basename in
5682 CC*)
5683 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5684 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5685 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5686 ;;
5687 esac
5688 ;;
5689 vxworks*)
5690 ;;
5691 *)
5692 _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
5693 ;;
5694 esac
5695 fi
5696],
5697[
5698 if test "$GCC" = yes; then
5699 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5700 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
5701
5702 case $host_os in
5703 aix*)
5704 # All AIX code is PIC.
5705 if test "$host_cpu" = ia64; then
5706 # AIX 5 now supports IA64 processor
5707 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5708 fi
5709 ;;
5710
5711 amigaos*)
5712 # FIXME: we need at least 68020 code to build shared libraries, but
5713 # adding the `-m68020' flag to GCC prevents building anything better,
5714 # like `-m68040'.
5715 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
5716 ;;
5717
5718 beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
5719 # PIC is the default for these OSes.
5720 ;;
5721
5722 mingw* | pw32* | os2*)
5723 # This hack is so that the source file can tell whether it is being
5724 # built for inclusion in a dll (and should export symbols for example).
5725 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
5726 ;;
5727
5728 darwin* | rhapsody*)
5729 # PIC is the default on this platform
5730 # Common symbols not allowed in MH_DYLIB files
5731 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
5732 ;;
5733
5734 interix3*)
5735 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
5736 # Instead, we relocate shared libraries at runtime.
5737 ;;
5738
5739 msdosdjgpp*)
5740 # Just because we use GCC doesn't mean we suddenly get shared libraries
5741 # on systems that don't support them.
5742 _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
5743 enable_shared=no
5744 ;;
5745
5746 sysv4*MP*)
5747 if test -d /usr/nec; then
5748 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
5749 fi
5750 ;;
5751
5752 hpux*)
5753 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
5754 # not for PA HP-UX.
5755 case $host_cpu in
5756 hppa*64*|ia64*)
5757 # +Z the default
5758 ;;
5759 *)
5760 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5761 ;;
5762 esac
5763 ;;
5764
5765 *)
5766 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
5767 ;;
5768 esac
5769 else
5770 # PORTME Check for flag to pass linker flags through the system compiler.
5771 case $host_os in
5772 aix*)
5773 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5774 if test "$host_cpu" = ia64; then
5775 # AIX 5 now supports IA64 processor
5776 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5777 else
5778 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
5779 fi
5780 ;;
5781 darwin*)
5782 # PIC is the default on this platform
5783 # Common symbols not allowed in MH_DYLIB files
5784 case $cc_basename in
5785 xlc*)
5786 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-qnocommon'
5787 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5788 ;;
5789 esac
5790 ;;
5791
5792 mingw* | pw32* | os2*)
5793 # This hack is so that the source file can tell whether it is being
5794 # built for inclusion in a dll (and should export symbols for example).
5795 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
5796 ;;
5797
5798 hpux9* | hpux10* | hpux11*)
5799 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5800 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
5801 # not for PA HP-UX.
5802 case $host_cpu in
5803 hppa*64*|ia64*)
5804 # +Z the default
5805 ;;
5806 *)
5807 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
5808 ;;
5809 esac
5810 # Is there a better lt_prog_compiler_static that works with the bundled CC?
5811 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
5812 ;;
5813
5814 irix5* | irix6* | nonstopux*)
5815 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5816 # PIC (with -KPIC) is the default.
5817 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
5818 ;;
5819
5820 newsos6)
5821 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5822 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5823 ;;
5824
5825 linux*)
5826 case $cc_basename in
5827 icc* | ecc*)
5828 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5829 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5830 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-static'
5831 ;;
5832 pgcc* | pgf77* | pgf90* | pgf95*)
5833 # Portland Group compilers (*not* the Pentium gcc compiler,
5834 # which looks to be a dead project)
5835 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5836 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
5837 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5838 ;;
5839 ccc*)
5840 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5841 # All Alpha code is PIC.
5842 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
5843 ;;
5844 esac
5845 ;;
5846
5847 osf3* | osf4* | osf5*)
5848 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5849 # All OSF/1 code is PIC.
5850 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
5851 ;;
5852
5853 solaris*)
5854 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5855 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5856 case $cc_basename in
5857 f77* | f90* | f95*)
5858 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
5859 *)
5860 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
5861 esac
5862 ;;
5863
5864 sunos4*)
5865 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
5866 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
5867 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5868 ;;
5869
5870 sysv4 | sysv4.2uw2* | sysv4.3*)
5871 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5872 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5873 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5874 ;;
5875
5876 sysv4*MP*)
5877 if test -d /usr/nec ;then
5878 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
5879 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5880 fi
5881 ;;
5882
5883 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
5884 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5885 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
5886 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5887 ;;
5888
5889 unicos*)
5890 _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
5891 _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
5892 ;;
5893
5894 uts4*)
5895 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
5896 _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
5897 ;;
5898
5899 *)
5900 _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
5901 ;;
5902 esac
5903 fi
5904])
5905AC_MSG_RESULT([$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)])
5906
5907#
5908# Check to make sure the PIC flag actually works.
5909#
5910if test -n "$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)"; then
5911 AC_LIBTOOL_COMPILER_OPTION([if $compiler PIC flag $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) works],
5912 _LT_AC_TAGVAR(lt_prog_compiler_pic_works, $1),
5913 [$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])], [],
5914 [case $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1) in
5915 "" | " "*) ;;
5916 *) _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)" ;;
5917 esac],
5918 [_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
5919 _LT_AC_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
5920fi
5921case $host_os in
5922 # For platforms which do not support PIC, -DPIC is meaningless:
5923 *djgpp*)
5924 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
5925 ;;
5926 *)
5927 _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)ifelse([$1],[],[ -DPIC],[ifelse([$1],[CXX],[ -DPIC],[])])"
5928 ;;
5929esac
5930
5931#
5932# Check to make sure the static flag actually works.
5933#
5934wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_AC_TAGVAR(lt_prog_compiler_static, $1)\"
5935AC_LIBTOOL_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
5936 _LT_AC_TAGVAR(lt_prog_compiler_static_works, $1),
5937 $lt_tmp_static_flag,
5938 [],
5939 [_LT_AC_TAGVAR(lt_prog_compiler_static, $1)=])
5940])
5941
5942
5943# AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME])
5944# ------------------------------------
5945# See if the linker supports building shared libraries.
5946AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS],
5947[AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
5948ifelse([$1],[CXX],[
5949 _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
5950 case $host_os in
5951 aix4* | aix5*)
5952 # If we're using GNU nm, then we don't want the "-C" option.
5953 # -C means demangle to AIX nm, but means don't demangle with GNU nm
5954 if $NM -V 2>&1 | grep 'GNU' > /dev/null; then
5955 _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
5956 else
5957 _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
5958 fi
5959 ;;
5960 pw32*)
5961 _LT_AC_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
5962 ;;
5963 cygwin* | mingw*)
5964 _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]] /s/.* \([[^ ]]*\)/\1 DATA/;/^.* __nm__/s/^.* __nm__\([[^ ]]*\) [[^ ]]*/\1 DATA/;/^I /d;/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols'
5965 ;;
5966 *)
5967 _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
5968 ;;
5969 esac
5970],[
5971 runpath_var=
5972 _LT_AC_TAGVAR(allow_undefined_flag, $1)=
5973 _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=no
5974 _LT_AC_TAGVAR(archive_cmds, $1)=
5975 _LT_AC_TAGVAR(archive_expsym_cmds, $1)=
5976 _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)=
5977 _LT_AC_TAGVAR(old_archive_from_expsyms_cmds, $1)=
5978 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=
5979 _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
5980 _LT_AC_TAGVAR(thread_safe_flag_spec, $1)=
5981 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
5982 _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)=
5983 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
5984 _LT_AC_TAGVAR(hardcode_direct, $1)=no
5985 _LT_AC_TAGVAR(hardcode_minus_L, $1)=no
5986 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
5987 _LT_AC_TAGVAR(link_all_deplibs, $1)=unknown
5988 _LT_AC_TAGVAR(hardcode_automatic, $1)=no
5989 _LT_AC_TAGVAR(module_cmds, $1)=
5990 _LT_AC_TAGVAR(module_expsym_cmds, $1)=
5991 _LT_AC_TAGVAR(always_export_symbols, $1)=no
5992 _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
5993 # include_expsyms should be a list of space-separated symbols to be *always*
5994 # included in the symbol list
5995 _LT_AC_TAGVAR(include_expsyms, $1)=
5996 # exclude_expsyms can be an extended regexp of symbols to exclude
5997 # it will be wrapped by ` (' and `)$', so one must not match beginning or
5998 # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
5999 # as well as any symbol that contains `d'.
6000 _LT_AC_TAGVAR(exclude_expsyms, $1)="_GLOBAL_OFFSET_TABLE_"
6001 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
6002 # platforms (ab)use it in PIC code, but their linkers get confused if
6003 # the symbol is explicitly referenced. Since portable code cannot
6004 # rely on this symbol name, it's probably fine to never include it in
6005 # preloaded symbol tables.
6006 extract_expsyms_cmds=
6007 # Just being paranoid about ensuring that cc_basename is set.
6008 _LT_CC_BASENAME([$compiler])
6009 case $host_os in
6010 cygwin* | mingw* | pw32*)
6011 # FIXME: the MSVC++ port hasn't been tested in a loooong time
6012 # When not using gcc, we currently assume that we are using
6013 # Microsoft Visual C++.
6014 if test "$GCC" != yes; then
6015 with_gnu_ld=no
6016 fi
6017 ;;
6018 interix*)
6019 # we just hope/assume this is gcc and not c89 (= MSVC++)
6020 with_gnu_ld=yes
6021 ;;
6022 openbsd*)
6023 with_gnu_ld=no
6024 ;;
6025 esac
6026
6027 _LT_AC_TAGVAR(ld_shlibs, $1)=yes
6028 if test "$with_gnu_ld" = yes; then
6029 # If archive_cmds runs LD, not CC, wlarc should be empty
6030 wlarc='${wl}'
6031
6032 # Set some defaults for GNU ld with shared library support. These
6033 # are reset later if shared libraries are not supported. Putting them
6034 # here allows them to be overridden if necessary.
6035 runpath_var=LD_RUN_PATH
6036 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
6037 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6038 # ancient GNU ld didn't support --whole-archive et. al.
6039 if $LD --help 2>&1 | grep 'no-whole-archive' > /dev/null; then
6040 _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
6041 else
6042 _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
6043 fi
6044 supports_anon_versioning=no
6045 case `$LD -v 2>/dev/null` in
6046 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
6047 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
6048 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
6049 *\ 2.11.*) ;; # other 2.11 versions
6050 *) supports_anon_versioning=yes ;;
6051 esac
6052
6053 # See if GNU ld supports shared libraries.
6054 case $host_os in
6055 aix3* | aix4* | aix5*)
6056 # On AIX/PPC, the GNU linker is very broken
6057 if test "$host_cpu" != ia64; then
6058 _LT_AC_TAGVAR(ld_shlibs, $1)=no
6059 cat <<EOF 1>&2
6060
6061*** Warning: the GNU linker, at least up to release 2.9.1, is reported
6062*** to be unable to reliably create shared libraries on AIX.
6063*** Therefore, libtool is disabling shared libraries support. If you
6064*** really care for shared libraries, you may want to modify your PATH
6065*** so that a non-GNU linker is found, and then restart.
6066
6067EOF
6068 fi
6069 ;;
6070
6071 amigaos*)
6072 _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
6073 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6074 _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
6075
6076 # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
6077 # that the semantics of dynamic libraries on AmigaOS, at least up
6078 # to version 4, is to share data among multiple programs linked
6079 # with the same dynamic library. Since this doesn't match the
6080 # behavior of shared libraries on other platforms, we can't use
6081 # them.
6082 _LT_AC_TAGVAR(ld_shlibs, $1)=no
6083 ;;
6084
6085 beos*)
6086 if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
6087 _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
6088 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
6089 # support --undefined. This deserves some investigation. FIXME
6090 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6091 else
6092 _LT_AC_TAGVAR(ld_shlibs, $1)=no
6093 fi
6094 ;;
6095
6096 cygwin* | mingw* | pw32*)
6097 # _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
6098 # as there is no search path for DLLs.
6099 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6100 _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
6101 _LT_AC_TAGVAR(always_export_symbols, $1)=no
6102 _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6103 _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols'
6104
6105 if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
6106 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
6107 # If the export-symbols file already is a .def file (1st line
6108 # is EXPORTS), use it as is; otherwise, prepend...
6109 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
6110 cp $export_symbols $output_objdir/$soname.def;
6111 else
6112 echo EXPORTS > $output_objdir/$soname.def;
6113 cat $export_symbols >> $output_objdir/$soname.def;
6114 fi~
6115 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
6116 else
6117 _LT_AC_TAGVAR(ld_shlibs, $1)=no
6118 fi
6119 ;;
6120
6121 interix3*)
6122 _LT_AC_TAGVAR(hardcode_direct, $1)=no
6123 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6124 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6125 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6126 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
6127 # Instead, shared libraries are loaded at an image base (0x10000000 by
6128 # default) and relocated if they conflict, which is a slow very memory
6129 # consuming and fragmenting process. To avoid this, we pick a random,
6130 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
6131 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
6132 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
6133 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
6134 ;;
6135
6136 linux*)
6137 if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
6138 tmp_addflag=
6139 case $cc_basename,$host_cpu in
6140 pgcc*) # Portland Group C compiler
6141 _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
6142 tmp_addflag=' $pic_flag'
6143 ;;
6144 pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers
6145 _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
6146 tmp_addflag=' $pic_flag -Mnomain' ;;
6147 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
6148 tmp_addflag=' -i_dynamic' ;;
6149 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
6150 tmp_addflag=' -i_dynamic -nofor_main' ;;
6151 ifc* | ifort*) # Intel Fortran compiler
6152 tmp_addflag=' -nofor_main' ;;
6153 esac
6154 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6155
6156 if test $supports_anon_versioning = yes; then
6157 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $output_objdir/$libname.ver~
6158 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
6159 $echo "local: *; };" >> $output_objdir/$libname.ver~
6160 $CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
6161 fi
6162 else
6163 _LT_AC_TAGVAR(ld_shlibs, $1)=no
6164 fi
6165 ;;
6166
6167 netbsd*)
6168 if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
6169 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
6170 wlarc=
6171 else
6172 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6173 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
6174 fi
6175 ;;
6176
6177 solaris*)
6178 if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then
6179 _LT_AC_TAGVAR(ld_shlibs, $1)=no
6180 cat <<EOF 1>&2
6181
6182*** Warning: The releases 2.8.* of the GNU linker cannot reliably
6183*** create shared libraries on Solaris systems. Therefore, libtool
6184*** is disabling shared libraries support. We urge you to upgrade GNU
6185*** binutils to release 2.9.1 or newer. Another option is to modify
6186*** your PATH or compiler configuration so that the native linker is
6187*** used, and then restart.
6188
6189EOF
6190 elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
6191 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6192 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
6193 else
6194 _LT_AC_TAGVAR(ld_shlibs, $1)=no
6195 fi
6196 ;;
6197
6198 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
6199 case `$LD -v 2>&1` in
6200 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
6201 _LT_AC_TAGVAR(ld_shlibs, $1)=no
6202 cat <<_LT_EOF 1>&2
6203
6204*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
6205*** reliably create shared libraries on SCO systems. Therefore, libtool
6206*** is disabling shared libraries support. We urge you to upgrade GNU
6207*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
6208*** your PATH or compiler configuration so that the native linker is
6209*** used, and then restart.
6210
6211_LT_EOF
6212 ;;
6213 *)
6214 if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
6215 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`'
6216 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib'
6217 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname,\${SCOABSPATH:+${install_libdir}/}$soname,-retain-symbols-file,$export_symbols -o $lib'
6218 else
6219 _LT_AC_TAGVAR(ld_shlibs, $1)=no
6220 fi
6221 ;;
6222 esac
6223 ;;
6224
6225 sunos4*)
6226 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
6227 wlarc=
6228 _LT_AC_TAGVAR(hardcode_direct, $1)=yes
6229 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6230 ;;
6231
6232 *)
6233 if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
6234 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6235 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
6236 else
6237 _LT_AC_TAGVAR(ld_shlibs, $1)=no
6238 fi
6239 ;;
6240 esac
6241
6242 if test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no; then
6243 runpath_var=
6244 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
6245 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=
6246 _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=
6247 fi
6248 else
6249 # PORTME fill in a description of your system's linker (not GNU ld)
6250 case $host_os in
6251 aix3*)
6252 _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
6253 _LT_AC_TAGVAR(always_export_symbols, $1)=yes
6254 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
6255 # Note: this linker hardcodes the directories in LIBPATH if there
6256 # are no directories specified by -L.
6257 _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
6258 if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
6259 # Neither direct hardcoding nor static linking is supported with a
6260 # broken collect2.
6261 _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
6262 fi
6263 ;;
6264
6265 aix4* | aix5*)
6266 if test "$host_cpu" = ia64; then
6267 # On IA64, the linker does run time linking by default, so we don't
6268 # have to do anything special.
6269 aix_use_runtimelinking=no
6270 exp_sym_flag='-Bexport'
6271 no_entry_flag=""
6272 else
6273 # If we're using GNU nm, then we don't want the "-C" option.
6274 # -C means demangle to AIX nm, but means don't demangle with GNU nm
6275 if $NM -V 2>&1 | grep 'GNU' > /dev/null; then
6276 _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
6277 else
6278 _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\[$]2 == "T") || (\[$]2 == "D") || (\[$]2 == "B")) && ([substr](\[$]3,1,1) != ".")) { print \[$]3 } }'\'' | sort -u > $export_symbols'
6279 fi
6280 aix_use_runtimelinking=no
6281
6282 # Test if we are trying to use run time linking or normal
6283 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
6284 # need to do runtime linking.
6285 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
6286 for ld_flag in $LDFLAGS; do
6287 if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
6288 aix_use_runtimelinking=yes
6289 break
6290 fi
6291 done
6292 ;;
6293 esac
6294
6295 exp_sym_flag='-bexport'
6296 no_entry_flag='-bnoentry'
6297 fi
6298
6299 # When large executables or shared objects are built, AIX ld can
6300 # have problems creating the table of contents. If linking a library
6301 # or program results in "error TOC overflow" add -mminimal-toc to
6302 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
6303 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
6304
6305 _LT_AC_TAGVAR(archive_cmds, $1)=''
6306 _LT_AC_TAGVAR(hardcode_direct, $1)=yes
6307 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
6308 _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
6309
6310 if test "$GCC" = yes; then
6311 case $host_os in aix4.[[012]]|aix4.[[012]].*)
6312 # We only want to do this on AIX 4.2 and lower, the check
6313 # below for broken collect2 doesn't work under 4.3+
6314 collect2name=`${CC} -print-prog-name=collect2`
6315 if test -f "$collect2name" && \
6316 strings "$collect2name" | grep resolve_lib_name >/dev/null
6317 then
6318 # We have reworked collect2
6319 _LT_AC_TAGVAR(hardcode_direct, $1)=yes
6320 else
6321 # We have old collect2
6322 _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
6323 # It fails to find uninstalled libraries when the uninstalled
6324 # path is not listed in the libpath. Setting hardcode_minus_L
6325 # to unsupported forces relinking
6326 _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
6327 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6328 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=
6329 fi
6330 ;;
6331 esac
6332 shared_flag='-shared'
6333 if test "$aix_use_runtimelinking" = yes; then
6334 shared_flag="$shared_flag "'${wl}-G'
6335 fi
6336 else
6337 # not using gcc
6338 if test "$host_cpu" = ia64; then
6339 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
6340 # chokes on -Wl,-G. The following line is correct:
6341 shared_flag='-G'
6342 else
6343 if test "$aix_use_runtimelinking" = yes; then
6344 shared_flag='${wl}-G'
6345 else
6346 shared_flag='${wl}-bM:SRE'
6347 fi
6348 fi
6349 fi
6350
6351 # It seems that -bexpall does not export symbols beginning with
6352 # underscore (_), so it is better to generate a list of symbols to export.
6353 _LT_AC_TAGVAR(always_export_symbols, $1)=yes
6354 if test "$aix_use_runtimelinking" = yes; then
6355 # Warning - without using the other runtime loading flags (-brtl),
6356 # -berok will link without error, but may produce a broken library.
6357 _LT_AC_TAGVAR(allow_undefined_flag, $1)='-berok'
6358 # Determine the default libpath from the value encoded in an empty executable.
6359 _LT_AC_SYS_LIBPATH_AIX
6360 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6361 _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
6362 else
6363 if test "$host_cpu" = ia64; then
6364 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
6365 _LT_AC_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
6366 _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
6367 else
6368 # Determine the default libpath from the value encoded in an empty executable.
6369 _LT_AC_SYS_LIBPATH_AIX
6370 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6371 # Warning - without using the other run time loading flags,
6372 # -berok will link without error, but may produce a broken library.
6373 _LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
6374 _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
6375 # Exported symbols can be pulled into shared objects from archives
6376 _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6377 _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
6378 # This is similar to how AIX traditionally builds its shared libraries.
6379 _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
6380 fi
6381 fi
6382 ;;
6383
6384 amigaos*)
6385 _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
6386 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6387 _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
6388 # see comment about different semantics on the GNU ld section
6389 _LT_AC_TAGVAR(ld_shlibs, $1)=no
6390 ;;
6391
6392 bsdi[[45]]*)
6393 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
6394 ;;
6395
6396 cygwin* | mingw* | pw32*)
6397 # When not using gcc, we currently assume that we are using
6398 # Microsoft Visual C++.
6399 # hardcode_libdir_flag_spec is actually meaningless, as there is
6400 # no search path for DLLs.
6401 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6402 _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
6403 # Tell ltmain to make .lib files, not .a files.
6404 libext=lib
6405 # Tell ltmain to make .dll files, not .so files.
6406 shrext_cmds=".dll"
6407 # FIXME: Setting linknames here is a bad hack.
6408 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | $SED -e '\''s/ -lc$//'\''` -link -dll~linknames='
6409 # The linker will automatically build a .lib file if we build a DLL.
6410 _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='true'
6411 # FIXME: Should let the user specify the lib program.
6412 _LT_AC_TAGVAR(old_archive_cmds, $1)='lib /OUT:$oldlib$oldobjs$old_deplibs'
6413 _LT_AC_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`'
6414 _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6415 ;;
6416
6417 darwin* | rhapsody*)
6418 case $host_os in
6419 rhapsody* | darwin1.[[012]])
6420 _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}suppress'
6421 ;;
6422 *) # Darwin 1.3 on
6423 if test -z ${MACOSX_DEPLOYMENT_TARGET} ; then
6424 _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
6425 else
6426 case ${MACOSX_DEPLOYMENT_TARGET} in
6427 10.[[012]])
6428 _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
6429 ;;
6430 10.*)
6431 _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-undefined ${wl}dynamic_lookup'
6432 ;;
6433 esac
6434 fi
6435 ;;
6436 esac
6437 _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
6438 _LT_AC_TAGVAR(hardcode_direct, $1)=no
6439 _LT_AC_TAGVAR(hardcode_automatic, $1)=yes
6440 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
6441 _LT_AC_TAGVAR(whole_archive_flag_spec, $1)=''
6442 _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
6443 if test "$GCC" = yes ; then
6444 output_verbose_link_cmd='echo'
6445 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring'
6446 _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
6447 # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
6448 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
6449 _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
6450 else
6451 case $cc_basename in
6452 xlc*)
6453 output_verbose_link_cmd='echo'
6454 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
6455 _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
6456 # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
6457 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
6458 _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
6459 ;;
6460 *)
6461 _LT_AC_TAGVAR(ld_shlibs, $1)=no
6462 ;;
6463 esac
6464 fi
6465 ;;
6466
6467 dgux*)
6468 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6469 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6470 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6471 ;;
6472
6473 freebsd1*)
6474 _LT_AC_TAGVAR(ld_shlibs, $1)=no
6475 ;;
6476
6477 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
6478 # support. Future versions do this automatically, but an explicit c++rt0.o
6479 # does not break anything, and helps significantly (at the cost of a little
6480 # extra space).
6481 freebsd2.2*)
6482 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
6483 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6484 _LT_AC_TAGVAR(hardcode_direct, $1)=yes
6485 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6486 ;;
6487
6488 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
6489 freebsd2*)
6490 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
6491 _LT_AC_TAGVAR(hardcode_direct, $1)=yes
6492 _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
6493 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6494 ;;
6495
6496 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
6497 freebsd* | kfreebsd*-gnu | dragonfly*)
6498 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
6499 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6500 _LT_AC_TAGVAR(hardcode_direct, $1)=yes
6501 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6502 ;;
6503
6504 hpux9*)
6505 if test "$GCC" = yes; then
6506 _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
6507 else
6508 _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
6509 fi
6510 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6511 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
6512 _LT_AC_TAGVAR(hardcode_direct, $1)=yes
6513
6514 # hardcode_minus_L: Not really in the search PATH,
6515 # but as the default location of the library.
6516 _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
6517 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6518 ;;
6519
6520 hpux10*)
6521 if test "$GCC" = yes -a "$with_gnu_ld" = no; then
6522 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
6523 else
6524 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
6525 fi
6526 if test "$with_gnu_ld" = no; then
6527 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6528 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
6529
6530 _LT_AC_TAGVAR(hardcode_direct, $1)=yes
6531 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6532
6533 # hardcode_minus_L: Not really in the search PATH,
6534 # but as the default location of the library.
6535 _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
6536 fi
6537 ;;
6538
6539 hpux11*)
6540 if test "$GCC" = yes -a "$with_gnu_ld" = no; then
6541 case $host_cpu in
6542 hppa*64*)
6543 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
6544 ;;
6545 ia64*)
6546 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
6547 ;;
6548 *)
6549 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
6550 ;;
6551 esac
6552 else
6553 case $host_cpu in
6554 hppa*64*)
6555 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
6556 ;;
6557 ia64*)
6558 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
6559 ;;
6560 *)
6561 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
6562 ;;
6563 esac
6564 fi
6565 if test "$with_gnu_ld" = no; then
6566 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6567 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
6568
6569 case $host_cpu in
6570 hppa*64*|ia64*)
6571 _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
6572 _LT_AC_TAGVAR(hardcode_direct, $1)=no
6573 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6574 ;;
6575 *)
6576 _LT_AC_TAGVAR(hardcode_direct, $1)=yes
6577 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6578
6579 # hardcode_minus_L: Not really in the search PATH,
6580 # but as the default location of the library.
6581 _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
6582 ;;
6583 esac
6584 fi
6585 ;;
6586
6587 irix5* | irix6* | nonstopux*)
6588 if test "$GCC" = yes; then
6589 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
6590 else
6591 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
6592 _LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='-rpath $libdir'
6593 fi
6594 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6595 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
6596 _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
6597 ;;
6598
6599 netbsd*)
6600 if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
6601 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
6602 else
6603 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
6604 fi
6605 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6606 _LT_AC_TAGVAR(hardcode_direct, $1)=yes
6607 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6608 ;;
6609
6610 newsos6)
6611 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6612 _LT_AC_TAGVAR(hardcode_direct, $1)=yes
6613 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6614 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
6615 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6616 ;;
6617
6618 openbsd*)
6619 _LT_AC_TAGVAR(hardcode_direct, $1)=yes
6620 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6621 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
6622 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
6623 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
6624 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6625 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6626 else
6627 case $host_os in
6628 openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
6629 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
6630 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6631 ;;
6632 *)
6633 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
6634 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6635 ;;
6636 esac
6637 fi
6638 ;;
6639
6640 os2*)
6641 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6642 _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
6643 _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
6644 _LT_AC_TAGVAR(archive_cmds, $1)='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
6645 _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
6646 ;;
6647
6648 osf3*)
6649 if test "$GCC" = yes; then
6650 _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6651 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
6652 else
6653 _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
6654 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
6655 fi
6656 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6657 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
6658 ;;
6659
6660 osf4* | osf5*) # as osf3* with the addition of -msym flag
6661 if test "$GCC" = yes; then
6662 _LT_AC_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6663 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
6664 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6665 else
6666 _LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
6667 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
6668 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~
6669 $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib~$rm $lib.exp'
6670
6671 # Both c and cxx compiler support -rpath directly
6672 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6673 fi
6674 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
6675 ;;
6676
6677 solaris*)
6678 _LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text'
6679 if test "$GCC" = yes; then
6680 wlarc='${wl}'
6681 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
6682 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
6683 $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$rm $lib.exp'
6684 else
6685 wlarc=''
6686 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
6687 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
6688 $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
6689 fi
6690 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6691 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6692 case $host_os in
6693 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6694 *)
6695 # The compiler driver will combine linker options so we
6696 # cannot just pass the convience library names through
6697 # without $wl, iff we do not link with $LD.
6698 # Luckily, gcc supports the same syntax we need for Sun Studio.
6699 # Supported since Solaris 2.6 (maybe 2.5.1?)
6700 case $wlarc in
6701 '')
6702 _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' ;;
6703 *)
6704 _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}-z ${wl}defaultextract' ;;
6705 esac ;;
6706 esac
6707 _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
6708 ;;
6709
6710 sunos4*)
6711 if test "x$host_vendor" = xsequent; then
6712 # Use $CC to link under sequent, because it throws in some extra .o
6713 # files that make .init and .fini sections work.
6714 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
6715 else
6716 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
6717 fi
6718 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6719 _LT_AC_TAGVAR(hardcode_direct, $1)=yes
6720 _LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
6721 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6722 ;;
6723
6724 sysv4)
6725 case $host_vendor in
6726 sni)
6727 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6728 _LT_AC_TAGVAR(hardcode_direct, $1)=yes # is this really true???
6729 ;;
6730 siemens)
6731 ## LD is ld it makes a PLAMLIB
6732 ## CC just makes a GrossModule.
6733 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
6734 _LT_AC_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
6735 _LT_AC_TAGVAR(hardcode_direct, $1)=no
6736 ;;
6737 motorola)
6738 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6739 _LT_AC_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
6740 ;;
6741 esac
6742 runpath_var='LD_RUN_PATH'
6743 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6744 ;;
6745
6746 sysv4.3*)
6747 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6748 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6749 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
6750 ;;
6751
6752 sysv4*MP*)
6753 if test -d /usr/nec; then
6754 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6755 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6756 runpath_var=LD_RUN_PATH
6757 hardcode_runpath_var=yes
6758 _LT_AC_TAGVAR(ld_shlibs, $1)=yes
6759 fi
6760 ;;
6761
6762 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7*)
6763 _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6764 _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
6765 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6766 runpath_var='LD_RUN_PATH'
6767
6768 if test "$GCC" = yes; then
6769 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6770 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6771 else
6772 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6773 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6774 fi
6775 ;;
6776
6777 sysv5* | sco3.2v5* | sco5v6*)
6778 # Note: We can NOT use -z defs as we might desire, because we do not
6779 # link with -lc, and that would cause any symbols used from libc to
6780 # always be unresolved, which means just about no library would
6781 # ever link correctly. If we're not using GNU ld we use -z text
6782 # though, which does catch some bad symbols but isn't as heavy-handed
6783 # as -z defs.
6784 _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6785 _LT_AC_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
6786 _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
6787 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6788 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`'
6789 _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=':'
6790 _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
6791 _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
6792 runpath_var='LD_RUN_PATH'
6793
6794 if test "$GCC" = yes; then
6795 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
6796 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
6797 else
6798 _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
6799 _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,\${SCOABSPATH:+${install_libdir}/}$soname -o $lib $libobjs $deplibs $compiler_flags'
6800 fi
6801 ;;
6802
6803 uts4*)
6804 _LT_AC_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6805 _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6806 _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
6807 ;;
6808
6809 *)
6810 _LT_AC_TAGVAR(ld_shlibs, $1)=no
6811 ;;
6812 esac
6813 fi
6814])
6815AC_MSG_RESULT([$_LT_AC_TAGVAR(ld_shlibs, $1)])
6816test "$_LT_AC_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
6817
6818#
6819# Do we need to explicitly link libc?
6820#
6821case "x$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)" in
6822x|xyes)
6823 # Assume -lc should be added
6824 _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
6825
6826 if test "$enable_shared" = yes && test "$GCC" = yes; then
6827 case $_LT_AC_TAGVAR(archive_cmds, $1) in
6828 *'~'*)
6829 # FIXME: we may have to deal with multi-command sequences.
6830 ;;
6831 '$CC '*)
6832 # Test whether the compiler implicitly links with -lc since on some
6833 # systems, -lgcc has to come before -lc. If gcc already passes -lc
6834 # to ld, don't add -lc before -lgcc.
6835 AC_MSG_CHECKING([whether -lc should be explicitly linked in])
6836 $rm conftest*
6837 printf "$lt_simple_compile_test_code" > conftest.$ac_ext
6838
6839 if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
6840 soname=conftest
6841 lib=conftest
6842 libobjs=conftest.$ac_objext
6843 deplibs=
6844 wl=$_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)
6845 pic_flag=$_LT_AC_TAGVAR(lt_prog_compiler_pic, $1)
6846 compiler_flags=-v
6847 linker_flags=-v
6848 verstring=
6849 output_objdir=.
6850 libname=conftest
6851 lt_save_allow_undefined_flag=$_LT_AC_TAGVAR(allow_undefined_flag, $1)
6852 _LT_AC_TAGVAR(allow_undefined_flag, $1)=
6853 if AC_TRY_EVAL(_LT_AC_TAGVAR(archive_cmds, $1) 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1)
6854 then
6855 _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
6856 else
6857 _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
6858 fi
6859 _LT_AC_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
6860 else
6861 cat conftest.err 1>&5
6862 fi
6863 $rm conftest*
6864 AC_MSG_RESULT([$_LT_AC_TAGVAR(archive_cmds_need_lc, $1)])
6865 ;;
6866 esac
6867 fi
6868 ;;
6869esac
6870])# AC_LIBTOOL_PROG_LD_SHLIBS
6871
6872
6873# _LT_AC_FILE_LTDLL_C
6874# -------------------
6875# Be careful that the start marker always follows a newline.
6876AC_DEFUN([_LT_AC_FILE_LTDLL_C], [
6877# /* ltdll.c starts here */
6878# #define WIN32_LEAN_AND_MEAN
6879# #include <windows.h>
6880# #undef WIN32_LEAN_AND_MEAN
6881# #include <stdio.h>
6882#
6883# #ifndef __CYGWIN__
6884# # ifdef __CYGWIN32__
6885# # define __CYGWIN__ __CYGWIN32__
6886# # endif
6887# #endif
6888#
6889# #ifdef __cplusplus
6890# extern "C" {
6891# #endif
6892# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
6893# #ifdef __cplusplus
6894# }
6895# #endif
6896#
6897# #ifdef __CYGWIN__
6898# #include <cygwin/cygwin_dll.h>
6899# DECLARE_CYGWIN_DLL( DllMain );
6900# #endif
6901# HINSTANCE __hDllInstance_base;
6902#
6903# BOOL APIENTRY
6904# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
6905# {
6906# __hDllInstance_base = hInst;
6907# return TRUE;
6908# }
6909# /* ltdll.c ends here */
6910])# _LT_AC_FILE_LTDLL_C
6911
6912
6913# _LT_AC_TAGVAR(VARNAME, [TAGNAME])
6914# ---------------------------------
6915AC_DEFUN([_LT_AC_TAGVAR], [ifelse([$2], [], [$1], [$1_$2])])
6916
6917
6918# old names
6919AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL])
6920AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
6921AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
6922AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
6923AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
6924AC_DEFUN([AM_PROG_LD], [AC_PROG_LD])
6925AC_DEFUN([AM_PROG_NM], [AC_PROG_NM])
6926
6927# This is just to silence aclocal about the macro not being used
6928ifelse([AC_DISABLE_FAST_INSTALL])
6929
6930AC_DEFUN([LT_AC_PROG_GCJ],
6931[AC_CHECK_TOOL(GCJ, gcj, no)
6932 test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
6933 AC_SUBST(GCJFLAGS)
6934])
6935
6936AC_DEFUN([LT_AC_PROG_RC],
6937[AC_CHECK_TOOL(RC, windres, no)
6938])
6939
6940############################################################
6941# NOTE: This macro has been submitted for inclusion into #
6942# GNU Autoconf as AC_PROG_SED. When it is available in #
6943# a released version of Autoconf we should remove this #
6944# macro and use it instead. #
6945############################################################
6946# LT_AC_PROG_SED
6947# --------------
6948# Check for a fully-functional sed program, that truncates
6949# as few characters as possible. Prefer GNU sed if found.
6950AC_DEFUN([LT_AC_PROG_SED],
6951[AC_MSG_CHECKING([for a sed that does not truncate output])
6952AC_CACHE_VAL(lt_cv_path_SED,
6953[# Loop through the user's path and test for sed and gsed.
6954# Then use that list of sed's as ones to test for truncation.
6955as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
6956for as_dir in $PATH
6957do
6958 IFS=$as_save_IFS
6959 test -z "$as_dir" && as_dir=.
6960 for lt_ac_prog in sed gsed; do
6961 for ac_exec_ext in '' $ac_executable_extensions; do
6962 if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
6963 lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
6964 fi
6965 done
6966 done
6967done
6968lt_ac_max=0
6969lt_ac_count=0
6970# Add /usr/xpg4/bin/sed as it is typically found on Solaris
6971# along with /bin/sed that truncates output.
6972for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
6973 test ! -f $lt_ac_sed && continue
6974 cat /dev/null > conftest.in
6975 lt_ac_count=0
6976 echo $ECHO_N "0123456789$ECHO_C" >conftest.in
6977 # Check for GNU sed and select it if it is found.
6978 if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
6979 lt_cv_path_SED=$lt_ac_sed
6980 break
6981 fi
6982 while true; do
6983 cat conftest.in conftest.in >conftest.tmp
6984 mv conftest.tmp conftest.in
6985 cp conftest.in conftest.nl
6986 echo >>conftest.nl
6987 $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
6988 cmp -s conftest.out conftest.nl || break
6989 # 10000 chars as input seems more than enough
6990 test $lt_ac_count -gt 10 && break
6991 lt_ac_count=`expr $lt_ac_count + 1`
6992 if test $lt_ac_count -gt $lt_ac_max; then
6993 lt_ac_max=$lt_ac_count
6994 lt_cv_path_SED=$lt_ac_sed
6995 fi
6996 done
6997done
6998])
6999SED=$lt_cv_path_SED
7000AC_MSG_RESULT([$SED])
7001])
7002
7003dnl Autoconf macros for libgcrypt
7004dnl Copyright (C) 2002, 2004 Free Software Foundation, Inc.
7005dnl
7006dnl This file is free software; as a special exception the author gives
7007dnl unlimited permission to copy and/or distribute it, with or without
7008dnl modifications, as long as this notice is preserved.
7009dnl
7010dnl This file is distributed in the hope that it will be useful, but
7011dnl WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
7012dnl implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
7013
7014
7015dnl AM_PATH_LIBGCRYPT([MINIMUM-VERSION,
7016dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]])
7017dnl Test for libgcrypt and define LIBGCRYPT_CFLAGS and LIBGCRYPT_LIBS.
7018dnl MINIMUN-VERSION is a string with the version number optionalliy prefixed
7019dnl with the API version to also check the API compatibility. Example:
7020dnl a MINIMUN-VERSION of 1:1.2.5 won't pass the test unless the installed
7021dnl version of libgcrypt is at least 1.2.5 *and* the API number is 1. Using
7022dnl this features allows to prevent build against newer versions of libgcrypt
7023dnl with a changed API.
7024dnl
7025AC_DEFUN([AM_PATH_LIBGCRYPT],
7026[ AC_ARG_WITH(libgcrypt-prefix,
7027 AC_HELP_STRING([--with-libgcrypt-prefix=PFX],
7028 [prefix where LIBGCRYPT is installed (optional)]),
7029 libgcrypt_config_prefix="$withval", libgcrypt_config_prefix="")
7030 if test x$libgcrypt_config_prefix != x ; then
7031 if test x${LIBGCRYPT_CONFIG+set} != xset ; then
7032 LIBGCRYPT_CONFIG=$libgcrypt_config_prefix/bin/libgcrypt-config
7033 fi
7034 fi
7035
7036 AC_PATH_PROG(LIBGCRYPT_CONFIG, libgcrypt-config, no)
7037 tmp=ifelse([$1], ,1:1.2.0,$1)
7038 if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then
7039 req_libgcrypt_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'`
7040 min_libgcrypt_version=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\2/'`
7041 else
7042 req_libgcrypt_api=0
7043 min_libgcrypt_version="$tmp"
7044 fi
7045
7046 AC_MSG_CHECKING(for LIBGCRYPT - version >= $min_libgcrypt_version)
7047 ok=no
7048 if test "$LIBGCRYPT_CONFIG" != "no" ; then
7049 req_major=`echo $min_libgcrypt_version | \
7050 sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\1/'`
7051 req_minor=`echo $min_libgcrypt_version | \
7052 sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\2/'`
7053 req_micro=`echo $min_libgcrypt_version | \
7054 sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\3/'`
7055 libgcrypt_config_version=`$LIBGCRYPT_CONFIG --version`
7056 major=`echo $libgcrypt_config_version | \
7057 sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'`
7058 minor=`echo $libgcrypt_config_version | \
7059 sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\2/'`
7060 micro=`echo $libgcrypt_config_version | \
7061 sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\3/'`
7062 if test "$major" -gt "$req_major"; then
7063 ok=yes
7064 else
7065 if test "$major" -eq "$req_major"; then
7066 if test "$minor" -gt "$req_minor"; then
7067 ok=yes
7068 else
7069 if test "$minor" -eq "$req_minor"; then
7070 if test "$micro" -ge "$req_micro"; then
7071 ok=yes
7072 fi
7073 fi
7074 fi
7075 fi
7076 fi
7077 fi
7078 if test $ok = yes; then
7079 AC_MSG_RESULT([yes ($libgcrypt_config_version)])
7080 else
7081 AC_MSG_RESULT(no)
7082 fi
7083 if test $ok = yes; then
7084 # If we have a recent libgcrypt, we should also check that the
7085 # API is compatible
7086 if test "$req_libgcrypt_api" -gt 0 ; then
7087 tmp=`$LIBGCRYPT_CONFIG --api-version 2>/dev/null || echo 0`
7088 if test "$tmp" -gt 0 ; then
7089 AC_MSG_CHECKING([LIBGCRYPT API version])
7090 if test "$req_libgcrypt_api" -eq "$tmp" ; then
7091 AC_MSG_RESULT([okay])
7092 else
7093 ok=no
7094 AC_MSG_RESULT([does not match. want=$req_libgcrypt_api got=$tmp])
7095 fi
7096 fi
7097 fi
7098 fi
7099 if test $ok = yes; then
7100 LIBGCRYPT_CFLAGS=`$LIBGCRYPT_CONFIG --cflags`
7101 LIBGCRYPT_LIBS=`$LIBGCRYPT_CONFIG --libs`
7102 ifelse([$2], , :, [$2])
7103 else
7104 LIBGCRYPT_CFLAGS=""
7105 LIBGCRYPT_LIBS=""
7106 ifelse([$3], , :, [$3])
7107 fi
7108 AC_SUBST(LIBGCRYPT_CFLAGS)
7109 AC_SUBST(LIBGCRYPT_LIBS)
7110])