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