Adding debian version 0.3.2-2.
[debian/menu-cache.git] / aclocal.m4
CommitLineData
3daf2614 1# generated automatically by aclocal 1.11 -*- Autoconf -*-
38dfb1e4
DB
2
3# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
3daf2614 4# 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
38dfb1e4
DB
5# This file is free software; the Free Software Foundation
6# gives unlimited permission to copy and/or distribute it,
7# with or without modifications, as long as this notice is preserved.
8
9# This program is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
11# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
12# PARTICULAR PURPOSE.
13
14m4_ifndef([AC_AUTOCONF_VERSION],
15 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
3daf2614
DB
16m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.64],,
17[m4_warning([this file was generated for autoconf 2.64.
38dfb1e4
DB
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'.])])
21
22# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
3daf2614
DB
23#
24# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
25# 2006, 2007, 2008 Free Software Foundation, Inc.
26# Written by Gordon Matzigkeit, 1996
27#
28# This file is free software; the Free Software Foundation gives
29# unlimited permission to copy and/or distribute it, with or without
30# modifications, as long as this notice is preserved.
31
32m4_define([_LT_COPYING], [dnl
33# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
34# 2006, 2007, 2008 Free Software Foundation, Inc.
35# Written by Gordon Matzigkeit, 1996
36#
37# This file is part of GNU Libtool.
38#
39# GNU Libtool is free software; you can redistribute it and/or
40# modify it under the terms of the GNU General Public License as
41# published by the Free Software Foundation; either version 2 of
42# the License, or (at your option) any later version.
43#
44# As a special exception to the GNU General Public License,
45# if you distribute this file as part of a program or library that
46# is built using GNU Libtool, you may include this file under the
47# same distribution terms that you use for the rest of that program.
48#
49# GNU Libtool is distributed in the hope that it will be useful,
50# but WITHOUT ANY WARRANTY; without even the implied warranty of
51# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
52# GNU General Public License for more details.
53#
54# You should have received a copy of the GNU General Public License
55# along with GNU Libtool; see the file COPYING. If not, a copy
56# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
57# obtained by writing to the Free Software Foundation, Inc.,
58# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
59])
38dfb1e4 60
3daf2614 61# serial 56 LT_INIT
38dfb1e4
DB
62
63
3daf2614
DB
64# LT_PREREQ(VERSION)
65# ------------------
66# Complain and exit if this libtool version is less that VERSION.
67m4_defun([LT_PREREQ],
68[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
69 [m4_default([$3],
70 [m4_fatal([Libtool version $1 or higher is required],
71 63)])],
72 [$2])])
38dfb1e4
DB
73
74
3daf2614
DB
75# _LT_CHECK_BUILDDIR
76# ------------------
77# Complain if the absolute build directory name contains unusual characters
78m4_defun([_LT_CHECK_BUILDDIR],
79[case `pwd` in
80 *\ * | *\ *)
81 AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
82esac
83])
84
85
86# LT_INIT([OPTIONS])
87# ------------------
88AC_DEFUN([LT_INIT],
89[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
90AC_BEFORE([$0], [LT_LANG])dnl
91AC_BEFORE([$0], [LT_OUTPUT])dnl
92AC_BEFORE([$0], [LTDL_INIT])dnl
93m4_require([_LT_CHECK_BUILDDIR])dnl
94
95dnl Autoconf doesn't catch unexpanded LT_ macros by default:
96m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
97m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
98dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
99dnl unless we require an AC_DEFUNed macro:
100AC_REQUIRE([LTOPTIONS_VERSION])dnl
101AC_REQUIRE([LTSUGAR_VERSION])dnl
102AC_REQUIRE([LTVERSION_VERSION])dnl
103AC_REQUIRE([LTOBSOLETE_VERSION])dnl
104m4_require([_LT_PROG_LTMAIN])dnl
105
106dnl Parse OPTIONS
107_LT_SET_OPTIONS([$0], [$1])
38dfb1e4
DB
108
109# This can be used to rebuild libtool when needed
3daf2614 110LIBTOOL_DEPS="$ltmain"
38dfb1e4
DB
111
112# Always use our own libtool.
113LIBTOOL='$(SHELL) $(top_builddir)/libtool'
114AC_SUBST(LIBTOOL)dnl
115
3daf2614 116_LT_SETUP
38dfb1e4 117
3daf2614
DB
118# Only expand once:
119m4_define([LT_INIT])
120])# LT_INIT
38dfb1e4 121
3daf2614
DB
122# Old names:
123AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
124AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
125dnl aclocal-1.4 backwards compatibility:
126dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
127dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
128
129
130# _LT_CC_BASENAME(CC)
131# -------------------
132# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
133m4_defun([_LT_CC_BASENAME],
134[for cc_temp in $1""; do
135 case $cc_temp in
136 compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
137 distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
138 \-*) ;;
139 *) break;;
140 esac
141done
142cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"`
143])
144
145
146# _LT_FILEUTILS_DEFAULTS
147# ----------------------
148# It is okay to use these file commands and assume they have been set
149# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
150m4_defun([_LT_FILEUTILS_DEFAULTS],
151[: ${CP="cp -f"}
152: ${MV="mv -f"}
153: ${RM="rm -f"}
154])# _LT_FILEUTILS_DEFAULTS
155
156
157# _LT_SETUP
158# ---------
159m4_defun([_LT_SETUP],
160[AC_REQUIRE([AC_CANONICAL_HOST])dnl
38dfb1e4 161AC_REQUIRE([AC_CANONICAL_BUILD])dnl
3daf2614
DB
162_LT_DECL([], [host_alias], [0], [The host system])dnl
163_LT_DECL([], [host], [0])dnl
164_LT_DECL([], [host_os], [0])dnl
165dnl
166_LT_DECL([], [build_alias], [0], [The build system])dnl
167_LT_DECL([], [build], [0])dnl
168_LT_DECL([], [build_os], [0])dnl
169dnl
38dfb1e4 170AC_REQUIRE([AC_PROG_CC])dnl
3daf2614
DB
171AC_REQUIRE([LT_PATH_LD])dnl
172AC_REQUIRE([LT_PATH_NM])dnl
173dnl
38dfb1e4 174AC_REQUIRE([AC_PROG_LN_S])dnl
3daf2614
DB
175test -z "$LN_S" && LN_S="ln -s"
176_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
177dnl
178AC_REQUIRE([LT_CMD_MAX_LEN])dnl
179_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
180_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
38dfb1e4 181dnl
3daf2614
DB
182m4_require([_LT_FILEUTILS_DEFAULTS])dnl
183m4_require([_LT_CHECK_SHELL_FEATURES])dnl
184m4_require([_LT_CMD_RELOAD])dnl
185m4_require([_LT_CHECK_MAGIC_METHOD])dnl
186m4_require([_LT_CMD_OLD_ARCHIVE])dnl
187m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
188
189_LT_CONFIG_LIBTOOL_INIT([
190# See if we are running on zsh, and set the options which allow our
191# commands through without removal of \ escapes INIT.
192if test -n "\${ZSH_VERSION+set}" ; then
193 setopt NO_GLOB_SUBST
194fi
195])
196if test -n "${ZSH_VERSION+set}" ; then
197 setopt NO_GLOB_SUBST
198fi
199
200_LT_CHECK_OBJDIR
38dfb1e4 201
3daf2614
DB
202m4_require([_LT_TAG_COMPILER])dnl
203_LT_PROG_ECHO_BACKSLASH
38dfb1e4
DB
204
205case $host_os in
206aix3*)
207 # AIX sometimes has problems with the GCC collect2 program. For some
208 # reason, if we set the COLLECT_NAMES environment variable, the problems
209 # vanish in a puff of smoke.
210 if test "X${COLLECT_NAMES+set}" != Xset; then
211 COLLECT_NAMES=
212 export COLLECT_NAMES
213 fi
214 ;;
215esac
216
217# Sed substitution that helps us do robust quoting. It backslashifies
218# metacharacters that are still active within double-quoted strings.
3daf2614 219sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
38dfb1e4
DB
220
221# Same as above, but do not quote variable references.
3daf2614 222double_quote_subst='s/\([["`\\]]\)/\\\1/g'
38dfb1e4
DB
223
224# Sed substitution to delay expansion of an escaped shell variable in a
225# double_quote_subst'ed string.
226delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
227
3daf2614
DB
228# Sed substitution to delay expansion of an escaped single quote.
229delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
230
38dfb1e4
DB
231# Sed substitution to avoid accidental globbing in evaled expressions
232no_glob_subst='s/\*/\\\*/g'
233
38dfb1e4 234# Global variables:
3daf2614 235ofile=libtool
38dfb1e4
DB
236can_build_shared=yes
237
238# All known linkers require a `.a' archive for static linking (except MSVC,
239# which needs '.lib').
240libext=a
38dfb1e4 241
3daf2614 242with_gnu_ld="$lt_cv_prog_gnu_ld"
38dfb1e4
DB
243
244old_CC="$CC"
245old_CFLAGS="$CFLAGS"
246
247# Set sane defaults for various variables
38dfb1e4
DB
248test -z "$CC" && CC=cc
249test -z "$LTCC" && LTCC=$CC
250test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
38dfb1e4 251test -z "$LD" && LD=ld
38dfb1e4
DB
252test -z "$ac_objext" && ac_objext=o
253
38dfb1e4
DB
254_LT_CC_BASENAME([$compiler])
255
256# Only perform the check for file, if the check method requires it
3daf2614 257test -z "$MAGIC_CMD" && MAGIC_CMD=file
38dfb1e4
DB
258case $deplibs_check_method in
259file_magic*)
260 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
3daf2614 261 _LT_PATH_MAGIC
38dfb1e4
DB
262 fi
263 ;;
264esac
265
3daf2614
DB
266# Use C for the default configuration in the libtool script
267LT_SUPPORTED_TAG([CC])
268_LT_LANG_C_CONFIG
269_LT_LANG_DEFAULT_CONFIG
270_LT_CONFIG_COMMANDS
271])# _LT_SETUP
38dfb1e4 272
38dfb1e4 273
3daf2614
DB
274# _LT_PROG_LTMAIN
275# ---------------
276# Note that this code is called both from `configure', and `config.status'
277# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
278# `config.status' has no value for ac_aux_dir unless we are using Automake,
279# so we pass a copy along to make sure it has a sensible value anyway.
280m4_defun([_LT_PROG_LTMAIN],
281[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
282_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
283ltmain="$ac_aux_dir/ltmain.sh"
284])# _LT_PROG_LTMAIN
38dfb1e4 285
38dfb1e4 286
3daf2614
DB
287
288# So that we can recreate a full libtool script including additional
289# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
290# in macros and then make a single call at the end using the `libtool'
291# label.
292
293
294# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
295# ----------------------------------------
296# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
297m4_define([_LT_CONFIG_LIBTOOL_INIT],
298[m4_ifval([$1],
299 [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
300 [$1
301])])])
302
303# Initialize.
304m4_define([_LT_OUTPUT_LIBTOOL_INIT])
305
306
307# _LT_CONFIG_LIBTOOL([COMMANDS])
308# ------------------------------
309# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
310m4_define([_LT_CONFIG_LIBTOOL],
311[m4_ifval([$1],
312 [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
313 [$1
314])])])
315
316# Initialize.
317m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
318
319
320# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
321# -----------------------------------------------------
322m4_defun([_LT_CONFIG_SAVE_COMMANDS],
323[_LT_CONFIG_LIBTOOL([$1])
324_LT_CONFIG_LIBTOOL_INIT([$2])
325])
326
327
328# _LT_FORMAT_COMMENT([COMMENT])
329# -----------------------------
330# Add leading comment marks to the start of each line, and a trailing
331# full-stop to the whole comment if one is not present already.
332m4_define([_LT_FORMAT_COMMENT],
333[m4_ifval([$1], [
334m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
335 [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
336)])
337
338
339
340
341
342# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
343# -------------------------------------------------------------------
344# CONFIGNAME is the name given to the value in the libtool script.
345# VARNAME is the (base) name used in the configure script.
346# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
347# VARNAME. Any other value will be used directly.
348m4_define([_LT_DECL],
349[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
350 [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
351 [m4_ifval([$1], [$1], [$2])])
352 lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
353 m4_ifval([$4],
354 [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
355 lt_dict_add_subkey([lt_decl_dict], [$2],
356 [tagged?], [m4_ifval([$5], [yes], [no])])])
357])
358
359
360# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
361# --------------------------------------------------------
362m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
363
364
365# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
366# ------------------------------------------------
367m4_define([lt_decl_tag_varnames],
368[_lt_decl_filter([tagged?], [yes], $@)])
369
370
371# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
372# ---------------------------------------------------------
373m4_define([_lt_decl_filter],
374[m4_case([$#],
375 [0], [m4_fatal([$0: too few arguments: $#])],
376 [1], [m4_fatal([$0: too few arguments: $#: $1])],
377 [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
378 [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
379 [lt_dict_filter([lt_decl_dict], $@)])[]dnl
380])
381
382
383# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
384# --------------------------------------------------
385m4_define([lt_decl_quote_varnames],
386[_lt_decl_filter([value], [1], $@)])
387
388
389# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
390# ---------------------------------------------------
391m4_define([lt_decl_dquote_varnames],
392[_lt_decl_filter([value], [2], $@)])
393
394
395# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
396# ---------------------------------------------------
397m4_define([lt_decl_varnames_tagged],
398[m4_assert([$# <= 2])dnl
399_$0(m4_quote(m4_default([$1], [[, ]])),
400 m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
401 m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
402m4_define([_lt_decl_varnames_tagged],
403[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
404
405
406# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
407# ------------------------------------------------
408m4_define([lt_decl_all_varnames],
409[_$0(m4_quote(m4_default([$1], [[, ]])),
410 m4_if([$2], [],
411 m4_quote(lt_decl_varnames),
412 m4_quote(m4_shift($@))))[]dnl
413])
414m4_define([_lt_decl_all_varnames],
415[lt_join($@, lt_decl_varnames_tagged([$1],
416 lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
417])
418
419
420# _LT_CONFIG_STATUS_DECLARE([VARNAME])
421# ------------------------------------
422# Quote a variable value, and forward it to `config.status' so that its
423# declaration there will have the same value as in `configure'. VARNAME
424# must have a single quote delimited value for this to work.
425m4_define([_LT_CONFIG_STATUS_DECLARE],
426[$1='`$ECHO "X$][$1" | $Xsed -e "$delay_single_quote_subst"`'])
427
428
429# _LT_CONFIG_STATUS_DECLARATIONS
430# ------------------------------
431# We delimit libtool config variables with single quotes, so when
432# we write them to config.status, we have to be sure to quote all
433# embedded single quotes properly. In configure, this macro expands
434# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
435#
436# <var>='`$ECHO "X$<var>" | $Xsed -e "$delay_single_quote_subst"`'
437m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
438[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
439 [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
38dfb1e4
DB
440
441
3daf2614
DB
442# _LT_LIBTOOL_TAGS
443# ----------------
444# Output comment and list of tags supported by the script
445m4_defun([_LT_LIBTOOL_TAGS],
446[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
447available_tags="_LT_TAGS"dnl
448])
449
450
451# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
452# -----------------------------------
453# Extract the dictionary values for VARNAME (optionally with TAG) and
454# expand to a commented shell variable setting:
455#
456# # Some comment about what VAR is for.
457# visible_name=$lt_internal_name
458m4_define([_LT_LIBTOOL_DECLARE],
459[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
460 [description])))[]dnl
461m4_pushdef([_libtool_name],
462 m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
463m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
464 [0], [_libtool_name=[$]$1],
465 [1], [_libtool_name=$lt_[]$1],
466 [2], [_libtool_name=$lt_[]$1],
467 [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
468m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
469])
470
471
472# _LT_LIBTOOL_CONFIG_VARS
473# -----------------------
474# Produce commented declarations of non-tagged libtool config variables
475# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
476# script. Tagged libtool config variables (even for the LIBTOOL CONFIG
477# section) are produced by _LT_LIBTOOL_TAG_VARS.
478m4_defun([_LT_LIBTOOL_CONFIG_VARS],
479[m4_foreach([_lt_var],
480 m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
481 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
482
483
484# _LT_LIBTOOL_TAG_VARS(TAG)
485# -------------------------
486m4_define([_LT_LIBTOOL_TAG_VARS],
487[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
488 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
489
490
491# _LT_TAGVAR(VARNAME, [TAGNAME])
492# ------------------------------
493m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
494
495
496# _LT_CONFIG_COMMANDS
38dfb1e4 497# -------------------
3daf2614
DB
498# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
499# variables for single and double quote escaping we saved from calls
500# to _LT_DECL, we can put quote escaped variables declarations
501# into `config.status', and then the shell code to quote escape them in
502# for loops in `config.status'. Finally, any additional code accumulated
503# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
504m4_defun([_LT_CONFIG_COMMANDS],
505[AC_PROVIDE_IFELSE([LT_OUTPUT],
506 dnl If the libtool generation code has been placed in $CONFIG_LT,
507 dnl instead of duplicating it all over again into config.status,
508 dnl then we will have config.status run $CONFIG_LT later, so it
509 dnl needs to know what name is stored there:
510 [AC_CONFIG_COMMANDS([libtool],
511 [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
512 dnl If the libtool generation code is destined for config.status,
513 dnl expand the accumulated commands and init code now:
514 [AC_CONFIG_COMMANDS([libtool],
515 [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
516])#_LT_CONFIG_COMMANDS
517
518
519# Initialize.
520m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
521[
522
523# The HP-UX ksh and POSIX shell print the target directory to stdout
524# if CDPATH is set.
525(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
526
527sed_quote_subst='$sed_quote_subst'
528double_quote_subst='$double_quote_subst'
529delay_variable_subst='$delay_variable_subst'
530_LT_CONFIG_STATUS_DECLARATIONS
531LTCC='$LTCC'
532LTCFLAGS='$LTCFLAGS'
533compiler='$compiler_DEFAULT'
534
535# Quote evaled strings.
536for var in lt_decl_all_varnames([[ \
537]], lt_decl_quote_varnames); do
538 case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
539 *[[\\\\\\\`\\"\\\$]]*)
540 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
541 ;;
542 *)
543 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
544 ;;
545 esac
546done
547
548# Double-quote double-evaled strings.
549for var in lt_decl_all_varnames([[ \
550]], lt_decl_dquote_varnames); do
551 case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
552 *[[\\\\\\\`\\"\\\$]]*)
553 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
554 ;;
555 *)
556 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
557 ;;
558 esac
559done
560
561# Fix-up fallback echo if it was mangled by the above quoting rules.
562case \$lt_ECHO in
563*'\\\[$]0 --fallback-echo"')dnl "
564 lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\[$]0 --fallback-echo"\[$]/\[$]0 --fallback-echo"/'\`
565 ;;
566esac
567
568_LT_OUTPUT_LIBTOOL_INIT
569])
570
571
572# LT_OUTPUT
573# ---------
574# This macro allows early generation of the libtool script (before
575# AC_OUTPUT is called), incase it is used in configure for compilation
576# tests.
577AC_DEFUN([LT_OUTPUT],
578[: ${CONFIG_LT=./config.lt}
579AC_MSG_NOTICE([creating $CONFIG_LT])
580cat >"$CONFIG_LT" <<_LTEOF
581#! $SHELL
582# Generated by $as_me.
583# Run this file to recreate a libtool stub with the current configuration.
584
585lt_cl_silent=false
586SHELL=\${CONFIG_SHELL-$SHELL}
587_LTEOF
588
589cat >>"$CONFIG_LT" <<\_LTEOF
590AS_SHELL_SANITIZE
591_AS_PREPARE
592
593exec AS_MESSAGE_FD>&1
594exec AS_MESSAGE_LOG_FD>>config.log
595{
596 echo
597 AS_BOX([Running $as_me.])
598} >&AS_MESSAGE_LOG_FD
599
600lt_cl_help="\
601\`$as_me' creates a local libtool stub from the current configuration,
602for use in further configure time tests before the real libtool is
603generated.
604
605Usage: $[0] [[OPTIONS]]
606
607 -h, --help print this help, then exit
608 -V, --version print version number, then exit
609 -q, --quiet do not print progress messages
610 -d, --debug don't remove temporary files
611
612Report bugs to <bug-libtool@gnu.org>."
613
614lt_cl_version="\
615m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
616m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
617configured by $[0], generated by m4_PACKAGE_STRING.
618
619Copyright (C) 2008 Free Software Foundation, Inc.
620This config.lt script is free software; the Free Software Foundation
621gives unlimited permision to copy, distribute and modify it."
622
623while test $[#] != 0
624do
625 case $[1] in
626 --version | --v* | -V )
627 echo "$lt_cl_version"; exit 0 ;;
628 --help | --h* | -h )
629 echo "$lt_cl_help"; exit 0 ;;
630 --debug | --d* | -d )
631 debug=: ;;
632 --quiet | --q* | --silent | --s* | -q )
633 lt_cl_silent=: ;;
634
635 -*) AC_MSG_ERROR([unrecognized option: $[1]
636Try \`$[0] --help' for more information.]) ;;
637
638 *) AC_MSG_ERROR([unrecognized argument: $[1]
639Try \`$[0] --help' for more information.]) ;;
640 esac
641 shift
642done
643
644if $lt_cl_silent; then
645 exec AS_MESSAGE_FD>/dev/null
646fi
647_LTEOF
648
649cat >>"$CONFIG_LT" <<_LTEOF
650_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
651_LTEOF
652
653cat >>"$CONFIG_LT" <<\_LTEOF
654AC_MSG_NOTICE([creating $ofile])
655_LT_OUTPUT_LIBTOOL_COMMANDS
656AS_EXIT(0)
657_LTEOF
658chmod +x "$CONFIG_LT"
659
660# configure is writing to config.log, but config.lt does its own redirection,
661# appending to config.log, which fails on DOS, as config.log is still kept
662# open by configure. Here we exec the FD to /dev/null, effectively closing
663# config.log, so it can be properly (re)opened and appended to by config.lt.
664if test "$no_create" != yes; then
665 lt_cl_success=:
666 test "$silent" = yes &&
667 lt_config_lt_args="$lt_config_lt_args --quiet"
668 exec AS_MESSAGE_LOG_FD>/dev/null
669 $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
670 exec AS_MESSAGE_LOG_FD>>config.log
671 $lt_cl_success || AS_EXIT(1)
672fi
673])# LT_OUTPUT
674
675
676# _LT_CONFIG(TAG)
677# ---------------
678# If TAG is the built-in tag, create an initial libtool script with a
679# default configuration from the untagged config vars. Otherwise add code
680# to config.status for appending the configuration named by TAG from the
681# matching tagged config vars.
682m4_defun([_LT_CONFIG],
683[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
684_LT_CONFIG_SAVE_COMMANDS([
685 m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
686 m4_if(_LT_TAG, [C], [
687 # See if we are running on zsh, and set the options which allow our
688 # commands through without removal of \ escapes.
689 if test -n "${ZSH_VERSION+set}" ; then
690 setopt NO_GLOB_SUBST
691 fi
692
693 cfgfile="${ofile}T"
694 trap "$RM \"$cfgfile\"; exit 1" 1 2 15
695 $RM "$cfgfile"
696
697 cat <<_LT_EOF >> "$cfgfile"
698#! $SHELL
699
700# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
701# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
702# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
703# NOTE: Changes made to this file will be lost: look at ltmain.sh.
704#
705_LT_COPYING
706_LT_LIBTOOL_TAGS
707
708# ### BEGIN LIBTOOL CONFIG
709_LT_LIBTOOL_CONFIG_VARS
710_LT_LIBTOOL_TAG_VARS
711# ### END LIBTOOL CONFIG
712
713_LT_EOF
714
715 case $host_os in
716 aix3*)
717 cat <<\_LT_EOF >> "$cfgfile"
718# AIX sometimes has problems with the GCC collect2 program. For some
719# reason, if we set the COLLECT_NAMES environment variable, the problems
720# vanish in a puff of smoke.
721if test "X${COLLECT_NAMES+set}" != Xset; then
722 COLLECT_NAMES=
723 export COLLECT_NAMES
724fi
725_LT_EOF
726 ;;
727 esac
728
729 _LT_PROG_LTMAIN
730
731 # We use sed instead of cat because bash on DJGPP gets confused if
732 # if finds mixed CR/LF and LF-only lines. Since sed operates in
733 # text mode, it properly converts lines to CR/LF. This bash problem
734 # is reportedly fixed, but why not run on old versions too?
735 sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \
736 || (rm -f "$cfgfile"; exit 1)
737
738 _LT_PROG_XSI_SHELLFNS
739
740 sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \
741 || (rm -f "$cfgfile"; exit 1)
742
743 mv -f "$cfgfile" "$ofile" ||
744 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
745 chmod +x "$ofile"
746],
747[cat <<_LT_EOF >> "$ofile"
748
749dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
750dnl in a comment (ie after a #).
751# ### BEGIN LIBTOOL TAG CONFIG: $1
752_LT_LIBTOOL_TAG_VARS(_LT_TAG)
753# ### END LIBTOOL TAG CONFIG: $1
754_LT_EOF
755])dnl /m4_if
756],
757[m4_if([$1], [], [
758 PACKAGE='$PACKAGE'
759 VERSION='$VERSION'
760 TIMESTAMP='$TIMESTAMP'
761 RM='$RM'
762 ofile='$ofile'], [])
763])dnl /_LT_CONFIG_SAVE_COMMANDS
764])# _LT_CONFIG
765
766
767# LT_SUPPORTED_TAG(TAG)
768# ---------------------
769# Trace this macro to discover what tags are supported by the libtool
770# --tag option, using:
771# autoconf --trace 'LT_SUPPORTED_TAG:$1'
772AC_DEFUN([LT_SUPPORTED_TAG], [])
773
774
775# C support is built-in for now
776m4_define([_LT_LANG_C_enabled], [])
777m4_define([_LT_TAGS], [])
778
779
780# LT_LANG(LANG)
781# -------------
782# Enable libtool support for the given language if not already enabled.
783AC_DEFUN([LT_LANG],
784[AC_BEFORE([$0], [LT_OUTPUT])dnl
785m4_case([$1],
786 [C], [_LT_LANG(C)],
787 [C++], [_LT_LANG(CXX)],
788 [Java], [_LT_LANG(GCJ)],
789 [Fortran 77], [_LT_LANG(F77)],
790 [Fortran], [_LT_LANG(FC)],
791 [Windows Resource], [_LT_LANG(RC)],
792 [m4_ifdef([_LT_LANG_]$1[_CONFIG],
793 [_LT_LANG($1)],
794 [m4_fatal([$0: unsupported language: "$1"])])])dnl
795])# LT_LANG
796
797
798# _LT_LANG(LANGNAME)
799# ------------------
800m4_defun([_LT_LANG],
801[m4_ifdef([_LT_LANG_]$1[_enabled], [],
802 [LT_SUPPORTED_TAG([$1])dnl
803 m4_append([_LT_TAGS], [$1 ])dnl
804 m4_define([_LT_LANG_]$1[_enabled], [])dnl
805 _LT_LANG_$1_CONFIG($1)])dnl
806])# _LT_LANG
807
808
809# _LT_LANG_DEFAULT_CONFIG
810# -----------------------
811m4_defun([_LT_LANG_DEFAULT_CONFIG],
812[AC_PROVIDE_IFELSE([AC_PROG_CXX],
813 [LT_LANG(CXX)],
814 [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
815
816AC_PROVIDE_IFELSE([AC_PROG_F77],
817 [LT_LANG(F77)],
818 [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
819
820AC_PROVIDE_IFELSE([AC_PROG_FC],
821 [LT_LANG(FC)],
822 [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
823
824dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
825dnl pulling things in needlessly.
826AC_PROVIDE_IFELSE([AC_PROG_GCJ],
827 [LT_LANG(GCJ)],
828 [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
829 [LT_LANG(GCJ)],
830 [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
831 [LT_LANG(GCJ)],
832 [m4_ifdef([AC_PROG_GCJ],
833 [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
834 m4_ifdef([A][M_PROG_GCJ],
835 [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
836 m4_ifdef([LT_PROG_GCJ],
837 [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
838
839AC_PROVIDE_IFELSE([LT_PROG_RC],
840 [LT_LANG(RC)],
841 [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
842])# _LT_LANG_DEFAULT_CONFIG
843
844# Obsolete macros:
845AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
846AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
847AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
848AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
849dnl aclocal-1.4 backwards compatibility:
850dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
851dnl AC_DEFUN([AC_LIBTOOL_F77], [])
852dnl AC_DEFUN([AC_LIBTOOL_FC], [])
853dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
854
855
856# _LT_TAG_COMPILER
857# ----------------
858m4_defun([_LT_TAG_COMPILER],
38dfb1e4
DB
859[AC_REQUIRE([AC_PROG_CC])dnl
860
3daf2614
DB
861_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
862_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
863_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
864_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
865
38dfb1e4
DB
866# If no C compiler was specified, use CC.
867LTCC=${LTCC-"$CC"}
868
869# If no C compiler flags were specified, use CFLAGS.
870LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
871
872# Allow CC to be a program name with arguments.
873compiler=$CC
3daf2614 874])# _LT_TAG_COMPILER
38dfb1e4
DB
875
876
877# _LT_COMPILER_BOILERPLATE
878# ------------------------
879# Check for compiler boilerplate output or warnings with
880# the simple compiler test code.
3daf2614
DB
881m4_defun([_LT_COMPILER_BOILERPLATE],
882[m4_require([_LT_DECL_SED])dnl
38dfb1e4
DB
883ac_outfile=conftest.$ac_objext
884echo "$lt_simple_compile_test_code" >conftest.$ac_ext
885eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
886_lt_compiler_boilerplate=`cat conftest.err`
3daf2614 887$RM conftest*
38dfb1e4
DB
888])# _LT_COMPILER_BOILERPLATE
889
890
891# _LT_LINKER_BOILERPLATE
892# ----------------------
893# Check for linker boilerplate output or warnings with
894# the simple link test code.
3daf2614
DB
895m4_defun([_LT_LINKER_BOILERPLATE],
896[m4_require([_LT_DECL_SED])dnl
38dfb1e4
DB
897ac_outfile=conftest.$ac_objext
898echo "$lt_simple_link_test_code" >conftest.$ac_ext
899eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
900_lt_linker_boilerplate=`cat conftest.err`
3daf2614 901$RM -r conftest*
38dfb1e4
DB
902])# _LT_LINKER_BOILERPLATE
903
904# _LT_REQUIRED_DARWIN_CHECKS
3daf2614
DB
905# -------------------------
906m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
38dfb1e4
DB
907 case $host_os in
908 rhapsody* | darwin*)
909 AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
910 AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
3daf2614
DB
911 AC_CHECK_TOOL([LIPO], [lipo], [:])
912 AC_CHECK_TOOL([OTOOL], [otool], [:])
913 AC_CHECK_TOOL([OTOOL64], [otool64], [:])
914 _LT_DECL([], [DSYMUTIL], [1],
915 [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
916 _LT_DECL([], [NMEDIT], [1],
917 [Tool to change global to local symbols on Mac OS X])
918 _LT_DECL([], [LIPO], [1],
919 [Tool to manipulate fat objects and archives on Mac OS X])
920 _LT_DECL([], [OTOOL], [1],
921 [ldd/readelf like tool for Mach-O binaries on Mac OS X])
922 _LT_DECL([], [OTOOL64], [1],
923 [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
38dfb1e4
DB
924
925 AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
926 [lt_cv_apple_cc_single_mod=no
927 if test -z "${LT_MULTI_MODULE}"; then
3daf2614
DB
928 # By default we will add the -single_module flag. You can override
929 # by either setting the environment variable LT_MULTI_MODULE
930 # non-empty at configure time, or by adding -multi_module to the
931 # link flags.
932 rm -rf libconftest.dylib*
933 echo "int foo(void){return 1;}" > conftest.c
934 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
935-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
936 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
937 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
938 _lt_result=$?
939 if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then
940 lt_cv_apple_cc_single_mod=yes
941 else
942 cat conftest.err >&AS_MESSAGE_LOG_FD
943 fi
944 rm -rf libconftest.dylib*
945 rm -f conftest.*
38dfb1e4
DB
946 fi])
947 AC_CACHE_CHECK([for -exported_symbols_list linker flag],
948 [lt_cv_ld_exported_symbols_list],
949 [lt_cv_ld_exported_symbols_list=no
950 save_LDFLAGS=$LDFLAGS
951 echo "_main" > conftest.sym
952 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
953 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
3daf2614
DB
954 [lt_cv_ld_exported_symbols_list=yes],
955 [lt_cv_ld_exported_symbols_list=no])
956 LDFLAGS="$save_LDFLAGS"
38dfb1e4
DB
957 ])
958 case $host_os in
3daf2614 959 rhapsody* | darwin1.[[012]])
38dfb1e4
DB
960 _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
961 darwin1.*)
3daf2614
DB
962 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
963 darwin*) # darwin 5.x on
38dfb1e4
DB
964 # if running on 10.5 or later, the deployment target defaults
965 # to the OS version, if on x86, and 10.4, the deployment
966 # target defaults to 10.4. Don't you love it?
967 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
3daf2614
DB
968 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
969 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
970 10.[[012]]*)
971 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
972 10.*)
973 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
38dfb1e4
DB
974 esac
975 ;;
976 esac
977 if test "$lt_cv_apple_cc_single_mod" = "yes"; then
978 _lt_dar_single_mod='$single_module'
979 fi
980 if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
981 _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
982 else
3daf2614 983 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
38dfb1e4
DB
984 fi
985 if test "$DSYMUTIL" != ":"; then
3daf2614 986 _lt_dsymutil='~$DSYMUTIL $lib || :'
38dfb1e4
DB
987 else
988 _lt_dsymutil=
989 fi
990 ;;
991 esac
992])
993
3daf2614
DB
994
995# _LT_DARWIN_LINKER_FEATURES
996# --------------------------
997# Checks for linker and compiler features on darwin
998m4_defun([_LT_DARWIN_LINKER_FEATURES],
999[
1000 m4_require([_LT_REQUIRED_DARWIN_CHECKS])
1001 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
1002 _LT_TAGVAR(hardcode_direct, $1)=no
1003 _LT_TAGVAR(hardcode_automatic, $1)=yes
1004 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
1005 _LT_TAGVAR(whole_archive_flag_spec, $1)=''
1006 _LT_TAGVAR(link_all_deplibs, $1)=yes
1007 _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
1008 case $cc_basename in
1009 ifort*) _lt_dar_can_shared=yes ;;
1010 *) _lt_dar_can_shared=$GCC ;;
1011 esac
1012 if test "$_lt_dar_can_shared" = "yes"; then
1013 output_verbose_link_cmd=echo
1014 _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}"
1015 _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
1016 _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}"
1017 _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}"
1018 m4_if([$1], [CXX],
1019[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then
1020 _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}"
1021 _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}"
1022 fi
1023],[])
1024 else
1025 _LT_TAGVAR(ld_shlibs, $1)=no
1026 fi
1027])
1028
1029# _LT_SYS_MODULE_PATH_AIX
1030# -----------------------
38dfb1e4
DB
1031# Links a minimal program and checks the executable
1032# for the system default hardcoded library path. In most cases,
1033# this is /usr/lib:/lib, but when the MPI compilers are used
1034# the location of the communication and MPI libs are included too.
1035# If we don't find anything, use the default library path according
1036# to the aix ld manual.
3daf2614
DB
1037m4_defun([_LT_SYS_MODULE_PATH_AIX],
1038[m4_require([_LT_DECL_SED])dnl
38dfb1e4
DB
1039AC_LINK_IFELSE(AC_LANG_PROGRAM,[
1040lt_aix_libpath_sed='
1041 /Import File Strings/,/^$/ {
1042 /^0/ {
1043 s/^0 *\(.*\)$/\1/
1044 p
1045 }
1046 }'
1047aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1048# Check for a 64-bit object if we didn't find anything.
1049if test -z "$aix_libpath"; then
1050 aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1051fi],[])
1052if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
3daf2614 1053])# _LT_SYS_MODULE_PATH_AIX
38dfb1e4
DB
1054
1055
3daf2614
DB
1056# _LT_SHELL_INIT(ARG)
1057# -------------------
1058m4_define([_LT_SHELL_INIT],
38dfb1e4
DB
1059[ifdef([AC_DIVERSION_NOTICE],
1060 [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
1061 [AC_DIVERT_PUSH(NOTICE)])
1062$1
1063AC_DIVERT_POP
3daf2614 1064])# _LT_SHELL_INIT
38dfb1e4
DB
1065
1066
3daf2614
DB
1067# _LT_PROG_ECHO_BACKSLASH
1068# -----------------------
38dfb1e4
DB
1069# Add some code to the start of the generated configure script which
1070# will find an echo command which doesn't interpret backslashes.
3daf2614
DB
1071m4_defun([_LT_PROG_ECHO_BACKSLASH],
1072[_LT_SHELL_INIT([
38dfb1e4
DB
1073# Check that we are running under the correct shell.
1074SHELL=${CONFIG_SHELL-/bin/sh}
1075
3daf2614 1076case X$lt_ECHO in
38dfb1e4
DB
1077X*--fallback-echo)
1078 # Remove one level of quotation (which was required for Make).
3daf2614 1079 ECHO=`echo "$lt_ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
38dfb1e4
DB
1080 ;;
1081esac
1082
3daf2614 1083ECHO=${lt_ECHO-echo}
38dfb1e4
DB
1084if test "X[$]1" = X--no-reexec; then
1085 # Discard the --no-reexec flag, and continue.
1086 shift
1087elif test "X[$]1" = X--fallback-echo; then
1088 # Avoid inline document here, it may be left over
1089 :
3daf2614
DB
1090elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then
1091 # Yippee, $ECHO works!
38dfb1e4
DB
1092 :
1093else
1094 # Restart under the correct shell.
1095 exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
1096fi
1097
1098if test "X[$]1" = X--fallback-echo; then
1099 # used as fallback echo
1100 shift
3daf2614 1101 cat <<_LT_EOF
38dfb1e4 1102[$]*
3daf2614 1103_LT_EOF
38dfb1e4
DB
1104 exit 0
1105fi
1106
1107# The HP-UX ksh and POSIX shell print the target directory to stdout
1108# if CDPATH is set.
1109(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
1110
3daf2614
DB
1111if test -z "$lt_ECHO"; then
1112 if test "X${echo_test_string+set}" != Xset; then
1113 # find a string as large as possible, as long as the shell can cope with it
1114 for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
1115 # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
1116 if { echo_test_string=`eval $cmd`; } 2>/dev/null &&
1117 { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null
1118 then
1119 break
1120 fi
1121 done
1122 fi
38dfb1e4 1123
3daf2614
DB
1124 if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
1125 echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
1126 test "X$echo_testing_string" = "X$echo_test_string"; then
1127 :
1128 else
1129 # The Solaris, AIX, and Digital Unix default echo programs unquote
1130 # backslashes. This makes it impossible to quote backslashes using
1131 # echo "$something" | sed 's/\\/\\\\/g'
1132 #
1133 # So, first we look for a working echo in the user's PATH.
38dfb1e4 1134
3daf2614
DB
1135 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
1136 for dir in $PATH /usr/ucb; do
1137 IFS="$lt_save_ifs"
1138 if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
1139 test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
1140 echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
1141 test "X$echo_testing_string" = "X$echo_test_string"; then
1142 ECHO="$dir/echo"
1143 break
1144 fi
1145 done
38dfb1e4 1146 IFS="$lt_save_ifs"
38dfb1e4 1147
3daf2614
DB
1148 if test "X$ECHO" = Xecho; then
1149 # We didn't find a better echo, so look for alternatives.
1150 if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' &&
1151 echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` &&
1152 test "X$echo_testing_string" = "X$echo_test_string"; then
1153 # This shell has a builtin print -r that does the trick.
1154 ECHO='print -r'
1155 elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } &&
1156 test "X$CONFIG_SHELL" != X/bin/ksh; then
1157 # If we have ksh, try running configure again with it.
1158 ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
1159 export ORIGINAL_CONFIG_SHELL
1160 CONFIG_SHELL=/bin/ksh
1161 export CONFIG_SHELL
1162 exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
38dfb1e4 1163 else
3daf2614
DB
1164 # Try using printf.
1165 ECHO='printf %s\n'
1166 if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' &&
1167 echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` &&
1168 test "X$echo_testing_string" = "X$echo_test_string"; then
1169 # Cool, printf works
1170 :
1171 elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
1172 test "X$echo_testing_string" = 'X\t' &&
1173 echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
1174 test "X$echo_testing_string" = "X$echo_test_string"; then
1175 CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
1176 export CONFIG_SHELL
1177 SHELL="$CONFIG_SHELL"
1178 export SHELL
1179 ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
1180 elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
1181 test "X$echo_testing_string" = 'X\t' &&
1182 echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
1183 test "X$echo_testing_string" = "X$echo_test_string"; then
1184 ECHO="$CONFIG_SHELL [$]0 --fallback-echo"
1185 else
1186 # maybe with a smaller string...
1187 prev=:
38dfb1e4 1188
3daf2614
DB
1189 for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
1190 if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null
1191 then
1192 break
1193 fi
1194 prev="$cmd"
1195 done
38dfb1e4 1196
3daf2614
DB
1197 if test "$prev" != 'sed 50q "[$]0"'; then
1198 echo_test_string=`eval $prev`
1199 export echo_test_string
1200 exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
1201 else
1202 # Oops. We lost completely, so just stick with echo.
1203 ECHO=echo
1204 fi
1205 fi
38dfb1e4
DB
1206 fi
1207 fi
1208 fi
1209fi
38dfb1e4
DB
1210
1211# Copy echo and quote the copy suitably for passing to libtool from
1212# the Makefile, instead of quoting the original, which is used later.
3daf2614
DB
1213lt_ECHO=$ECHO
1214if test "X$lt_ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
1215 lt_ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
38dfb1e4
DB
1216fi
1217
3daf2614
DB
1218AC_SUBST(lt_ECHO)
1219])
1220_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
1221_LT_DECL([], [ECHO], [1],
1222 [An echo program that does not interpret backslashes])
1223])# _LT_PROG_ECHO_BACKSLASH
38dfb1e4
DB
1224
1225
3daf2614
DB
1226# _LT_ENABLE_LOCK
1227# ---------------
1228m4_defun([_LT_ENABLE_LOCK],
38dfb1e4 1229[AC_ARG_ENABLE([libtool-lock],
3daf2614
DB
1230 [AS_HELP_STRING([--disable-libtool-lock],
1231 [avoid locking (might break parallel builds)])])
38dfb1e4
DB
1232test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
1233
1234# Some flags need to be propagated to the compiler or linker for good
1235# libtool support.
1236case $host in
1237ia64-*-hpux*)
1238 # Find out which ABI we are using.
1239 echo 'int i;' > conftest.$ac_ext
1240 if AC_TRY_EVAL(ac_compile); then
1241 case `/usr/bin/file conftest.$ac_objext` in
3daf2614
DB
1242 *ELF-32*)
1243 HPUX_IA64_MODE="32"
1244 ;;
1245 *ELF-64*)
1246 HPUX_IA64_MODE="64"
1247 ;;
38dfb1e4
DB
1248 esac
1249 fi
1250 rm -rf conftest*
1251 ;;
1252*-*-irix6*)
1253 # Find out which ABI we are using.
1254 echo '[#]line __oline__ "configure"' > conftest.$ac_ext
1255 if AC_TRY_EVAL(ac_compile); then
3daf2614
DB
1256 if test "$lt_cv_prog_gnu_ld" = yes; then
1257 case `/usr/bin/file conftest.$ac_objext` in
1258 *32-bit*)
1259 LD="${LD-ld} -melf32bsmip"
1260 ;;
1261 *N32*)
1262 LD="${LD-ld} -melf32bmipn32"
1263 ;;
1264 *64-bit*)
1265 LD="${LD-ld} -melf64bmip"
1266 ;;
1267 esac
1268 else
1269 case `/usr/bin/file conftest.$ac_objext` in
1270 *32-bit*)
1271 LD="${LD-ld} -32"
1272 ;;
1273 *N32*)
1274 LD="${LD-ld} -n32"
1275 ;;
1276 *64-bit*)
1277 LD="${LD-ld} -64"
1278 ;;
1279 esac
1280 fi
38dfb1e4
DB
1281 fi
1282 rm -rf conftest*
1283 ;;
1284
1285x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
3daf2614 1286s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
38dfb1e4
DB
1287 # Find out which ABI we are using.
1288 echo 'int i;' > conftest.$ac_ext
1289 if AC_TRY_EVAL(ac_compile); then
1290 case `/usr/bin/file conftest.o` in
3daf2614
DB
1291 *32-bit*)
1292 case $host in
1293 x86_64-*kfreebsd*-gnu)
1294 LD="${LD-ld} -m elf_i386_fbsd"
1295 ;;
1296 x86_64-*linux*)
1297 LD="${LD-ld} -m elf_i386"
1298 ;;
1299 ppc64-*linux*|powerpc64-*linux*)
1300 LD="${LD-ld} -m elf32ppclinux"
1301 ;;
1302 s390x-*linux*)
1303 LD="${LD-ld} -m elf_s390"
1304 ;;
1305 sparc64-*linux*)
1306 LD="${LD-ld} -m elf32_sparc"
1307 ;;
1308 esac
1309 ;;
1310 *64-bit*)
1311 case $host in
1312 x86_64-*kfreebsd*-gnu)
1313 LD="${LD-ld} -m elf_x86_64_fbsd"
1314 ;;
1315 x86_64-*linux*)
1316 LD="${LD-ld} -m elf_x86_64"
1317 ;;
1318 ppc*-*linux*|powerpc*-*linux*)
1319 LD="${LD-ld} -m elf64ppc"
1320 ;;
1321 s390*-*linux*|s390*-*tpf*)
1322 LD="${LD-ld} -m elf64_s390"
1323 ;;
1324 sparc*-*linux*)
1325 LD="${LD-ld} -m elf64_sparc"
1326 ;;
1327 esac
1328 ;;
38dfb1e4
DB
1329 esac
1330 fi
1331 rm -rf conftest*
1332 ;;
1333
1334*-*-sco3.2v5*)
1335 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
1336 SAVE_CFLAGS="$CFLAGS"
1337 CFLAGS="$CFLAGS -belf"
1338 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1339 [AC_LANG_PUSH(C)
3daf2614 1340 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
38dfb1e4
DB
1341 AC_LANG_POP])
1342 if test x"$lt_cv_cc_needs_belf" != x"yes"; then
1343 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
1344 CFLAGS="$SAVE_CFLAGS"
1345 fi
1346 ;;
1347sparc*-*solaris*)
1348 # Find out which ABI we are using.
1349 echo 'int i;' > conftest.$ac_ext
1350 if AC_TRY_EVAL(ac_compile); then
1351 case `/usr/bin/file conftest.o` in
1352 *64-bit*)
1353 case $lt_cv_prog_gnu_ld in
1354 yes*) LD="${LD-ld} -m elf64_sparc" ;;
1355 *)
3daf2614 1356 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
38dfb1e4
DB
1357 LD="${LD-ld} -64"
1358 fi
1359 ;;
1360 esac
1361 ;;
1362 esac
1363 fi
1364 rm -rf conftest*
1365 ;;
38dfb1e4
DB
1366esac
1367
1368need_locks="$enable_libtool_lock"
3daf2614
DB
1369])# _LT_ENABLE_LOCK
1370
1371
1372# _LT_CMD_OLD_ARCHIVE
1373# -------------------
1374m4_defun([_LT_CMD_OLD_ARCHIVE],
1375[AC_CHECK_TOOL(AR, ar, false)
1376test -z "$AR" && AR=ar
1377test -z "$AR_FLAGS" && AR_FLAGS=cru
1378_LT_DECL([], [AR], [1], [The archiver])
1379_LT_DECL([], [AR_FLAGS], [1])
1380
1381AC_CHECK_TOOL(STRIP, strip, :)
1382test -z "$STRIP" && STRIP=:
1383_LT_DECL([], [STRIP], [1], [A symbol stripping program])
1384
1385AC_CHECK_TOOL(RANLIB, ranlib, :)
1386test -z "$RANLIB" && RANLIB=:
1387_LT_DECL([], [RANLIB], [1],
1388 [Commands used to install an old-style archive])
1389
1390# Determine commands to create old-style static archives.
1391old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
1392old_postinstall_cmds='chmod 644 $oldlib'
1393old_postuninstall_cmds=
38dfb1e4 1394
3daf2614
DB
1395if test -n "$RANLIB"; then
1396 case $host_os in
1397 openbsd*)
1398 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib"
1399 ;;
1400 *)
1401 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib"
1402 ;;
1403 esac
1404 old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
1405fi
1406_LT_DECL([], [old_postinstall_cmds], [2])
1407_LT_DECL([], [old_postuninstall_cmds], [2])
1408_LT_TAGDECL([], [old_archive_cmds], [2],
1409 [Commands used to build an old-style archive])
1410])# _LT_CMD_OLD_ARCHIVE
38dfb1e4
DB
1411
1412
3daf2614 1413# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
38dfb1e4
DB
1414# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1415# ----------------------------------------------------------------
1416# Check whether the given compiler option works
3daf2614
DB
1417AC_DEFUN([_LT_COMPILER_OPTION],
1418[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1419m4_require([_LT_DECL_SED])dnl
38dfb1e4
DB
1420AC_CACHE_CHECK([$1], [$2],
1421 [$2=no
3daf2614 1422 m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
38dfb1e4
DB
1423 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1424 lt_compiler_flag="$3"
1425 # Insert the option either (1) after the last *FLAGS variable, or
1426 # (2) before a word containing "conftest.", or (3) at the end.
1427 # Note that $ac_compile itself does not contain backslashes and begins
1428 # with a dollar sign (not a hyphen), so the echo should work correctly.
1429 # The option is referenced via a variable to avoid confusing sed.
1430 lt_compile=`echo "$ac_compile" | $SED \
1431 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1432 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1433 -e 's:$: $lt_compiler_flag:'`
1434 (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1435 (eval "$lt_compile" 2>conftest.err)
1436 ac_status=$?
1437 cat conftest.err >&AS_MESSAGE_LOG_FD
1438 echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1439 if (exit $ac_status) && test -s "$ac_outfile"; then
1440 # The compiler can only warn and ignore the option if not recognized
1441 # So say no if there are warnings other than the usual output.
3daf2614 1442 $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp
38dfb1e4
DB
1443 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1444 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
1445 $2=yes
1446 fi
1447 fi
3daf2614 1448 $RM conftest*
38dfb1e4
DB
1449])
1450
1451if test x"[$]$2" = xyes; then
3daf2614 1452 m4_if([$5], , :, [$5])
38dfb1e4 1453else
3daf2614 1454 m4_if([$6], , :, [$6])
38dfb1e4 1455fi
3daf2614 1456])# _LT_COMPILER_OPTION
38dfb1e4 1457
3daf2614
DB
1458# Old name:
1459AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
1460dnl aclocal-1.4 backwards compatibility:
1461dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
38dfb1e4 1462
3daf2614
DB
1463
1464# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1465# [ACTION-SUCCESS], [ACTION-FAILURE])
1466# ----------------------------------------------------
1467# Check whether the given linker option works
1468AC_DEFUN([_LT_LINKER_OPTION],
1469[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1470m4_require([_LT_DECL_SED])dnl
38dfb1e4
DB
1471AC_CACHE_CHECK([$1], [$2],
1472 [$2=no
1473 save_LDFLAGS="$LDFLAGS"
1474 LDFLAGS="$LDFLAGS $3"
1475 echo "$lt_simple_link_test_code" > conftest.$ac_ext
1476 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
1477 # The linker can only warn and ignore the option if not recognized
1478 # So say no if there are warnings
1479 if test -s conftest.err; then
1480 # Append any errors to the config.log.
1481 cat conftest.err 1>&AS_MESSAGE_LOG_FD
3daf2614 1482 $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp
38dfb1e4
DB
1483 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1484 if diff conftest.exp conftest.er2 >/dev/null; then
1485 $2=yes
1486 fi
1487 else
1488 $2=yes
1489 fi
1490 fi
3daf2614 1491 $RM -r conftest*
38dfb1e4
DB
1492 LDFLAGS="$save_LDFLAGS"
1493])
1494
1495if test x"[$]$2" = xyes; then
3daf2614 1496 m4_if([$4], , :, [$4])
38dfb1e4 1497else
3daf2614 1498 m4_if([$5], , :, [$5])
38dfb1e4 1499fi
3daf2614 1500])# _LT_LINKER_OPTION
38dfb1e4 1501
3daf2614
DB
1502# Old name:
1503AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
1504dnl aclocal-1.4 backwards compatibility:
1505dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
38dfb1e4 1506
3daf2614
DB
1507
1508# LT_CMD_MAX_LEN
1509#---------------
1510AC_DEFUN([LT_CMD_MAX_LEN],
1511[AC_REQUIRE([AC_CANONICAL_HOST])dnl
1512# find the maximum length of command line arguments
38dfb1e4
DB
1513AC_MSG_CHECKING([the maximum length of command line arguments])
1514AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1515 i=0
1516 teststring="ABCD"
1517
1518 case $build_os in
1519 msdosdjgpp*)
1520 # On DJGPP, this test can blow up pretty badly due to problems in libc
1521 # (any single argument exceeding 2000 bytes causes a buffer overrun
1522 # during glob expansion). Even if it were fixed, the result of this
1523 # check would be larger than it should be.
1524 lt_cv_sys_max_cmd_len=12288; # 12K is about right
1525 ;;
1526
1527 gnu*)
1528 # Under GNU Hurd, this test is not required because there is
1529 # no limit to the length of command line arguments.
1530 # Libtool will interpret -1 as no limit whatsoever
1531 lt_cv_sys_max_cmd_len=-1;
1532 ;;
1533
3daf2614 1534 cygwin* | mingw* | cegcc*)
38dfb1e4
DB
1535 # On Win9x/ME, this test blows up -- it succeeds, but takes
1536 # about 5 minutes as the teststring grows exponentially.
1537 # Worse, since 9x/ME are not pre-emptively multitasking,
1538 # you end up with a "frozen" computer, even though with patience
1539 # the test eventually succeeds (with a max line length of 256k).
1540 # Instead, let's just punt: use the minimum linelength reported by
1541 # all of the supported platforms: 8192 (on NT/2K/XP).
1542 lt_cv_sys_max_cmd_len=8192;
1543 ;;
1544
1545 amigaos*)
1546 # On AmigaOS with pdksh, this test takes hours, literally.
1547 # So we just punt and use a minimum line length of 8192.
1548 lt_cv_sys_max_cmd_len=8192;
1549 ;;
1550
1551 netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
1552 # This has been around since 386BSD, at least. Likely further.
1553 if test -x /sbin/sysctl; then
1554 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1555 elif test -x /usr/sbin/sysctl; then
1556 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1557 else
1558 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
1559 fi
1560 # And add a safety zone
1561 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1562 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1563 ;;
1564
1565 interix*)
1566 # We know the value 262144 and hardcode it with a safety zone (like BSD)
1567 lt_cv_sys_max_cmd_len=196608
1568 ;;
1569
1570 osf*)
1571 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1572 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1573 # nice to cause kernel panics so lets avoid the loop below.
1574 # First set a reasonable default.
1575 lt_cv_sys_max_cmd_len=16384
1576 #
1577 if test -x /sbin/sysconfig; then
1578 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1579 *1*) lt_cv_sys_max_cmd_len=-1 ;;
1580 esac
1581 fi
1582 ;;
1583 sco3.2v5*)
1584 lt_cv_sys_max_cmd_len=102400
1585 ;;
1586 sysv5* | sco5v6* | sysv4.2uw2*)
1587 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1588 if test -n "$kargmax"; then
3daf2614 1589 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
38dfb1e4
DB
1590 else
1591 lt_cv_sys_max_cmd_len=32768
1592 fi
1593 ;;
1594 *)
1595 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
1596 if test -n "$lt_cv_sys_max_cmd_len"; then
1597 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1598 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1599 else
3daf2614
DB
1600 # Make teststring a little bigger before we do anything with it.
1601 # a 1K string should be a reasonable start.
1602 for i in 1 2 3 4 5 6 7 8 ; do
1603 teststring=$teststring$teststring
1604 done
38dfb1e4 1605 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
3daf2614
DB
1606 # If test is not a shell built-in, we'll probably end up computing a
1607 # maximum length that is only half of the actual maximum length, but
1608 # we can't tell.
1609 while { test "X"`$SHELL [$]0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \
1610 = "XX$teststring$teststring"; } >/dev/null 2>&1 &&
38dfb1e4
DB
1611 test $i != 17 # 1/2 MB should be enough
1612 do
1613 i=`expr $i + 1`
1614 teststring=$teststring$teststring
1615 done
3daf2614
DB
1616 # Only check the string length outside the loop.
1617 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
38dfb1e4 1618 teststring=
3daf2614
DB
1619 # Add a significant safety factor because C++ compilers can tack on
1620 # massive amounts of additional arguments before passing them to the
1621 # linker. It appears as though 1/2 is a usable value.
38dfb1e4
DB
1622 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1623 fi
1624 ;;
1625 esac
1626])
1627if test -n $lt_cv_sys_max_cmd_len ; then
1628 AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1629else
1630 AC_MSG_RESULT(none)
1631fi
3daf2614
DB
1632max_cmd_len=$lt_cv_sys_max_cmd_len
1633_LT_DECL([], [max_cmd_len], [0],
1634 [What is the maximum length of a command?])
1635])# LT_CMD_MAX_LEN
38dfb1e4 1636
3daf2614
DB
1637# Old name:
1638AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
1639dnl aclocal-1.4 backwards compatibility:
1640dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
38dfb1e4 1641
3daf2614
DB
1642
1643# _LT_HEADER_DLFCN
1644# ----------------
1645m4_defun([_LT_HEADER_DLFCN],
1646[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
1647])# _LT_HEADER_DLFCN
38dfb1e4
DB
1648
1649
3daf2614
DB
1650# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1651# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1652# ----------------------------------------------------------------
1653m4_defun([_LT_TRY_DLOPEN_SELF],
1654[m4_require([_LT_HEADER_DLFCN])dnl
38dfb1e4
DB
1655if test "$cross_compiling" = yes; then :
1656 [$4]
1657else
1658 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1659 lt_status=$lt_dlunknown
3daf2614 1660 cat > conftest.$ac_ext <<_LT_EOF
38dfb1e4
DB
1661[#line __oline__ "configure"
1662#include "confdefs.h"
1663
1664#if HAVE_DLFCN_H
1665#include <dlfcn.h>
1666#endif
1667
1668#include <stdio.h>
1669
1670#ifdef RTLD_GLOBAL
1671# define LT_DLGLOBAL RTLD_GLOBAL
1672#else
1673# ifdef DL_GLOBAL
1674# define LT_DLGLOBAL DL_GLOBAL
1675# else
1676# define LT_DLGLOBAL 0
1677# endif
1678#endif
1679
1680/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1681 find out it does not work in some platform. */
1682#ifndef LT_DLLAZY_OR_NOW
1683# ifdef RTLD_LAZY
1684# define LT_DLLAZY_OR_NOW RTLD_LAZY
1685# else
1686# ifdef DL_LAZY
1687# define LT_DLLAZY_OR_NOW DL_LAZY
1688# else
1689# ifdef RTLD_NOW
1690# define LT_DLLAZY_OR_NOW RTLD_NOW
1691# else
1692# ifdef DL_NOW
1693# define LT_DLLAZY_OR_NOW DL_NOW
1694# else
1695# define LT_DLLAZY_OR_NOW 0
1696# endif
1697# endif
1698# endif
1699# endif
1700#endif
1701
38dfb1e4
DB
1702void fnord() { int i=42;}
1703int main ()
1704{
1705 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1706 int status = $lt_dlunknown;
1707
1708 if (self)
1709 {
1710 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
1711 else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1712 /* dlclose (self); */
1713 }
1714 else
1715 puts (dlerror ());
1716
3daf2614 1717 return status;
38dfb1e4 1718}]
3daf2614 1719_LT_EOF
38dfb1e4
DB
1720 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
1721 (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
1722 lt_status=$?
1723 case x$lt_status in
1724 x$lt_dlno_uscore) $1 ;;
1725 x$lt_dlneed_uscore) $2 ;;
1726 x$lt_dlunknown|x*) $3 ;;
1727 esac
1728 else :
1729 # compilation failed
1730 $3
1731 fi
1732fi
1733rm -fr conftest*
3daf2614 1734])# _LT_TRY_DLOPEN_SELF
38dfb1e4
DB
1735
1736
3daf2614
DB
1737# LT_SYS_DLOPEN_SELF
1738# ------------------
1739AC_DEFUN([LT_SYS_DLOPEN_SELF],
1740[m4_require([_LT_HEADER_DLFCN])dnl
38dfb1e4
DB
1741if test "x$enable_dlopen" != xyes; then
1742 enable_dlopen=unknown
1743 enable_dlopen_self=unknown
1744 enable_dlopen_self_static=unknown
1745else
1746 lt_cv_dlopen=no
1747 lt_cv_dlopen_libs=
1748
1749 case $host_os in
1750 beos*)
1751 lt_cv_dlopen="load_add_on"
1752 lt_cv_dlopen_libs=
1753 lt_cv_dlopen_self=yes
1754 ;;
1755
3daf2614 1756 mingw* | pw32* | cegcc*)
38dfb1e4
DB
1757 lt_cv_dlopen="LoadLibrary"
1758 lt_cv_dlopen_libs=
3daf2614 1759 ;;
38dfb1e4
DB
1760
1761 cygwin*)
1762 lt_cv_dlopen="dlopen"
1763 lt_cv_dlopen_libs=
3daf2614 1764 ;;
38dfb1e4
DB
1765
1766 darwin*)
1767 # if libdl is installed we need to link against it
1768 AC_CHECK_LIB([dl], [dlopen],
1769 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
1770 lt_cv_dlopen="dyld"
1771 lt_cv_dlopen_libs=
1772 lt_cv_dlopen_self=yes
1773 ])
3daf2614 1774 ;;
38dfb1e4
DB
1775
1776 *)
1777 AC_CHECK_FUNC([shl_load],
1778 [lt_cv_dlopen="shl_load"],
1779 [AC_CHECK_LIB([dld], [shl_load],
1780 [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
1781 [AC_CHECK_FUNC([dlopen],
1782 [lt_cv_dlopen="dlopen"],
1783 [AC_CHECK_LIB([dl], [dlopen],
1784 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
1785 [AC_CHECK_LIB([svld], [dlopen],
1786 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
1787 [AC_CHECK_LIB([dld], [dld_link],
1788 [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
1789 ])
1790 ])
1791 ])
1792 ])
1793 ])
1794 ;;
1795 esac
1796
1797 if test "x$lt_cv_dlopen" != xno; then
1798 enable_dlopen=yes
1799 else
1800 enable_dlopen=no
1801 fi
1802
1803 case $lt_cv_dlopen in
1804 dlopen)
1805 save_CPPFLAGS="$CPPFLAGS"
1806 test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
1807
1808 save_LDFLAGS="$LDFLAGS"
1809 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
1810
1811 save_LIBS="$LIBS"
1812 LIBS="$lt_cv_dlopen_libs $LIBS"
1813
1814 AC_CACHE_CHECK([whether a program can dlopen itself],
1815 lt_cv_dlopen_self, [dnl
3daf2614 1816 _LT_TRY_DLOPEN_SELF(
38dfb1e4
DB
1817 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
1818 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
1819 ])
1820
1821 if test "x$lt_cv_dlopen_self" = xyes; then
1822 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
1823 AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
3daf2614
DB
1824 lt_cv_dlopen_self_static, [dnl
1825 _LT_TRY_DLOPEN_SELF(
38dfb1e4
DB
1826 lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
1827 lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
1828 ])
1829 fi
1830
1831 CPPFLAGS="$save_CPPFLAGS"
1832 LDFLAGS="$save_LDFLAGS"
1833 LIBS="$save_LIBS"
1834 ;;
1835 esac
1836
1837 case $lt_cv_dlopen_self in
1838 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
1839 *) enable_dlopen_self=unknown ;;
1840 esac
1841
1842 case $lt_cv_dlopen_self_static in
1843 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
1844 *) enable_dlopen_self_static=unknown ;;
1845 esac
1846fi
3daf2614
DB
1847_LT_DECL([dlopen_support], [enable_dlopen], [0],
1848 [Whether dlopen is supported])
1849_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
1850 [Whether dlopen of programs is supported])
1851_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
1852 [Whether dlopen of statically linked programs is supported])
1853])# LT_SYS_DLOPEN_SELF
38dfb1e4 1854
3daf2614
DB
1855# Old name:
1856AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
1857dnl aclocal-1.4 backwards compatibility:
1858dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
38dfb1e4 1859
3daf2614
DB
1860
1861# _LT_COMPILER_C_O([TAGNAME])
1862# ---------------------------
1863# Check to see if options -c and -o are simultaneously supported by compiler.
1864# This macro does not hard code the compiler like AC_PROG_CC_C_O.
1865m4_defun([_LT_COMPILER_C_O],
1866[m4_require([_LT_DECL_SED])dnl
1867m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1868m4_require([_LT_TAG_COMPILER])dnl
38dfb1e4 1869AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
3daf2614
DB
1870 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
1871 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
1872 $RM -r conftest 2>/dev/null
38dfb1e4
DB
1873 mkdir conftest
1874 cd conftest
1875 mkdir out
1876 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1877
1878 lt_compiler_flag="-o out/conftest2.$ac_objext"
1879 # Insert the option either (1) after the last *FLAGS variable, or
1880 # (2) before a word containing "conftest.", or (3) at the end.
1881 # Note that $ac_compile itself does not contain backslashes and begins
1882 # with a dollar sign (not a hyphen), so the echo should work correctly.
1883 lt_compile=`echo "$ac_compile" | $SED \
1884 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1885 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1886 -e 's:$: $lt_compiler_flag:'`
1887 (eval echo "\"\$as_me:__oline__: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1888 (eval "$lt_compile" 2>out/conftest.err)
1889 ac_status=$?
1890 cat out/conftest.err >&AS_MESSAGE_LOG_FD
1891 echo "$as_me:__oline__: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1892 if (exit $ac_status) && test -s out/conftest2.$ac_objext
1893 then
1894 # The compiler can only warn and ignore the option if not recognized
1895 # So say no if there are warnings
3daf2614 1896 $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp
38dfb1e4
DB
1897 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
1898 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
3daf2614 1899 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
38dfb1e4
DB
1900 fi
1901 fi
1902 chmod u+w . 2>&AS_MESSAGE_LOG_FD
3daf2614 1903 $RM conftest*
38dfb1e4
DB
1904 # SGI C++ compiler will create directory out/ii_files/ for
1905 # template instantiation
3daf2614
DB
1906 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
1907 $RM out/* && rmdir out
38dfb1e4 1908 cd ..
3daf2614
DB
1909 $RM -r conftest
1910 $RM conftest*
38dfb1e4 1911])
3daf2614
DB
1912_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
1913 [Does compiler simultaneously support -c and -o options?])
1914])# _LT_COMPILER_C_O
38dfb1e4
DB
1915
1916
3daf2614
DB
1917# _LT_COMPILER_FILE_LOCKS([TAGNAME])
1918# ----------------------------------
38dfb1e4 1919# Check to see if we can do hard links to lock some files if needed
3daf2614
DB
1920m4_defun([_LT_COMPILER_FILE_LOCKS],
1921[m4_require([_LT_ENABLE_LOCK])dnl
1922m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1923_LT_COMPILER_C_O([$1])
38dfb1e4
DB
1924
1925hard_links="nottested"
3daf2614 1926if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
38dfb1e4
DB
1927 # do not overwrite the value of need_locks provided by the user
1928 AC_MSG_CHECKING([if we can lock with hard links])
1929 hard_links=yes
3daf2614 1930 $RM conftest*
38dfb1e4
DB
1931 ln conftest.a conftest.b 2>/dev/null && hard_links=no
1932 touch conftest.a
1933 ln conftest.a conftest.b 2>&5 || hard_links=no
1934 ln conftest.a conftest.b 2>/dev/null && hard_links=no
1935 AC_MSG_RESULT([$hard_links])
1936 if test "$hard_links" = no; then
1937 AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
1938 need_locks=warn
1939 fi
1940else
1941 need_locks=no
1942fi
3daf2614
DB
1943_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
1944])# _LT_COMPILER_FILE_LOCKS
38dfb1e4
DB
1945
1946
3daf2614
DB
1947# _LT_CHECK_OBJDIR
1948# ----------------
1949m4_defun([_LT_CHECK_OBJDIR],
38dfb1e4
DB
1950[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
1951[rm -f .libs 2>/dev/null
1952mkdir .libs 2>/dev/null
1953if test -d .libs; then
1954 lt_cv_objdir=.libs
1955else
1956 # MS-DOS does not allow filenames that begin with a dot.
1957 lt_cv_objdir=_libs
1958fi
1959rmdir .libs 2>/dev/null])
1960objdir=$lt_cv_objdir
3daf2614
DB
1961_LT_DECL([], [objdir], [0],
1962 [The name of the directory that contains temporary libtool files])dnl
1963m4_pattern_allow([LT_OBJDIR])dnl
1964AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
1965 [Define to the sub-directory in which libtool stores uninstalled libraries.])
1966])# _LT_CHECK_OBJDIR
38dfb1e4
DB
1967
1968
3daf2614
DB
1969# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
1970# --------------------------------------
38dfb1e4 1971# Check hardcoding attributes.
3daf2614 1972m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
38dfb1e4 1973[AC_MSG_CHECKING([how to hardcode library paths into programs])
3daf2614
DB
1974_LT_TAGVAR(hardcode_action, $1)=
1975if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
1976 test -n "$_LT_TAGVAR(runpath_var, $1)" ||
1977 test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
38dfb1e4 1978
3daf2614
DB
1979 # We can hardcode non-existent directories.
1980 if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
38dfb1e4
DB
1981 # If the only mechanism to avoid hardcoding is shlibpath_var, we
1982 # have to relink, otherwise we might link with an installed library
1983 # when we should be linking with a yet-to-be-installed one
3daf2614
DB
1984 ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
1985 test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
38dfb1e4 1986 # Linking always hardcodes the temporary library directory.
3daf2614 1987 _LT_TAGVAR(hardcode_action, $1)=relink
38dfb1e4
DB
1988 else
1989 # We can link without hardcoding, and we can hardcode nonexisting dirs.
3daf2614 1990 _LT_TAGVAR(hardcode_action, $1)=immediate
38dfb1e4
DB
1991 fi
1992else
1993 # We cannot hardcode anything, or else we can only hardcode existing
1994 # directories.
3daf2614 1995 _LT_TAGVAR(hardcode_action, $1)=unsupported
38dfb1e4 1996fi
3daf2614 1997AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
38dfb1e4 1998
3daf2614
DB
1999if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
2000 test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
38dfb1e4
DB
2001 # Fast installation is not supported
2002 enable_fast_install=no
2003elif test "$shlibpath_overrides_runpath" = yes ||
2004 test "$enable_shared" = no; then
2005 # Fast installation is not necessary
2006 enable_fast_install=needless
2007fi
3daf2614
DB
2008_LT_TAGDECL([], [hardcode_action], [0],
2009 [How to hardcode a shared library path into an executable])
2010])# _LT_LINKER_HARDCODE_LIBPATH
38dfb1e4
DB
2011
2012
3daf2614
DB
2013# _LT_CMD_STRIPLIB
2014# ----------------
2015m4_defun([_LT_CMD_STRIPLIB],
2016[m4_require([_LT_DECL_EGREP])
2017striplib=
38dfb1e4
DB
2018old_striplib=
2019AC_MSG_CHECKING([whether stripping libraries is possible])
3daf2614 2020if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
38dfb1e4
DB
2021 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2022 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2023 AC_MSG_RESULT([yes])
2024else
2025# FIXME - insert some real tests, host_os isn't really good enough
2026 case $host_os in
3daf2614
DB
2027 darwin*)
2028 if test -n "$STRIP" ; then
2029 striplib="$STRIP -x"
2030 old_striplib="$STRIP -S"
2031 AC_MSG_RESULT([yes])
2032 else
2033 AC_MSG_RESULT([no])
2034 fi
2035 ;;
2036 *)
2037 AC_MSG_RESULT([no])
38dfb1e4
DB
2038 ;;
2039 esac
2040fi
3daf2614
DB
2041_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2042_LT_DECL([], [striplib], [1])
2043])# _LT_CMD_STRIPLIB
38dfb1e4
DB
2044
2045
3daf2614 2046# _LT_SYS_DYNAMIC_LINKER([TAG])
38dfb1e4
DB
2047# -----------------------------
2048# PORTME Fill in your ld.so characteristics
3daf2614
DB
2049m4_defun([_LT_SYS_DYNAMIC_LINKER],
2050[AC_REQUIRE([AC_CANONICAL_HOST])dnl
2051m4_require([_LT_DECL_EGREP])dnl
2052m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2053m4_require([_LT_DECL_OBJDUMP])dnl
2054m4_require([_LT_DECL_SED])dnl
38dfb1e4 2055AC_MSG_CHECKING([dynamic linker characteristics])
3daf2614
DB
2056m4_if([$1],
2057 [], [
38dfb1e4
DB
2058if test "$GCC" = yes; then
2059 case $host_os in
2060 darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
2061 *) lt_awk_arg="/^libraries:/" ;;
2062 esac
2063 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"`
3daf2614 2064 if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then
38dfb1e4
DB
2065 # if the path contains ";" then we assume it to be the separator
2066 # otherwise default to the standard path separator (i.e. ":") - it is
2067 # assumed that no part of a normal pathname contains ";" but that should
2068 # okay in the real world where ";" in dirpaths is itself problematic.
3daf2614 2069 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'`
38dfb1e4 2070 else
3daf2614 2071 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
38dfb1e4
DB
2072 fi
2073 # Ok, now we have the path, separated by spaces, we can step through it
2074 # and add multilib dir if necessary.
2075 lt_tmp_lt_search_path_spec=
2076 lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
2077 for lt_sys_path in $lt_search_path_spec; do
2078 if test -d "$lt_sys_path/$lt_multi_os_dir"; then
2079 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
2080 else
2081 test -d "$lt_sys_path" && \
2082 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2083 fi
2084 done
3daf2614 2085 lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk '
38dfb1e4
DB
2086BEGIN {RS=" "; FS="/|\n";} {
2087 lt_foo="";
2088 lt_count=0;
2089 for (lt_i = NF; lt_i > 0; lt_i--) {
2090 if ($lt_i != "" && $lt_i != ".") {
2091 if ($lt_i == "..") {
2092 lt_count++;
2093 } else {
2094 if (lt_count == 0) {
2095 lt_foo="/" $lt_i lt_foo;
2096 } else {
2097 lt_count--;
2098 }
2099 }
2100 }
2101 }
2102 if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2103 if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2104}'`
3daf2614 2105 sys_lib_search_path_spec=`$ECHO $lt_search_path_spec`
38dfb1e4
DB
2106else
2107 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2108fi])
3daf2614
DB
2109library_names_spec=
2110libname_spec='lib$name'
2111soname_spec=
2112shrext_cmds=".so"
2113postinstall_cmds=
2114postuninstall_cmds=
2115finish_cmds=
2116finish_eval=
2117shlibpath_var=
2118shlibpath_overrides_runpath=unknown
2119version_type=none
2120dynamic_linker="$host_os ld.so"
2121sys_lib_dlsearch_path_spec="/lib /usr/lib"
38dfb1e4
DB
2122need_lib_prefix=unknown
2123hardcode_into_libs=no
2124
2125# when you set need_version to no, make sure it does not cause -set_version
2126# flags to be left without arguments
2127need_version=unknown
2128
2129case $host_os in
2130aix3*)
2131 version_type=linux
2132 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
2133 shlibpath_var=LIBPATH
2134
2135 # AIX 3 has no versioning support, so we append a major version to the name.
2136 soname_spec='${libname}${release}${shared_ext}$major'
2137 ;;
2138
2139aix[[4-9]]*)
2140 version_type=linux
2141 need_lib_prefix=no
2142 need_version=no
2143 hardcode_into_libs=yes
2144 if test "$host_cpu" = ia64; then
2145 # AIX 5 supports IA64
2146 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
2147 shlibpath_var=LD_LIBRARY_PATH
2148 else
2149 # With GCC up to 2.95.x, collect2 would create an import file
2150 # for dependence libraries. The import file would start with
2151 # the line `#! .'. This would cause the generated library to
2152 # depend on `.', always an invalid library. This was fixed in
2153 # development snapshots of GCC prior to 3.0.
2154 case $host_os in
2155 aix4 | aix4.[[01]] | aix4.[[01]].*)
2156 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2157 echo ' yes '
3daf2614 2158 echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
38dfb1e4
DB
2159 :
2160 else
2161 can_build_shared=no
2162 fi
2163 ;;
2164 esac
2165 # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
2166 # soname into executable. Probably we can add versioning support to
2167 # collect2, so additional links can be useful in future.
2168 if test "$aix_use_runtimelinking" = yes; then
2169 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2170 # instead of lib<name>.a to let people know that these are not
2171 # typical AIX shared libraries.
2172 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2173 else
2174 # We preserve .a as extension for shared libraries through AIX4.2
2175 # and later when we are not doing run time linking.
2176 library_names_spec='${libname}${release}.a $libname.a'
2177 soname_spec='${libname}${release}${shared_ext}$major'
2178 fi
2179 shlibpath_var=LIBPATH
2180 fi
2181 ;;
2182
2183amigaos*)
3daf2614
DB
2184 case $host_cpu in
2185 powerpc)
2186 # Since July 2007 AmigaOS4 officially supports .so libraries.
2187 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
2188 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2189 ;;
2190 m68k)
2191 library_names_spec='$libname.ixlibrary $libname.a'
2192 # Create ${libname}_ixlibrary.a entries in /sys/libs.
2193 finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
2194 ;;
2195 esac
38dfb1e4
DB
2196 ;;
2197
2198beos*)
2199 library_names_spec='${libname}${shared_ext}'
2200 dynamic_linker="$host_os ld.so"
2201 shlibpath_var=LIBRARY_PATH
2202 ;;
2203
2204bsdi[[45]]*)
2205 version_type=linux
2206 need_version=no
2207 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2208 soname_spec='${libname}${release}${shared_ext}$major'
2209 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2210 shlibpath_var=LD_LIBRARY_PATH
2211 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2212 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2213 # the default ld.so.conf also contains /usr/contrib/lib and
2214 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2215 # libtool to hard-code these into programs
2216 ;;
2217
3daf2614 2218cygwin* | mingw* | pw32* | cegcc*)
38dfb1e4
DB
2219 version_type=windows
2220 shrext_cmds=".dll"
2221 need_version=no
2222 need_lib_prefix=no
2223
2224 case $GCC,$host_os in
3daf2614 2225 yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*)
38dfb1e4
DB
2226 library_names_spec='$libname.dll.a'
2227 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2228 postinstall_cmds='base_file=`basename \${file}`~
3daf2614 2229 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
38dfb1e4
DB
2230 dldir=$destdir/`dirname \$dlpath`~
2231 test -d \$dldir || mkdir -p \$dldir~
2232 $install_prog $dir/$dlname \$dldir/$dlname~
3daf2614
DB
2233 chmod a+x \$dldir/$dlname~
2234 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2235 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2236 fi'
38dfb1e4
DB
2237 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2238 dlpath=$dir/\$dldll~
3daf2614 2239 $RM \$dlpath'
38dfb1e4
DB
2240 shlibpath_overrides_runpath=yes
2241
2242 case $host_os in
2243 cygwin*)
2244 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
2245 soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2246 sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib"
2247 ;;
3daf2614 2248 mingw* | cegcc*)
38dfb1e4
DB
2249 # MinGW DLLs use traditional 'lib' prefix
2250 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
3daf2614
DB
2251 sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
2252 if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
38dfb1e4
DB
2253 # It is most probably a Windows format PATH printed by
2254 # mingw gcc, but we are running on Cygwin. Gcc prints its search
2255 # path with ; separators, and with drive letters. We can handle the
2256 # drive letters (cygwin fileutils understands them), so leave them,
2257 # especially as we might pass files found there to a mingw objdump,
2258 # which wouldn't understand a cygwinified path. Ahh.
3daf2614 2259 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
38dfb1e4 2260 else
3daf2614 2261 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
38dfb1e4
DB
2262 fi
2263 ;;
2264 pw32*)
2265 # pw32 DLLs use 'pw' prefix rather than 'lib'
2266 library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2267 ;;
2268 esac
2269 ;;
2270
2271 *)
2272 library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
2273 ;;
2274 esac
2275 dynamic_linker='Win32 ld.exe'
2276 # FIXME: first we should search . and the directory the executable is in
2277 shlibpath_var=PATH
2278 ;;
2279
2280darwin* | rhapsody*)
2281 dynamic_linker="$host_os dyld"
2282 version_type=darwin
2283 need_lib_prefix=no
2284 need_version=no
3daf2614 2285 library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
38dfb1e4
DB
2286 soname_spec='${libname}${release}${major}$shared_ext'
2287 shlibpath_overrides_runpath=yes
2288 shlibpath_var=DYLD_LIBRARY_PATH
2289 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
3daf2614
DB
2290m4_if([$1], [],[
2291 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
38dfb1e4
DB
2292 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
2293 ;;
2294
2295dgux*)
2296 version_type=linux
2297 need_lib_prefix=no
2298 need_version=no
2299 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
2300 soname_spec='${libname}${release}${shared_ext}$major'
2301 shlibpath_var=LD_LIBRARY_PATH
2302 ;;
2303
2304freebsd1*)
2305 dynamic_linker=no
2306 ;;
2307
2308freebsd* | dragonfly*)
2309 # DragonFly does not have aout. When/if they implement a new
2310 # versioning mechanism, adjust this.
2311 if test -x /usr/bin/objformat; then
2312 objformat=`/usr/bin/objformat`
2313 else
2314 case $host_os in
2315 freebsd[[123]]*) objformat=aout ;;
2316 *) objformat=elf ;;
2317 esac
2318 fi
2319 version_type=freebsd-$objformat
2320 case $version_type in
2321 freebsd-elf*)
2322 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2323 need_version=no
2324 need_lib_prefix=no
2325 ;;
2326 freebsd-*)
2327 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
2328 need_version=yes
2329 ;;
2330 esac
2331 shlibpath_var=LD_LIBRARY_PATH
2332 case $host_os in
2333 freebsd2*)
2334 shlibpath_overrides_runpath=yes
2335 ;;
2336 freebsd3.[[01]]* | freebsdelf3.[[01]]*)
2337 shlibpath_overrides_runpath=yes
2338 hardcode_into_libs=yes
2339 ;;
2340 freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2341 freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
2342 shlibpath_overrides_runpath=no
2343 hardcode_into_libs=yes
2344 ;;
2345 *) # from 4.6 on, and DragonFly
2346 shlibpath_overrides_runpath=yes
2347 hardcode_into_libs=yes
2348 ;;
2349 esac
2350 ;;
2351
2352gnu*)
2353 version_type=linux
2354 need_lib_prefix=no
2355 need_version=no
2356 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2357 soname_spec='${libname}${release}${shared_ext}$major'
2358 shlibpath_var=LD_LIBRARY_PATH
2359 hardcode_into_libs=yes
2360 ;;
2361
2362hpux9* | hpux10* | hpux11*)
2363 # Give a soname corresponding to the major version so that dld.sl refuses to
2364 # link against other versions.
2365 version_type=sunos
2366 need_lib_prefix=no
2367 need_version=no
2368 case $host_cpu in
2369 ia64*)
2370 shrext_cmds='.so'
2371 hardcode_into_libs=yes
2372 dynamic_linker="$host_os dld.so"
2373 shlibpath_var=LD_LIBRARY_PATH
2374 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2375 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2376 soname_spec='${libname}${release}${shared_ext}$major'
2377 if test "X$HPUX_IA64_MODE" = X32; then
2378 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
2379 else
2380 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
2381 fi
2382 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2383 ;;
3daf2614
DB
2384 hppa*64*)
2385 shrext_cmds='.sl'
2386 hardcode_into_libs=yes
2387 dynamic_linker="$host_os dld.sl"
2388 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2389 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2390 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2391 soname_spec='${libname}${release}${shared_ext}$major'
2392 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2393 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2394 ;;
2395 *)
38dfb1e4
DB
2396 shrext_cmds='.sl'
2397 dynamic_linker="$host_os dld.sl"
2398 shlibpath_var=SHLIB_PATH
2399 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2400 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2401 soname_spec='${libname}${release}${shared_ext}$major'
2402 ;;
2403 esac
2404 # HP-UX runs *really* slowly unless shared libraries are mode 555.
2405 postinstall_cmds='chmod 555 $lib'
2406 ;;
2407
2408interix[[3-9]]*)
2409 version_type=linux
2410 need_lib_prefix=no
2411 need_version=no
2412 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2413 soname_spec='${libname}${release}${shared_ext}$major'
2414 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2415 shlibpath_var=LD_LIBRARY_PATH
2416 shlibpath_overrides_runpath=no
2417 hardcode_into_libs=yes
2418 ;;
2419
2420irix5* | irix6* | nonstopux*)
2421 case $host_os in
2422 nonstopux*) version_type=nonstopux ;;
2423 *)
2424 if test "$lt_cv_prog_gnu_ld" = yes; then
2425 version_type=linux
2426 else
2427 version_type=irix
2428 fi ;;
2429 esac
2430 need_lib_prefix=no
2431 need_version=no
2432 soname_spec='${libname}${release}${shared_ext}$major'
2433 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
2434 case $host_os in
2435 irix5* | nonstopux*)
2436 libsuff= shlibsuff=
2437 ;;
2438 *)
2439 case $LD in # libtool.m4 will add one of these switches to LD
2440 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2441 libsuff= shlibsuff= libmagic=32-bit;;
2442 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2443 libsuff=32 shlibsuff=N32 libmagic=N32;;
2444 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2445 libsuff=64 shlibsuff=64 libmagic=64-bit;;
2446 *) libsuff= shlibsuff= libmagic=never-match;;
2447 esac
2448 ;;
2449 esac
2450 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2451 shlibpath_overrides_runpath=no
2452 sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
2453 sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
2454 hardcode_into_libs=yes
2455 ;;
2456
2457# No shared lib support for Linux oldld, aout, or coff.
2458linux*oldld* | linux*aout* | linux*coff*)
2459 dynamic_linker=no
2460 ;;
2461
2462# This must be Linux ELF.
2463linux* | k*bsd*-gnu)
2464 version_type=linux
2465 need_lib_prefix=no
2466 need_version=no
2467 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2468 soname_spec='${libname}${release}${shared_ext}$major'
2469 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2470 shlibpath_var=LD_LIBRARY_PATH
2471 shlibpath_overrides_runpath=no
3daf2614
DB
2472 # Some binutils ld are patched to set DT_RUNPATH
2473 save_LDFLAGS=$LDFLAGS
2474 save_libdir=$libdir
2475 eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2476 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2477 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2478 [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2479 [shlibpath_overrides_runpath=yes])])
2480 LDFLAGS=$save_LDFLAGS
2481 libdir=$save_libdir
2482
38dfb1e4
DB
2483 # This implies no fast_install, which is unacceptable.
2484 # Some rework will be needed to allow for fast_install
2485 # before this can be enabled.
2486 hardcode_into_libs=yes
38dfb1e4
DB
2487
2488 # Append ld.so.conf contents to the search path
2489 if test -f /etc/ld.so.conf; then
3daf2614
DB
2490 lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
2491 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
38dfb1e4
DB
2492 fi
2493
2494 # We used to test for /lib/ld.so.1 and disable shared libraries on
2495 # powerpc, because MkLinux only supported shared libraries with the
2496 # GNU dynamic linker. Since this was broken with cross compilers,
2497 # most powerpc-linux boxes support dynamic linking these days and
2498 # people can always --disable-shared, the test was removed, and we
2499 # assume the GNU/Linux dynamic linker is in use.
2500 dynamic_linker='GNU/Linux ld.so'
2501 ;;
2502
ef281afa
DB
2503netbsdelf*-gnu)
2504 version_type=linux
2505 need_lib_prefix=no
2506 need_version=no
2507 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2508 soname_spec='${libname}${release}${shared_ext}$major'
2509 shlibpath_var=LD_LIBRARY_PATH
2510 shlibpath_overrides_runpath=no
2511 hardcode_into_libs=yes
2512 dynamic_linker='NetBSD ld.elf_so'
2513 ;;
2514
38dfb1e4
DB
2515netbsd*)
2516 version_type=sunos
2517 need_lib_prefix=no
2518 need_version=no
3daf2614 2519 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
38dfb1e4
DB
2520 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2521 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2522 dynamic_linker='NetBSD (a.out) ld.so'
2523 else
2524 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2525 soname_spec='${libname}${release}${shared_ext}$major'
2526 dynamic_linker='NetBSD ld.elf_so'
2527 fi
2528 shlibpath_var=LD_LIBRARY_PATH
2529 shlibpath_overrides_runpath=yes
2530 hardcode_into_libs=yes
2531 ;;
2532
2533newsos6)
2534 version_type=linux
2535 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2536 shlibpath_var=LD_LIBRARY_PATH
2537 shlibpath_overrides_runpath=yes
2538 ;;
2539
3daf2614
DB
2540*nto* | *qnx*)
2541 version_type=qnx
38dfb1e4
DB
2542 need_lib_prefix=no
2543 need_version=no
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=LD_LIBRARY_PATH
3daf2614
DB
2547 shlibpath_overrides_runpath=no
2548 hardcode_into_libs=yes
2549 dynamic_linker='ldqnx.so'
38dfb1e4
DB
2550 ;;
2551
2552openbsd*)
2553 version_type=sunos
2554 sys_lib_dlsearch_path_spec="/usr/lib"
2555 need_lib_prefix=no
2556 # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
2557 case $host_os in
3daf2614
DB
2558 openbsd3.3 | openbsd3.3.*) need_version=yes ;;
2559 *) need_version=no ;;
38dfb1e4
DB
2560 esac
2561 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2562 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2563 shlibpath_var=LD_LIBRARY_PATH
3daf2614 2564 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
38dfb1e4
DB
2565 case $host_os in
2566 openbsd2.[[89]] | openbsd2.[[89]].*)
2567 shlibpath_overrides_runpath=no
2568 ;;
2569 *)
2570 shlibpath_overrides_runpath=yes
2571 ;;
2572 esac
2573 else
2574 shlibpath_overrides_runpath=yes
2575 fi
2576 ;;
2577
2578os2*)
2579 libname_spec='$name'
2580 shrext_cmds=".dll"
2581 need_lib_prefix=no
2582 library_names_spec='$libname${shared_ext} $libname.a'
2583 dynamic_linker='OS/2 ld.exe'
2584 shlibpath_var=LIBPATH
2585 ;;
2586
2587osf3* | osf4* | osf5*)
2588 version_type=osf
2589 need_lib_prefix=no
2590 need_version=no
2591 soname_spec='${libname}${release}${shared_ext}$major'
2592 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2593 shlibpath_var=LD_LIBRARY_PATH
2594 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
2595 sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
2596 ;;
2597
2598rdos*)
2599 dynamic_linker=no
2600 ;;
2601
2602solaris*)
2603 version_type=linux
2604 need_lib_prefix=no
2605 need_version=no
2606 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2607 soname_spec='${libname}${release}${shared_ext}$major'
2608 shlibpath_var=LD_LIBRARY_PATH
2609 shlibpath_overrides_runpath=yes
2610 hardcode_into_libs=yes
2611 # ldd complains unless libraries are executable
2612 postinstall_cmds='chmod +x $lib'
2613 ;;
2614
2615sunos4*)
2616 version_type=sunos
2617 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2618 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
2619 shlibpath_var=LD_LIBRARY_PATH
2620 shlibpath_overrides_runpath=yes
2621 if test "$with_gnu_ld" = yes; then
2622 need_lib_prefix=no
2623 fi
2624 need_version=yes
2625 ;;
2626
2627sysv4 | sysv4.3*)
2628 version_type=linux
2629 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2630 soname_spec='${libname}${release}${shared_ext}$major'
2631 shlibpath_var=LD_LIBRARY_PATH
2632 case $host_vendor in
2633 sni)
2634 shlibpath_overrides_runpath=no
2635 need_lib_prefix=no
38dfb1e4
DB
2636 runpath_var=LD_RUN_PATH
2637 ;;
2638 siemens)
2639 need_lib_prefix=no
2640 ;;
2641 motorola)
2642 need_lib_prefix=no
2643 need_version=no
2644 shlibpath_overrides_runpath=no
2645 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
2646 ;;
2647 esac
2648 ;;
2649
2650sysv4*MP*)
2651 if test -d /usr/nec ;then
2652 version_type=linux
2653 library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
2654 soname_spec='$libname${shared_ext}.$major'
2655 shlibpath_var=LD_LIBRARY_PATH
2656 fi
2657 ;;
2658
2659sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
2660 version_type=freebsd-elf
2661 need_lib_prefix=no
2662 need_version=no
2663 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2664 soname_spec='${libname}${release}${shared_ext}$major'
2665 shlibpath_var=LD_LIBRARY_PATH
3daf2614 2666 shlibpath_overrides_runpath=yes
38dfb1e4
DB
2667 hardcode_into_libs=yes
2668 if test "$with_gnu_ld" = yes; then
2669 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
38dfb1e4
DB
2670 else
2671 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
38dfb1e4
DB
2672 case $host_os in
2673 sco3.2v5*)
2674 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
2675 ;;
2676 esac
2677 fi
2678 sys_lib_dlsearch_path_spec='/usr/lib'
2679 ;;
2680
3daf2614
DB
2681tpf*)
2682 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
2683 version_type=linux
2684 need_lib_prefix=no
2685 need_version=no
2686 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2687 shlibpath_var=LD_LIBRARY_PATH
2688 shlibpath_overrides_runpath=no
2689 hardcode_into_libs=yes
2690 ;;
2691
38dfb1e4
DB
2692uts4*)
2693 version_type=linux
2694 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2695 soname_spec='${libname}${release}${shared_ext}$major'
2696 shlibpath_var=LD_LIBRARY_PATH
2697 ;;
2698
2699*)
2700 dynamic_linker=no
2701 ;;
2702esac
2703AC_MSG_RESULT([$dynamic_linker])
2704test "$dynamic_linker" = no && can_build_shared=no
2705
38dfb1e4
DB
2706variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
2707if test "$GCC" = yes; then
2708 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
2709fi
38dfb1e4 2710
3daf2614
DB
2711if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
2712 sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
2713fi
2714if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
2715 sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
2716fi
38dfb1e4 2717
3daf2614
DB
2718_LT_DECL([], [variables_saved_for_relink], [1],
2719 [Variables whose values should be saved in libtool wrapper scripts and
2720 restored at link time])
2721_LT_DECL([], [need_lib_prefix], [0],
2722 [Do we need the "lib" prefix for modules?])
2723_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
2724_LT_DECL([], [version_type], [0], [Library versioning type])
2725_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
2726_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
2727_LT_DECL([], [shlibpath_overrides_runpath], [0],
2728 [Is shlibpath searched before the hard-coded library search path?])
2729_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
2730_LT_DECL([], [library_names_spec], [1],
2731 [[List of archive names. First name is the real one, the rest are links.
2732 The last name is the one that the linker finds with -lNAME]])
2733_LT_DECL([], [soname_spec], [1],
2734 [[The coded name of the library, if different from the real name]])
2735_LT_DECL([], [postinstall_cmds], [2],
2736 [Command to use after installation of a shared archive])
2737_LT_DECL([], [postuninstall_cmds], [2],
2738 [Command to use after uninstallation of a shared archive])
2739_LT_DECL([], [finish_cmds], [2],
2740 [Commands used to finish a libtool library installation in a directory])
2741_LT_DECL([], [finish_eval], [1],
2742 [[As "finish_cmds", except a single script fragment to be evaled but
2743 not shown]])
2744_LT_DECL([], [hardcode_into_libs], [0],
2745 [Whether we should hardcode library paths into libraries])
2746_LT_DECL([], [sys_lib_search_path_spec], [2],
2747 [Compile-time system search path for libraries])
2748_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
2749 [Run-time system search path for libraries])
2750])# _LT_SYS_DYNAMIC_LINKER
2751
2752
2753# _LT_PATH_TOOL_PREFIX(TOOL)
38dfb1e4 2754# --------------------------
38dfb1e4 2755# find a file program which can recognize shared library
3daf2614
DB
2756AC_DEFUN([_LT_PATH_TOOL_PREFIX],
2757[m4_require([_LT_DECL_EGREP])dnl
38dfb1e4
DB
2758AC_MSG_CHECKING([for $1])
2759AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
2760[case $MAGIC_CMD in
2761[[\\/*] | ?:[\\/]*])
2762 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
2763 ;;
2764*)
2765 lt_save_MAGIC_CMD="$MAGIC_CMD"
2766 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2767dnl $ac_dummy forces splitting on constant user-supplied paths.
2768dnl POSIX.2 word splitting is done only on the output of word expansions,
2769dnl not every word. This closes a longstanding sh security hole.
3daf2614 2770 ac_dummy="m4_if([$2], , $PATH, [$2])"
38dfb1e4
DB
2771 for ac_dir in $ac_dummy; do
2772 IFS="$lt_save_ifs"
2773 test -z "$ac_dir" && ac_dir=.
2774 if test -f $ac_dir/$1; then
2775 lt_cv_path_MAGIC_CMD="$ac_dir/$1"
2776 if test -n "$file_magic_test_file"; then
2777 case $deplibs_check_method in
2778 "file_magic "*)
2779 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
2780 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2781 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
2782 $EGREP "$file_magic_regex" > /dev/null; then
2783 :
2784 else
3daf2614 2785 cat <<_LT_EOF 1>&2
38dfb1e4
DB
2786
2787*** Warning: the command libtool uses to detect shared libraries,
2788*** $file_magic_cmd, produces output that libtool cannot recognize.
2789*** The result is that libtool may fail to recognize shared libraries
2790*** as such. This will affect the creation of libtool libraries that
2791*** depend on shared libraries, but programs linked with such libtool
2792*** libraries will work regardless of this problem. Nevertheless, you
2793*** may want to report the problem to your system manager and/or to
2794*** bug-libtool@gnu.org
2795
3daf2614 2796_LT_EOF
38dfb1e4
DB
2797 fi ;;
2798 esac
2799 fi
2800 break
2801 fi
2802 done
2803 IFS="$lt_save_ifs"
2804 MAGIC_CMD="$lt_save_MAGIC_CMD"
2805 ;;
2806esac])
2807MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2808if test -n "$MAGIC_CMD"; then
2809 AC_MSG_RESULT($MAGIC_CMD)
2810else
2811 AC_MSG_RESULT(no)
2812fi
3daf2614
DB
2813_LT_DECL([], [MAGIC_CMD], [0],
2814 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
2815])# _LT_PATH_TOOL_PREFIX
38dfb1e4 2816
3daf2614
DB
2817# Old name:
2818AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
2819dnl aclocal-1.4 backwards compatibility:
2820dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
38dfb1e4 2821
3daf2614
DB
2822
2823# _LT_PATH_MAGIC
2824# --------------
38dfb1e4 2825# find a file program which can recognize a shared library
3daf2614
DB
2826m4_defun([_LT_PATH_MAGIC],
2827[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
38dfb1e4
DB
2828if test -z "$lt_cv_path_MAGIC_CMD"; then
2829 if test -n "$ac_tool_prefix"; then
3daf2614 2830 _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
38dfb1e4
DB
2831 else
2832 MAGIC_CMD=:
2833 fi
2834fi
3daf2614 2835])# _LT_PATH_MAGIC
38dfb1e4
DB
2836
2837
3daf2614 2838# LT_PATH_LD
38dfb1e4
DB
2839# ----------
2840# find the pathname to the GNU or non-GNU linker
3daf2614
DB
2841AC_DEFUN([LT_PATH_LD],
2842[AC_REQUIRE([AC_PROG_CC])dnl
38dfb1e4
DB
2843AC_REQUIRE([AC_CANONICAL_HOST])dnl
2844AC_REQUIRE([AC_CANONICAL_BUILD])dnl
3daf2614
DB
2845m4_require([_LT_DECL_SED])dnl
2846m4_require([_LT_DECL_EGREP])dnl
2847
2848AC_ARG_WITH([gnu-ld],
2849 [AS_HELP_STRING([--with-gnu-ld],
2850 [assume the C compiler uses GNU ld @<:@default=no@:>@])],
2851 [test "$withval" = no || with_gnu_ld=yes],
2852 [with_gnu_ld=no])dnl
2853
38dfb1e4
DB
2854ac_prog=ld
2855if test "$GCC" = yes; then
2856 # Check if gcc -print-prog-name=ld gives a path.
2857 AC_MSG_CHECKING([for ld used by $CC])
2858 case $host in
2859 *-*-mingw*)
2860 # gcc leaves a trailing carriage return which upsets mingw
2861 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
2862 *)
2863 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
2864 esac
2865 case $ac_prog in
2866 # Accept absolute paths.
2867 [[\\/]]* | ?:[[\\/]]*)
2868 re_direlt='/[[^/]][[^/]]*/\.\./'
2869 # Canonicalize the pathname of ld
3daf2614
DB
2870 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
2871 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
2872 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
38dfb1e4
DB
2873 done
2874 test -z "$LD" && LD="$ac_prog"
2875 ;;
2876 "")
2877 # If it fails, then pretend we aren't using GCC.
2878 ac_prog=ld
2879 ;;
2880 *)
2881 # If it is relative, then search for the first ld in PATH.
2882 with_gnu_ld=unknown
2883 ;;
2884 esac
2885elif test "$with_gnu_ld" = yes; then
2886 AC_MSG_CHECKING([for GNU ld])
2887else
2888 AC_MSG_CHECKING([for non-GNU ld])
2889fi
2890AC_CACHE_VAL(lt_cv_path_LD,
2891[if test -z "$LD"; then
2892 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2893 for ac_dir in $PATH; do
2894 IFS="$lt_save_ifs"
2895 test -z "$ac_dir" && ac_dir=.
2896 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
2897 lt_cv_path_LD="$ac_dir/$ac_prog"
2898 # Check to see if the program is GNU ld. I'd rather use --version,
2899 # but apparently some variants of GNU ld only accept -v.
2900 # Break only if it was the GNU/non-GNU ld that we prefer.
2901 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
2902 *GNU* | *'with BFD'*)
2903 test "$with_gnu_ld" != no && break
2904 ;;
2905 *)
2906 test "$with_gnu_ld" != yes && break
2907 ;;
2908 esac
2909 fi
2910 done
2911 IFS="$lt_save_ifs"
2912else
2913 lt_cv_path_LD="$LD" # Let the user override the test with a path.
2914fi])
2915LD="$lt_cv_path_LD"
2916if test -n "$LD"; then
2917 AC_MSG_RESULT($LD)
2918else
2919 AC_MSG_RESULT(no)
2920fi
2921test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
3daf2614
DB
2922_LT_PATH_LD_GNU
2923AC_SUBST([LD])
38dfb1e4 2924
3daf2614
DB
2925_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
2926])# LT_PATH_LD
38dfb1e4 2927
3daf2614
DB
2928# Old names:
2929AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
2930AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
2931dnl aclocal-1.4 backwards compatibility:
2932dnl AC_DEFUN([AM_PROG_LD], [])
2933dnl AC_DEFUN([AC_PROG_LD], [])
2934
2935
2936# _LT_PATH_LD_GNU
2937#- --------------
2938m4_defun([_LT_PATH_LD_GNU],
2939[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
38dfb1e4
DB
2940[# I'd rather use --version here, but apparently some GNU lds only accept -v.
2941case `$LD -v 2>&1 </dev/null` in
2942*GNU* | *'with BFD'*)
2943 lt_cv_prog_gnu_ld=yes
2944 ;;
2945*)
2946 lt_cv_prog_gnu_ld=no
2947 ;;
2948esac])
2949with_gnu_ld=$lt_cv_prog_gnu_ld
3daf2614 2950])# _LT_PATH_LD_GNU
38dfb1e4
DB
2951
2952
3daf2614
DB
2953# _LT_CMD_RELOAD
2954# --------------
38dfb1e4
DB
2955# find reload flag for linker
2956# -- PORTME Some linkers may need a different reload flag.
3daf2614 2957m4_defun([_LT_CMD_RELOAD],
38dfb1e4
DB
2958[AC_CACHE_CHECK([for $LD option to reload object files],
2959 lt_cv_ld_reload_flag,
2960 [lt_cv_ld_reload_flag='-r'])
2961reload_flag=$lt_cv_ld_reload_flag
2962case $reload_flag in
2963"" | " "*) ;;
2964*) reload_flag=" $reload_flag" ;;
2965esac
2966reload_cmds='$LD$reload_flag -o $output$reload_objs'
2967case $host_os in
2968 darwin*)
2969 if test "$GCC" = yes; then
2970 reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
2971 else
2972 reload_cmds='$LD$reload_flag -o $output$reload_objs'
2973 fi
2974 ;;
2975esac
3daf2614
DB
2976_LT_DECL([], [reload_flag], [1], [How to create reloadable object files])dnl
2977_LT_DECL([], [reload_cmds], [2])dnl
2978])# _LT_CMD_RELOAD
38dfb1e4
DB
2979
2980
3daf2614
DB
2981# _LT_CHECK_MAGIC_METHOD
2982# ----------------------
38dfb1e4
DB
2983# how to check for library dependencies
2984# -- PORTME fill in with the dynamic library characteristics
3daf2614
DB
2985m4_defun([_LT_CHECK_MAGIC_METHOD],
2986[m4_require([_LT_DECL_EGREP])
2987m4_require([_LT_DECL_OBJDUMP])
2988AC_CACHE_CHECK([how to recognize dependent libraries],
38dfb1e4
DB
2989lt_cv_deplibs_check_method,
2990[lt_cv_file_magic_cmd='$MAGIC_CMD'
2991lt_cv_file_magic_test_file=
2992lt_cv_deplibs_check_method='unknown'
2993# Need to set the preceding variable on all platforms that support
2994# interlibrary dependencies.
2995# 'none' -- dependencies not supported.
2996# `unknown' -- same as none, but documents that we really don't know.
2997# 'pass_all' -- all dependencies passed with no checks.
2998# 'test_compile' -- check by making test program.
2999# 'file_magic [[regex]]' -- check by looking for files in library path
3000# which responds to the $file_magic_cmd with a given extended regex.
3001# If you have `file' or equivalent on your system and you're not sure
3002# whether `pass_all' will *always* work, you probably want this one.
3003
3004case $host_os in
3005aix[[4-9]]*)
3006 lt_cv_deplibs_check_method=pass_all
3007 ;;
3008
3009beos*)
3010 lt_cv_deplibs_check_method=pass_all
3011 ;;
3012
3013bsdi[[45]]*)
3014 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3015 lt_cv_file_magic_cmd='/usr/bin/file -L'
3016 lt_cv_file_magic_test_file=/shlib/libc.so
3017 ;;
3018
3019cygwin*)
3020 # func_win32_libid is a shell function defined in ltmain.sh
3021 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3022 lt_cv_file_magic_cmd='func_win32_libid'
3023 ;;
3024
3025mingw* | pw32*)
3026 # Base MSYS/MinGW do not provide the 'file' command needed by
3027 # func_win32_libid shell function, so use a weaker test based on 'objdump',
3028 # unless we find 'file', for example because we are cross-compiling.
3029 if ( file / ) >/dev/null 2>&1; then
3030 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3031 lt_cv_file_magic_cmd='func_win32_libid'
3032 else
3033 lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
3034 lt_cv_file_magic_cmd='$OBJDUMP -f'
3035 fi
3036 ;;
3037
3daf2614
DB
3038cegcc)
3039 # use the weaker test based on 'objdump'. See mingw*.
3040 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
3041 lt_cv_file_magic_cmd='$OBJDUMP -f'
3042 ;;
3043
38dfb1e4
DB
3044darwin* | rhapsody*)
3045 lt_cv_deplibs_check_method=pass_all
3046 ;;
3047
3048freebsd* | dragonfly*)
3daf2614 3049 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
38dfb1e4
DB
3050 case $host_cpu in
3051 i*86 )
3052 # Not sure whether the presence of OpenBSD here was a mistake.
3053 # Let's accept both of them until this is cleared up.
3054 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
3055 lt_cv_file_magic_cmd=/usr/bin/file
3056 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3057 ;;
3058 esac
3059 else
3060 lt_cv_deplibs_check_method=pass_all
3061 fi
3062 ;;
3063
3064gnu*)
3065 lt_cv_deplibs_check_method=pass_all
3066 ;;
3067
3068hpux10.20* | hpux11*)
3069 lt_cv_file_magic_cmd=/usr/bin/file
3070 case $host_cpu in
3071 ia64*)
3072 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
3073 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
3074 ;;
3075 hppa*64*)
3076 [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]']
3077 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3078 ;;
3079 *)
3080 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
3081 lt_cv_file_magic_test_file=/usr/lib/libc.sl
3082 ;;
3083 esac
3084 ;;
3085
3086interix[[3-9]]*)
3087 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
3088 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
3089 ;;
3090
3091irix5* | irix6* | nonstopux*)
3092 case $LD in
3093 *-32|*"-32 ") libmagic=32-bit;;
3094 *-n32|*"-n32 ") libmagic=N32;;
3095 *-64|*"-64 ") libmagic=64-bit;;
3096 *) libmagic=never-match;;
3097 esac
3098 lt_cv_deplibs_check_method=pass_all
3099 ;;
3100
3101# This must be Linux ELF.
3102linux* | k*bsd*-gnu)
3103 lt_cv_deplibs_check_method=pass_all
3104 ;;
3105
ef281afa 3106netbsd* | netbsdelf*-gnu)
3daf2614 3107 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
38dfb1e4
DB
3108 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3109 else
3110 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
3111 fi
3112 ;;
3113
3114newos6*)
3115 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
3116 lt_cv_file_magic_cmd=/usr/bin/file
3117 lt_cv_file_magic_test_file=/usr/lib/libnls.so
3118 ;;
3119
3daf2614
DB
3120*nto* | *qnx*)
3121 lt_cv_deplibs_check_method=pass_all
38dfb1e4
DB
3122 ;;
3123
3124openbsd*)
3daf2614 3125 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
38dfb1e4
DB
3126 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
3127 else
3128 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3129 fi
3130 ;;
3131
3132osf3* | osf4* | osf5*)
3133 lt_cv_deplibs_check_method=pass_all
3134 ;;
3135
3136rdos*)
3137 lt_cv_deplibs_check_method=pass_all
3138 ;;
3139
3140solaris*)
3141 lt_cv_deplibs_check_method=pass_all
3142 ;;
3143
3daf2614
DB
3144sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3145 lt_cv_deplibs_check_method=pass_all
3146 ;;
3147
38dfb1e4
DB
3148sysv4 | sysv4.3*)
3149 case $host_vendor in
3150 motorola)
3151 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]]'
3152 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3153 ;;
3154 ncr)
3155 lt_cv_deplibs_check_method=pass_all
3156 ;;
3157 sequent)
3158 lt_cv_file_magic_cmd='/bin/file'
3159 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3160 ;;
3161 sni)
3162 lt_cv_file_magic_cmd='/bin/file'
3163 lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3164 lt_cv_file_magic_test_file=/lib/libc.so
3165 ;;
3166 siemens)
3167 lt_cv_deplibs_check_method=pass_all
3168 ;;
3169 pc)
3170 lt_cv_deplibs_check_method=pass_all
3171 ;;
3172 esac
3173 ;;
3174
3daf2614 3175tpf*)
38dfb1e4
DB
3176 lt_cv_deplibs_check_method=pass_all
3177 ;;
3178esac
3179])
3180file_magic_cmd=$lt_cv_file_magic_cmd
3181deplibs_check_method=$lt_cv_deplibs_check_method
3182test -z "$deplibs_check_method" && deplibs_check_method=unknown
3daf2614
DB
3183
3184_LT_DECL([], [deplibs_check_method], [1],
3185 [Method to check whether dependent libraries are shared objects])
3186_LT_DECL([], [file_magic_cmd], [1],
3187 [Command to use when deplibs_check_method == "file_magic"])
3188])# _LT_CHECK_MAGIC_METHOD
38dfb1e4
DB
3189
3190
3daf2614 3191# LT_PATH_NM
38dfb1e4 3192# ----------
3daf2614
DB
3193# find the pathname to a BSD- or MS-compatible name lister
3194AC_DEFUN([LT_PATH_NM],
3195[AC_REQUIRE([AC_PROG_CC])dnl
3196AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
38dfb1e4
DB
3197[if test -n "$NM"; then
3198 # Let the user override the test.
3199 lt_cv_path_NM="$NM"
3200else
3201 lt_nm_to_check="${ac_tool_prefix}nm"
3202 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
3203 lt_nm_to_check="$lt_nm_to_check nm"
3204 fi
3205 for lt_tmp_nm in $lt_nm_to_check; do
3206 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3207 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
3208 IFS="$lt_save_ifs"
3209 test -z "$ac_dir" && ac_dir=.
3210 tmp_nm="$ac_dir/$lt_tmp_nm"
3211 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
3212 # Check to see if the nm accepts a BSD-compat flag.
3213 # Adding the `sed 1q' prevents false positives on HP-UX, which says:
3214 # nm: unknown option "B" ignored
3215 # Tru64's nm complains that /dev/null is an invalid object file
3216 case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
3217 */dev/null* | *'Invalid file or object type'*)
3218 lt_cv_path_NM="$tmp_nm -B"
3219 break
3220 ;;
3221 *)
3222 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
3223 */dev/null*)
3224 lt_cv_path_NM="$tmp_nm -p"
3225 break
3226 ;;
3227 *)
3228 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3229 continue # so that we can try to find one that supports BSD flags
3230 ;;
3231 esac
3232 ;;
3233 esac
3234 fi
3235 done
3236 IFS="$lt_save_ifs"
3237 done
3daf2614 3238 : ${lt_cv_path_NM=no}
38dfb1e4 3239fi])
3daf2614
DB
3240if test "$lt_cv_path_NM" != "no"; then
3241 NM="$lt_cv_path_NM"
3242else
3243 # Didn't find any BSD compatible name lister, look for dumpbin.
3244 AC_CHECK_TOOLS(DUMPBIN, ["dumpbin -symbols" "link -dump -symbols"], :)
3245 AC_SUBST([DUMPBIN])
3246 if test "$DUMPBIN" != ":"; then
3247 NM="$DUMPBIN"
3248 fi
3249fi
3250test -z "$NM" && NM=nm
3251AC_SUBST([NM])
3252_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
3253
3254AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
3255 [lt_cv_nm_interface="BSD nm"
3256 echo "int some_variable = 0;" > conftest.$ac_ext
3257 (eval echo "\"\$as_me:__oline__: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
3258 (eval "$ac_compile" 2>conftest.err)
3259 cat conftest.err >&AS_MESSAGE_LOG_FD
3260 (eval echo "\"\$as_me:__oline__: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
3261 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3262 cat conftest.err >&AS_MESSAGE_LOG_FD
3263 (eval echo "\"\$as_me:__oline__: output\"" >&AS_MESSAGE_LOG_FD)
3264 cat conftest.out >&AS_MESSAGE_LOG_FD
3265 if $GREP 'External.*some_variable' conftest.out > /dev/null; then
3266 lt_cv_nm_interface="MS dumpbin"
3267 fi
3268 rm -f conftest*])
3269])# LT_PATH_NM
38dfb1e4 3270
3daf2614
DB
3271# Old names:
3272AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
3273AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
3274dnl aclocal-1.4 backwards compatibility:
3275dnl AC_DEFUN([AM_PROG_NM], [])
3276dnl AC_DEFUN([AC_PROG_NM], [])
38dfb1e4 3277
3daf2614
DB
3278
3279# LT_LIB_M
3280# --------
38dfb1e4 3281# check for math library
3daf2614 3282AC_DEFUN([LT_LIB_M],
38dfb1e4
DB
3283[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3284LIBM=
3285case $host in
3286*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
3287 # These system don't have libm, or don't need it
3288 ;;
3289*-ncr-sysv4.3*)
3290 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
3291 AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
3292 ;;
3293*)
3294 AC_CHECK_LIB(m, cos, LIBM="-lm")
3295 ;;
3296esac
3daf2614
DB
3297AC_SUBST([LIBM])
3298])# LT_LIB_M
38dfb1e4 3299
3daf2614
DB
3300# Old name:
3301AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
3302dnl aclocal-1.4 backwards compatibility:
3303dnl AC_DEFUN([AC_CHECK_LIBM], [])
38dfb1e4 3304
38dfb1e4 3305
3daf2614
DB
3306# _LT_COMPILER_NO_RTTI([TAGNAME])
3307# -------------------------------
3308m4_defun([_LT_COMPILER_NO_RTTI],
3309[m4_require([_LT_TAG_COMPILER])dnl
38dfb1e4 3310
3daf2614 3311_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
38dfb1e4 3312
3daf2614
DB
3313if test "$GCC" = yes; then
3314 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
38dfb1e4 3315
3daf2614
DB
3316 _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
3317 lt_cv_prog_compiler_rtti_exceptions,
3318 [-fno-rtti -fno-exceptions], [],
3319 [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
3320fi
3321_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
3322 [Compiler flag to turn off builtin functions])
3323])# _LT_COMPILER_NO_RTTI
38dfb1e4
DB
3324
3325
3daf2614
DB
3326# _LT_CMD_GLOBAL_SYMBOLS
3327# ----------------------
3328m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
3329[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3330AC_REQUIRE([AC_PROG_CC])dnl
3331AC_REQUIRE([LT_PATH_NM])dnl
3332AC_REQUIRE([LT_PATH_LD])dnl
3333m4_require([_LT_DECL_SED])dnl
3334m4_require([_LT_DECL_EGREP])dnl
3335m4_require([_LT_TAG_COMPILER])dnl
38dfb1e4 3336
3daf2614
DB
3337# Check for command to grab the raw symbol name followed by C symbol from nm.
3338AC_MSG_CHECKING([command to parse $NM output from $compiler object])
3339AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
38dfb1e4 3340[
3daf2614
DB
3341# These are sane defaults that work on at least a few old systems.
3342# [They come from Ultrix. What could be older than Ultrix?!! ;)]
38dfb1e4 3343
3daf2614
DB
3344# Character class describing NM global symbol codes.
3345symcode='[[BCDEGRST]]'
38dfb1e4 3346
3daf2614
DB
3347# Regexp to match symbols that can be accessed directly from C.
3348sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
38dfb1e4 3349
3daf2614
DB
3350# Define system-specific variables.
3351case $host_os in
3352aix*)
3353 symcode='[[BCDT]]'
3354 ;;
3355cygwin* | mingw* | pw32* | cegcc*)
3356 symcode='[[ABCDGISTW]]'
3357 ;;
3358hpux*)
3359 if test "$host_cpu" = ia64; then
3360 symcode='[[ABCDEGRST]]'
3361 fi
3362 ;;
3363irix* | nonstopux*)
3364 symcode='[[BCDEGRST]]'
3365 ;;
3366osf*)
3367 symcode='[[BCDEGQRST]]'
3368 ;;
3369solaris*)
3370 symcode='[[BDRT]]'
3371 ;;
3372sco3.2v5*)
3373 symcode='[[DT]]'
3374 ;;
3375sysv4.2uw2*)
3376 symcode='[[DT]]'
3377 ;;
3378sysv5* | sco5v6* | unixware* | OpenUNIX*)
3379 symcode='[[ABDT]]'
3380 ;;
3381sysv4)
3382 symcode='[[DFNSTU]]'
3383 ;;
3384esac
38dfb1e4 3385
3daf2614
DB
3386# If we're using GNU nm, then use its standard symbol codes.
3387case `$NM -V 2>&1` in
3388*GNU* | *'with BFD'*)
3389 symcode='[[ABCDGIRSTW]]' ;;
3390esac
38dfb1e4 3391
3daf2614
DB
3392# Transform an extracted symbol line into a proper C declaration.
3393# Some systems (esp. on ia64) link data and code symbols differently,
3394# so use this general approach.
3395lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
38dfb1e4 3396
3daf2614
DB
3397# Transform an extracted symbol line into symbol name and symbol address
3398lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'"
3399lt_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'"
38dfb1e4 3400
3daf2614
DB
3401# Handle CRLF in mingw tool chain
3402opt_cr=
3403case $build_os in
3404mingw*)
3405 opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
3406 ;;
3407esac
38dfb1e4 3408
3daf2614
DB
3409# Try without a prefix underscore, then with it.
3410for ac_symprfx in "" "_"; do
38dfb1e4 3411
3daf2614
DB
3412 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
3413 symxfrm="\\1 $ac_symprfx\\2 \\2"
38dfb1e4 3414
3daf2614
DB
3415 # Write the raw and C identifiers.
3416 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3417 # Fake it for dumpbin and say T for any non-static function
3418 # and D for any global variable.
3419 # Also find C++ and __fastcall symbols from MSVC++,
3420 # which start with @ or ?.
3421 lt_cv_sys_global_symbol_pipe="$AWK ['"\
3422" {last_section=section; section=\$ 3};"\
3423" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
3424" \$ 0!~/External *\|/{next};"\
3425" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
3426" {if(hide[section]) next};"\
3427" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
3428" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
3429" s[1]~/^[@?]/{print s[1], s[1]; next};"\
3430" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
3431" ' prfx=^$ac_symprfx]"
3432 else
3433 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
38dfb1e4 3434 fi
38dfb1e4 3435
3daf2614
DB
3436 # Check to see that the pipe works correctly.
3437 pipe_works=no
38dfb1e4 3438
3daf2614
DB
3439 rm -f conftest*
3440 cat > conftest.$ac_ext <<_LT_EOF
3441#ifdef __cplusplus
3442extern "C" {
3443#endif
3444char nm_test_var;
3445void nm_test_func(void);
3446void nm_test_func(void){}
3447#ifdef __cplusplus
3448}
3449#endif
3450int main(){nm_test_var='a';nm_test_func();return(0);}
3451_LT_EOF
38dfb1e4 3452
3daf2614
DB
3453 if AC_TRY_EVAL(ac_compile); then
3454 # Now try to grab the symbols.
3455 nlist=conftest.nm
3456 if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
3457 # Try sorting and uniquifying the output.
3458 if sort "$nlist" | uniq > "$nlist"T; then
3459 mv -f "$nlist"T "$nlist"
3460 else
3461 rm -f "$nlist"T
3462 fi
38dfb1e4 3463
3daf2614
DB
3464 # Make sure that we snagged all the symbols we need.
3465 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
3466 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
3467 cat <<_LT_EOF > conftest.$ac_ext
3468#ifdef __cplusplus
3469extern "C" {
3470#endif
38dfb1e4 3471
3daf2614
DB
3472_LT_EOF
3473 # Now generate the symbol file.
3474 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
38dfb1e4 3475
3daf2614 3476 cat <<_LT_EOF >> conftest.$ac_ext
38dfb1e4 3477
3daf2614
DB
3478/* The mapping between symbol names and symbols. */
3479const struct {
3480 const char *name;
3481 void *address;
3482}
3483lt__PROGRAM__LTX_preloaded_symbols[[]] =
3484{
3485 { "@PROGRAM@", (void *) 0 },
3486_LT_EOF
3487 $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
3488 cat <<\_LT_EOF >> conftest.$ac_ext
3489 {0, (void *) 0}
3490};
38dfb1e4 3491
3daf2614
DB
3492/* This works around a problem in FreeBSD linker */
3493#ifdef FREEBSD_WORKAROUND
3494static const void *lt_preloaded_setup() {
3495 return lt__PROGRAM__LTX_preloaded_symbols;
3496}
3497#endif
38dfb1e4 3498
3daf2614
DB
3499#ifdef __cplusplus
3500}
3501#endif
3502_LT_EOF
3503 # Now try linking the two files.
3504 mv conftest.$ac_objext conftstm.$ac_objext
3505 lt_save_LIBS="$LIBS"
3506 lt_save_CFLAGS="$CFLAGS"
3507 LIBS="conftstm.$ac_objext"
3508 CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
3509 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
3510 pipe_works=yes
3511 fi
3512 LIBS="$lt_save_LIBS"
3513 CFLAGS="$lt_save_CFLAGS"
3514 else
3515 echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
3516 fi
3517 else
3518 echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
3519 fi
38dfb1e4 3520 else
3daf2614 3521 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
38dfb1e4
DB
3522 fi
3523 else
3daf2614
DB
3524 echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
3525 cat conftest.$ac_ext >&5
38dfb1e4 3526 fi
3daf2614 3527 rm -rf conftest* conftst*
38dfb1e4 3528
3daf2614
DB
3529 # Do not use the global_symbol_pipe unless it works.
3530 if test "$pipe_works" = yes; then
3531 break
3532 else
3533 lt_cv_sys_global_symbol_pipe=
3534 fi
3535done
3536])
3537if test -z "$lt_cv_sys_global_symbol_pipe"; then
3538 lt_cv_sys_global_symbol_to_cdecl=
3539fi
3540if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
3541 AC_MSG_RESULT(failed)
38dfb1e4 3542else
3daf2614 3543 AC_MSG_RESULT(ok)
38dfb1e4
DB
3544fi
3545
3daf2614
DB
3546_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
3547 [Take the output of nm and produce a listing of raw symbols and C names])
3548_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
3549 [Transform the output of nm in a proper C declaration])
3550_LT_DECL([global_symbol_to_c_name_address],
3551 [lt_cv_sys_global_symbol_to_c_name_address], [1],
3552 [Transform the output of nm in a C name address pair])
3553_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
3554 [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
3555 [Transform the output of nm in a C name address pair when lib prefix is needed])
3556]) # _LT_CMD_GLOBAL_SYMBOLS
38dfb1e4 3557
38dfb1e4 3558
3daf2614
DB
3559# _LT_COMPILER_PIC([TAGNAME])
3560# ---------------------------
3561m4_defun([_LT_COMPILER_PIC],
3562[m4_require([_LT_TAG_COMPILER])dnl
3563_LT_TAGVAR(lt_prog_compiler_wl, $1)=
3564_LT_TAGVAR(lt_prog_compiler_pic, $1)=
3565_LT_TAGVAR(lt_prog_compiler_static, $1)=
38dfb1e4 3566
3daf2614
DB
3567AC_MSG_CHECKING([for $compiler option to produce PIC])
3568m4_if([$1], [CXX], [
3569 # C++ specific cases for pic, static, wl, etc.
3570 if test "$GXX" = yes; then
3571 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3572 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
38dfb1e4 3573
3daf2614
DB
3574 case $host_os in
3575 aix*)
3576 # All AIX code is PIC.
38dfb1e4 3577 if test "$host_cp