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