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