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