]> jfr.im git - solanum.git/blame - libratbox/aclocal.m4
rerun aclocal to include pkg.m4
[solanum.git] / libratbox / aclocal.m4
CommitLineData
e4cf89d4 1# generated automatically by aclocal 1.11.6 -*- Autoconf -*-
db137867
AC
2
3# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
e4cf89d4
AB
4# 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation,
5# Inc.
db137867
AC
6# This file is free software; the Free Software Foundation
7# gives unlimited permission to copy and/or distribute it,
8# with or without modifications, as long as this notice is preserved.
9
10# This program is distributed in the hope that it will be useful,
11# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
12# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
13# PARTICULAR PURPOSE.
14
b676ea3b
AC
15m4_ifndef([AC_AUTOCONF_VERSION],
16 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
e4cf89d4
AB
17m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
18[m4_warning([this file was generated for autoconf 2.69.
b676ea3b
AC
19You have another version of autoconf. It may work, but is not guaranteed to.
20If you have problems, you may need to regenerate the build system entirely.
21To do so, use the procedure documented by the package, typically `autoreconf'.])])
db137867
AC
22
23# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
7083c021
AC
24#
25# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
a949ab1a
AC
26# 2006, 2007, 2008, 2009, 2010, 2011 Free Software
27# Foundation, Inc.
7083c021
AC
28# Written by Gordon Matzigkeit, 1996
29#
30# This file is free software; the Free Software Foundation gives
31# unlimited permission to copy and/or distribute it, with or without
32# modifications, as long as this notice is preserved.
33
34m4_define([_LT_COPYING], [dnl
35# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
a949ab1a
AC
36# 2006, 2007, 2008, 2009, 2010, 2011 Free Software
37# Foundation, Inc.
7083c021
AC
38# Written by Gordon Matzigkeit, 1996
39#
40# This file is part of GNU Libtool.
41#
42# GNU Libtool is free software; you can redistribute it and/or
43# modify it under the terms of the GNU General Public License as
44# published by the Free Software Foundation; either version 2 of
45# the License, or (at your option) any later version.
46#
47# As a special exception to the GNU General Public License,
48# if you distribute this file as part of a program or library that
49# is built using GNU Libtool, you may include this file under the
50# same distribution terms that you use for the rest of that program.
51#
52# GNU Libtool is distributed in the hope that it will be useful,
53# but WITHOUT ANY WARRANTY; without even the implied warranty of
54# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
55# GNU General Public License for more details.
56#
57# You should have received a copy of the GNU General Public License
58# along with GNU Libtool; see the file COPYING. If not, a copy
59# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
60# obtained by writing to the Free Software Foundation, Inc.,
61# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
62])
db137867 63
b6d0720c 64# serial 57 LT_INIT
db137867
AC
65
66
7083c021
AC
67# LT_PREREQ(VERSION)
68# ------------------
69# Complain and exit if this libtool version is less that VERSION.
70m4_defun([LT_PREREQ],
71[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
72 [m4_default([$3],
73 [m4_fatal([Libtool version $1 or higher is required],
74 63)])],
75 [$2])])
db137867
AC
76
77
7083c021
AC
78# _LT_CHECK_BUILDDIR
79# ------------------
80# Complain if the absolute build directory name contains unusual characters
81m4_defun([_LT_CHECK_BUILDDIR],
82[case `pwd` in
83 *\ * | *\ *)
84 AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
85esac
86])
87
88
89# LT_INIT([OPTIONS])
90# ------------------
91AC_DEFUN([LT_INIT],
92[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
b6d0720c 93AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
7083c021
AC
94AC_BEFORE([$0], [LT_LANG])dnl
95AC_BEFORE([$0], [LT_OUTPUT])dnl
96AC_BEFORE([$0], [LTDL_INIT])dnl
97m4_require([_LT_CHECK_BUILDDIR])dnl
98
99dnl Autoconf doesn't catch unexpanded LT_ macros by default:
100m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
101m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
102dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
103dnl unless we require an AC_DEFUNed macro:
104AC_REQUIRE([LTOPTIONS_VERSION])dnl
105AC_REQUIRE([LTSUGAR_VERSION])dnl
106AC_REQUIRE([LTVERSION_VERSION])dnl
107AC_REQUIRE([LTOBSOLETE_VERSION])dnl
108m4_require([_LT_PROG_LTMAIN])dnl
109
b6d0720c
AC
110_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
111
7083c021
AC
112dnl Parse OPTIONS
113_LT_SET_OPTIONS([$0], [$1])
db137867
AC
114
115# This can be used to rebuild libtool when needed
7083c021 116LIBTOOL_DEPS="$ltmain"
db137867
AC
117
118# Always use our own libtool.
119LIBTOOL='$(SHELL) $(top_builddir)/libtool'
120AC_SUBST(LIBTOOL)dnl
121
7083c021 122_LT_SETUP
db137867 123
7083c021
AC
124# Only expand once:
125m4_define([LT_INIT])
126])# LT_INIT
db137867 127
7083c021
AC
128# Old names:
129AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
130AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
131dnl aclocal-1.4 backwards compatibility:
132dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
133dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
134
135
136# _LT_CC_BASENAME(CC)
137# -------------------
138# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
139m4_defun([_LT_CC_BASENAME],
140[for cc_temp in $1""; do
141 case $cc_temp in
142 compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
143 distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
144 \-*) ;;
145 *) break;;
146 esac
147done
b6d0720c 148cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
7083c021
AC
149])
150
151
152# _LT_FILEUTILS_DEFAULTS
153# ----------------------
154# It is okay to use these file commands and assume they have been set
155# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
156m4_defun([_LT_FILEUTILS_DEFAULTS],
157[: ${CP="cp -f"}
158: ${MV="mv -f"}
159: ${RM="rm -f"}
160])# _LT_FILEUTILS_DEFAULTS
161
162
163# _LT_SETUP
164# ---------
165m4_defun([_LT_SETUP],
166[AC_REQUIRE([AC_CANONICAL_HOST])dnl
db137867 167AC_REQUIRE([AC_CANONICAL_BUILD])dnl
b6d0720c
AC
168AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
169AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
170
a949ab1a
AC
171_LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
172dnl
7083c021
AC
173_LT_DECL([], [host_alias], [0], [The host system])dnl
174_LT_DECL([], [host], [0])dnl
175_LT_DECL([], [host_os], [0])dnl
176dnl
177_LT_DECL([], [build_alias], [0], [The build system])dnl
178_LT_DECL([], [build], [0])dnl
179_LT_DECL([], [build_os], [0])dnl
180dnl
db137867 181AC_REQUIRE([AC_PROG_CC])dnl
7083c021
AC
182AC_REQUIRE([LT_PATH_LD])dnl
183AC_REQUIRE([LT_PATH_NM])dnl
184dnl
db137867 185AC_REQUIRE([AC_PROG_LN_S])dnl
7083c021
AC
186test -z "$LN_S" && LN_S="ln -s"
187_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
188dnl
189AC_REQUIRE([LT_CMD_MAX_LEN])dnl
190_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
191_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
db137867 192dnl
7083c021
AC
193m4_require([_LT_FILEUTILS_DEFAULTS])dnl
194m4_require([_LT_CHECK_SHELL_FEATURES])dnl
b6d0720c 195m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
7083c021
AC
196m4_require([_LT_CMD_RELOAD])dnl
197m4_require([_LT_CHECK_MAGIC_METHOD])dnl
b6d0720c 198m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
7083c021
AC
199m4_require([_LT_CMD_OLD_ARCHIVE])dnl
200m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
b6d0720c 201m4_require([_LT_WITH_SYSROOT])dnl
7083c021
AC
202
203_LT_CONFIG_LIBTOOL_INIT([
204# See if we are running on zsh, and set the options which allow our
205# commands through without removal of \ escapes INIT.
206if test -n "\${ZSH_VERSION+set}" ; then
207 setopt NO_GLOB_SUBST
208fi
209])
210if test -n "${ZSH_VERSION+set}" ; then
211 setopt NO_GLOB_SUBST
212fi
213
214_LT_CHECK_OBJDIR
db137867 215
7083c021 216m4_require([_LT_TAG_COMPILER])dnl
db137867
AC
217
218case $host_os in
219aix3*)
220 # AIX sometimes has problems with the GCC collect2 program. For some
221 # reason, if we set the COLLECT_NAMES environment variable, the problems
222 # vanish in a puff of smoke.
223 if test "X${COLLECT_NAMES+set}" != Xset; then
224 COLLECT_NAMES=
225 export COLLECT_NAMES
226 fi
227 ;;
228esac
229
db137867 230# Global variables:
7083c021 231ofile=libtool
db137867
AC
232can_build_shared=yes
233
234# All known linkers require a `.a' archive for static linking (except MSVC,
235# which needs '.lib').
236libext=a
db137867 237
7083c021 238with_gnu_ld="$lt_cv_prog_gnu_ld"
db137867
AC
239
240old_CC="$CC"
241old_CFLAGS="$CFLAGS"
242
243# Set sane defaults for various variables
db137867
AC
244test -z "$CC" && CC=cc
245test -z "$LTCC" && LTCC=$CC
246test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
db137867 247test -z "$LD" && LD=ld
db137867
AC
248test -z "$ac_objext" && ac_objext=o
249
db137867
AC
250_LT_CC_BASENAME([$compiler])
251
252# Only perform the check for file, if the check method requires it
7083c021 253test -z "$MAGIC_CMD" && MAGIC_CMD=file
db137867
AC
254case $deplibs_check_method in
255file_magic*)
256 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
7083c021 257 _LT_PATH_MAGIC
db137867
AC
258 fi
259 ;;
260esac
261
7083c021
AC
262# Use C for the default configuration in the libtool script
263LT_SUPPORTED_TAG([CC])
264_LT_LANG_C_CONFIG
265_LT_LANG_DEFAULT_CONFIG
266_LT_CONFIG_COMMANDS
267])# _LT_SETUP
b676ea3b 268
db137867 269
b6d0720c
AC
270# _LT_PREPARE_SED_QUOTE_VARS
271# --------------------------
272# Define a few sed substitution that help us do robust quoting.
273m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
274[# Backslashify metacharacters that are still active within
275# double-quoted strings.
276sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
277
278# Same as above, but do not quote variable references.
279double_quote_subst='s/\([["`\\]]\)/\\\1/g'
280
281# Sed substitution to delay expansion of an escaped shell variable in a
282# double_quote_subst'ed string.
283delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
284
285# Sed substitution to delay expansion of an escaped single quote.
286delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
287
288# Sed substitution to avoid accidental globbing in evaled expressions
289no_glob_subst='s/\*/\\\*/g'
290])
291
7083c021
AC
292# _LT_PROG_LTMAIN
293# ---------------
294# Note that this code is called both from `configure', and `config.status'
295# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
296# `config.status' has no value for ac_aux_dir unless we are using Automake,
297# so we pass a copy along to make sure it has a sensible value anyway.
298m4_defun([_LT_PROG_LTMAIN],
299[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
300_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
301ltmain="$ac_aux_dir/ltmain.sh"
302])# _LT_PROG_LTMAIN
db137867 303
db137867 304
7083c021
AC
305
306# So that we can recreate a full libtool script including additional
307# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
308# in macros and then make a single call at the end using the `libtool'
309# label.
310
311
312# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
313# ----------------------------------------
314# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
315m4_define([_LT_CONFIG_LIBTOOL_INIT],
316[m4_ifval([$1],
317 [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
318 [$1
319])])])
320
321# Initialize.
322m4_define([_LT_OUTPUT_LIBTOOL_INIT])
323
324
325# _LT_CONFIG_LIBTOOL([COMMANDS])
326# ------------------------------
327# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
328m4_define([_LT_CONFIG_LIBTOOL],
329[m4_ifval([$1],
330 [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
331 [$1
332])])])
333
334# Initialize.
335m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
336
337
338# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
339# -----------------------------------------------------
340m4_defun([_LT_CONFIG_SAVE_COMMANDS],
341[_LT_CONFIG_LIBTOOL([$1])
342_LT_CONFIG_LIBTOOL_INIT([$2])
343])
344
345
346# _LT_FORMAT_COMMENT([COMMENT])
347# -----------------------------
348# Add leading comment marks to the start of each line, and a trailing
349# full-stop to the whole comment if one is not present already.
350m4_define([_LT_FORMAT_COMMENT],
351[m4_ifval([$1], [
352m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
353 [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
354)])
355
356
357
358
359
360# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
361# -------------------------------------------------------------------
362# CONFIGNAME is the name given to the value in the libtool script.
363# VARNAME is the (base) name used in the configure script.
364# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
365# VARNAME. Any other value will be used directly.
366m4_define([_LT_DECL],
367[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
368 [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
369 [m4_ifval([$1], [$1], [$2])])
370 lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
371 m4_ifval([$4],
372 [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
373 lt_dict_add_subkey([lt_decl_dict], [$2],
374 [tagged?], [m4_ifval([$5], [yes], [no])])])
375])
376
377
378# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
379# --------------------------------------------------------
380m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
381
382
383# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
384# ------------------------------------------------
385m4_define([lt_decl_tag_varnames],
386[_lt_decl_filter([tagged?], [yes], $@)])
387
388
389# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
390# ---------------------------------------------------------
391m4_define([_lt_decl_filter],
392[m4_case([$#],
393 [0], [m4_fatal([$0: too few arguments: $#])],
394 [1], [m4_fatal([$0: too few arguments: $#: $1])],
395 [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
396 [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
397 [lt_dict_filter([lt_decl_dict], $@)])[]dnl
398])
399
400
401# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
402# --------------------------------------------------
403m4_define([lt_decl_quote_varnames],
404[_lt_decl_filter([value], [1], $@)])
405
406
407# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
408# ---------------------------------------------------
409m4_define([lt_decl_dquote_varnames],
410[_lt_decl_filter([value], [2], $@)])
411
412
413# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
414# ---------------------------------------------------
415m4_define([lt_decl_varnames_tagged],
416[m4_assert([$# <= 2])dnl
417_$0(m4_quote(m4_default([$1], [[, ]])),
418 m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
419 m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
420m4_define([_lt_decl_varnames_tagged],
421[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
422
423
424# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
425# ------------------------------------------------
426m4_define([lt_decl_all_varnames],
427[_$0(m4_quote(m4_default([$1], [[, ]])),
428 m4_if([$2], [],
429 m4_quote(lt_decl_varnames),
430 m4_quote(m4_shift($@))))[]dnl
431])
432m4_define([_lt_decl_all_varnames],
433[lt_join($@, lt_decl_varnames_tagged([$1],
434 lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
435])
436
437
438# _LT_CONFIG_STATUS_DECLARE([VARNAME])
439# ------------------------------------
440# Quote a variable value, and forward it to `config.status' so that its
441# declaration there will have the same value as in `configure'. VARNAME
442# must have a single quote delimited value for this to work.
443m4_define([_LT_CONFIG_STATUS_DECLARE],
b6d0720c 444[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
7083c021
AC
445
446
447# _LT_CONFIG_STATUS_DECLARATIONS
448# ------------------------------
449# We delimit libtool config variables with single quotes, so when
450# we write them to config.status, we have to be sure to quote all
451# embedded single quotes properly. In configure, this macro expands
452# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
453#
b6d0720c 454# <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
7083c021
AC
455m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
456[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
457 [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
db137867
AC
458
459
7083c021
AC
460# _LT_LIBTOOL_TAGS
461# ----------------
462# Output comment and list of tags supported by the script
463m4_defun([_LT_LIBTOOL_TAGS],
464[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
465available_tags="_LT_TAGS"dnl
466])
467
468
469# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
470# -----------------------------------
471# Extract the dictionary values for VARNAME (optionally with TAG) and
472# expand to a commented shell variable setting:
473#
474# # Some comment about what VAR is for.
475# visible_name=$lt_internal_name
476m4_define([_LT_LIBTOOL_DECLARE],
477[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
478 [description])))[]dnl
479m4_pushdef([_libtool_name],
480 m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
481m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
482 [0], [_libtool_name=[$]$1],
483 [1], [_libtool_name=$lt_[]$1],
484 [2], [_libtool_name=$lt_[]$1],
485 [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
486m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
487])
488
489
490# _LT_LIBTOOL_CONFIG_VARS
491# -----------------------
492# Produce commented declarations of non-tagged libtool config variables
493# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
494# script. Tagged libtool config variables (even for the LIBTOOL CONFIG
495# section) are produced by _LT_LIBTOOL_TAG_VARS.
496m4_defun([_LT_LIBTOOL_CONFIG_VARS],
497[m4_foreach([_lt_var],
498 m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
499 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
500
501
502# _LT_LIBTOOL_TAG_VARS(TAG)
503# -------------------------
504m4_define([_LT_LIBTOOL_TAG_VARS],
505[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
506 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
507
508
509# _LT_TAGVAR(VARNAME, [TAGNAME])
510# ------------------------------
511m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
512
513
514# _LT_CONFIG_COMMANDS
db137867 515# -------------------
7083c021
AC
516# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
517# variables for single and double quote escaping we saved from calls
518# to _LT_DECL, we can put quote escaped variables declarations
519# into `config.status', and then the shell code to quote escape them in
520# for loops in `config.status'. Finally, any additional code accumulated
521# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
522m4_defun([_LT_CONFIG_COMMANDS],
523[AC_PROVIDE_IFELSE([LT_OUTPUT],
524 dnl If the libtool generation code has been placed in $CONFIG_LT,
525 dnl instead of duplicating it all over again into config.status,
526 dnl then we will have config.status run $CONFIG_LT later, so it
527 dnl needs to know what name is stored there:
528 [AC_CONFIG_COMMANDS([libtool],
529 [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
530 dnl If the libtool generation code is destined for config.status,
531 dnl expand the accumulated commands and init code now:
532 [AC_CONFIG_COMMANDS([libtool],
533 [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
534])#_LT_CONFIG_COMMANDS
535
536
537# Initialize.
538m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
539[
540
541# The HP-UX ksh and POSIX shell print the target directory to stdout
542# if CDPATH is set.
543(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
544
545sed_quote_subst='$sed_quote_subst'
546double_quote_subst='$double_quote_subst'
547delay_variable_subst='$delay_variable_subst'
548_LT_CONFIG_STATUS_DECLARATIONS
549LTCC='$LTCC'
550LTCFLAGS='$LTCFLAGS'
551compiler='$compiler_DEFAULT'
552
b6d0720c
AC
553# A function that is used when there is no print builtin or printf.
554func_fallback_echo ()
555{
556 eval 'cat <<_LTECHO_EOF
557\$[]1
558_LTECHO_EOF'
559}
560
7083c021
AC
561# Quote evaled strings.
562for var in lt_decl_all_varnames([[ \
563]], lt_decl_quote_varnames); do
b6d0720c 564 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
7083c021 565 *[[\\\\\\\`\\"\\\$]]*)
b6d0720c 566 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
7083c021
AC
567 ;;
568 *)
569 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
570 ;;
571 esac
572done
573
574# Double-quote double-evaled strings.
575for var in lt_decl_all_varnames([[ \
576]], lt_decl_dquote_varnames); do
b6d0720c 577 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
7083c021 578 *[[\\\\\\\`\\"\\\$]]*)
b6d0720c 579 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
7083c021
AC
580 ;;
581 *)
582 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
583 ;;
584 esac
585done
586
7083c021
AC
587_LT_OUTPUT_LIBTOOL_INIT
588])
589
b6d0720c
AC
590# _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
591# ------------------------------------
592# Generate a child script FILE with all initialization necessary to
593# reuse the environment learned by the parent script, and make the
594# file executable. If COMMENT is supplied, it is inserted after the
595# `#!' sequence but before initialization text begins. After this
596# macro, additional text can be appended to FILE to form the body of
597# the child script. The macro ends with non-zero status if the
598# file could not be fully written (such as if the disk is full).
599m4_ifdef([AS_INIT_GENERATED],
600[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
601[m4_defun([_LT_GENERATED_FILE_INIT],
602[m4_require([AS_PREPARE])]dnl
603[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
604[lt_write_fail=0
605cat >$1 <<_ASEOF || lt_write_fail=1
606#! $SHELL
607# Generated by $as_me.
608$2
609SHELL=\${CONFIG_SHELL-$SHELL}
610export SHELL
611_ASEOF
612cat >>$1 <<\_ASEOF || lt_write_fail=1
613AS_SHELL_SANITIZE
614_AS_PREPARE
615exec AS_MESSAGE_FD>&1
616_ASEOF
617test $lt_write_fail = 0 && chmod +x $1[]dnl
618m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
7083c021
AC
619
620# LT_OUTPUT
621# ---------
622# This macro allows early generation of the libtool script (before
623# AC_OUTPUT is called), incase it is used in configure for compilation
624# tests.
625AC_DEFUN([LT_OUTPUT],
626[: ${CONFIG_LT=./config.lt}
627AC_MSG_NOTICE([creating $CONFIG_LT])
b6d0720c
AC
628_LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
629[# Run this file to recreate a libtool stub with the current configuration.])
7083c021
AC
630
631cat >>"$CONFIG_LT" <<\_LTEOF
b6d0720c 632lt_cl_silent=false
7083c021
AC
633exec AS_MESSAGE_LOG_FD>>config.log
634{
635 echo
636 AS_BOX([Running $as_me.])
637} >&AS_MESSAGE_LOG_FD
638
639lt_cl_help="\
640\`$as_me' creates a local libtool stub from the current configuration,
641for use in further configure time tests before the real libtool is
642generated.
643
644Usage: $[0] [[OPTIONS]]
645
646 -h, --help print this help, then exit
647 -V, --version print version number, then exit
648 -q, --quiet do not print progress messages
649 -d, --debug don't remove temporary files
650
651Report bugs to <bug-libtool@gnu.org>."
652
653lt_cl_version="\
654m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
655m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
656configured by $[0], generated by m4_PACKAGE_STRING.
657
a949ab1a 658Copyright (C) 2011 Free Software Foundation, Inc.
7083c021
AC
659This config.lt script is free software; the Free Software Foundation
660gives unlimited permision to copy, distribute and modify it."
661
662while test $[#] != 0
663do
664 case $[1] in
665 --version | --v* | -V )
666 echo "$lt_cl_version"; exit 0 ;;
667 --help | --h* | -h )
668 echo "$lt_cl_help"; exit 0 ;;
669 --debug | --d* | -d )
670 debug=: ;;
671 --quiet | --q* | --silent | --s* | -q )
672 lt_cl_silent=: ;;
673
674 -*) AC_MSG_ERROR([unrecognized option: $[1]
675Try \`$[0] --help' for more information.]) ;;
676
677 *) AC_MSG_ERROR([unrecognized argument: $[1]
678Try \`$[0] --help' for more information.]) ;;
679 esac
680 shift
681done
682
683if $lt_cl_silent; then
684 exec AS_MESSAGE_FD>/dev/null
685fi
686_LTEOF
687
688cat >>"$CONFIG_LT" <<_LTEOF
689_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
690_LTEOF
691
692cat >>"$CONFIG_LT" <<\_LTEOF
693AC_MSG_NOTICE([creating $ofile])
694_LT_OUTPUT_LIBTOOL_COMMANDS
695AS_EXIT(0)
696_LTEOF
697chmod +x "$CONFIG_LT"
698
699# configure is writing to config.log, but config.lt does its own redirection,
700# appending to config.log, which fails on DOS, as config.log is still kept
701# open by configure. Here we exec the FD to /dev/null, effectively closing
702# config.log, so it can be properly (re)opened and appended to by config.lt.
b6d0720c
AC
703lt_cl_success=:
704test "$silent" = yes &&
705 lt_config_lt_args="$lt_config_lt_args --quiet"
706exec AS_MESSAGE_LOG_FD>/dev/null
707$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
708exec AS_MESSAGE_LOG_FD>>config.log
709$lt_cl_success || AS_EXIT(1)
7083c021
AC
710])# LT_OUTPUT
711
712
713# _LT_CONFIG(TAG)
714# ---------------
715# If TAG is the built-in tag, create an initial libtool script with a
716# default configuration from the untagged config vars. Otherwise add code
717# to config.status for appending the configuration named by TAG from the
718# matching tagged config vars.
719m4_defun([_LT_CONFIG],
720[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
721_LT_CONFIG_SAVE_COMMANDS([
722 m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
723 m4_if(_LT_TAG, [C], [
724 # See if we are running on zsh, and set the options which allow our
725 # commands through without removal of \ escapes.
726 if test -n "${ZSH_VERSION+set}" ; then
727 setopt NO_GLOB_SUBST
728 fi
729
730 cfgfile="${ofile}T"
731 trap "$RM \"$cfgfile\"; exit 1" 1 2 15
732 $RM "$cfgfile"
733
734 cat <<_LT_EOF >> "$cfgfile"
735#! $SHELL
736
737# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
738# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
739# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
740# NOTE: Changes made to this file will be lost: look at ltmain.sh.
741#
742_LT_COPYING
743_LT_LIBTOOL_TAGS
744
745# ### BEGIN LIBTOOL CONFIG
746_LT_LIBTOOL_CONFIG_VARS
747_LT_LIBTOOL_TAG_VARS
748# ### END LIBTOOL CONFIG
749
750_LT_EOF
751
752 case $host_os in
753 aix3*)
754 cat <<\_LT_EOF >> "$cfgfile"
755# AIX sometimes has problems with the GCC collect2 program. For some
756# reason, if we set the COLLECT_NAMES environment variable, the problems
757# vanish in a puff of smoke.
758if test "X${COLLECT_NAMES+set}" != Xset; then
759 COLLECT_NAMES=
760 export COLLECT_NAMES
761fi
762_LT_EOF
763 ;;
764 esac
765
766 _LT_PROG_LTMAIN
767
768 # We use sed instead of cat because bash on DJGPP gets confused if
769 # if finds mixed CR/LF and LF-only lines. Since sed operates in
770 # text mode, it properly converts lines to CR/LF. This bash problem
771 # is reportedly fixed, but why not run on old versions too?
b6d0720c
AC
772 sed '$q' "$ltmain" >> "$cfgfile" \
773 || (rm -f "$cfgfile"; exit 1)
7083c021 774
b6d0720c 775 _LT_PROG_REPLACE_SHELLFNS
7083c021 776
b6d0720c 777 mv -f "$cfgfile" "$ofile" ||
7083c021
AC
778 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
779 chmod +x "$ofile"
780],
781[cat <<_LT_EOF >> "$ofile"
782
783dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
784dnl in a comment (ie after a #).
785# ### BEGIN LIBTOOL TAG CONFIG: $1
786_LT_LIBTOOL_TAG_VARS(_LT_TAG)
787# ### END LIBTOOL TAG CONFIG: $1
788_LT_EOF
789])dnl /m4_if
790],
791[m4_if([$1], [], [
792 PACKAGE='$PACKAGE'
793 VERSION='$VERSION'
794 TIMESTAMP='$TIMESTAMP'
795 RM='$RM'
796 ofile='$ofile'], [])
797])dnl /_LT_CONFIG_SAVE_COMMANDS
798])# _LT_CONFIG
799
800
801# LT_SUPPORTED_TAG(TAG)
802# ---------------------
803# Trace this macro to discover what tags are supported by the libtool
804# --tag option, using:
805# autoconf --trace 'LT_SUPPORTED_TAG:$1'
806AC_DEFUN([LT_SUPPORTED_TAG], [])
807
808
809# C support is built-in for now
810m4_define([_LT_LANG_C_enabled], [])
811m4_define([_LT_TAGS], [])
812
813
814# LT_LANG(LANG)
815# -------------
816# Enable libtool support for the given language if not already enabled.
817AC_DEFUN([LT_LANG],
818[AC_BEFORE([$0], [LT_OUTPUT])dnl
819m4_case([$1],
820 [C], [_LT_LANG(C)],
821 [C++], [_LT_LANG(CXX)],
a949ab1a 822 [Go], [_LT_LANG(GO)],
7083c021
AC
823 [Java], [_LT_LANG(GCJ)],
824 [Fortran 77], [_LT_LANG(F77)],
825 [Fortran], [_LT_LANG(FC)],
826 [Windows Resource], [_LT_LANG(RC)],
827 [m4_ifdef([_LT_LANG_]$1[_CONFIG],
828 [_LT_LANG($1)],
829 [m4_fatal([$0: unsupported language: "$1"])])])dnl
830])# LT_LANG
831
832
833# _LT_LANG(LANGNAME)
834# ------------------
835m4_defun([_LT_LANG],
836[m4_ifdef([_LT_LANG_]$1[_enabled], [],
837 [LT_SUPPORTED_TAG([$1])dnl
838 m4_append([_LT_TAGS], [$1 ])dnl
839 m4_define([_LT_LANG_]$1[_enabled], [])dnl
840 _LT_LANG_$1_CONFIG($1)])dnl
841])# _LT_LANG
842
843
a949ab1a
AC
844m4_ifndef([AC_PROG_GO], [
845# NOTE: This macro has been submitted for inclusion into #
846# GNU Autoconf as AC_PROG_GO. When it is available in #
847# a released version of Autoconf we should remove this #
848# macro and use it instead. #
849m4_defun([AC_PROG_GO],
850[AC_LANG_PUSH(Go)dnl
851AC_ARG_VAR([GOC], [Go compiler command])dnl
852AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
853_AC_ARG_VAR_LDFLAGS()dnl
854AC_CHECK_TOOL(GOC, gccgo)
855if test -z "$GOC"; then
856 if test -n "$ac_tool_prefix"; then
857 AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
858 fi
859fi
860if test -z "$GOC"; then
861 AC_CHECK_PROG(GOC, gccgo, gccgo, false)
862fi
863])#m4_defun
864])#m4_ifndef
865
866
7083c021
AC
867# _LT_LANG_DEFAULT_CONFIG
868# -----------------------
869m4_defun([_LT_LANG_DEFAULT_CONFIG],
870[AC_PROVIDE_IFELSE([AC_PROG_CXX],
871 [LT_LANG(CXX)],
872 [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
873
874AC_PROVIDE_IFELSE([AC_PROG_F77],
875 [LT_LANG(F77)],
876 [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
877
878AC_PROVIDE_IFELSE([AC_PROG_FC],
879 [LT_LANG(FC)],
880 [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
881
882dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
883dnl pulling things in needlessly.
884AC_PROVIDE_IFELSE([AC_PROG_GCJ],
885 [LT_LANG(GCJ)],
886 [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
887 [LT_LANG(GCJ)],
888 [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
889 [LT_LANG(GCJ)],
890 [m4_ifdef([AC_PROG_GCJ],
891 [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
892 m4_ifdef([A][M_PROG_GCJ],
893 [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
894 m4_ifdef([LT_PROG_GCJ],
895 [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
896
a949ab1a
AC
897AC_PROVIDE_IFELSE([AC_PROG_GO],
898 [LT_LANG(GO)],
899 [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
900
7083c021
AC
901AC_PROVIDE_IFELSE([LT_PROG_RC],
902 [LT_LANG(RC)],
903 [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
904])# _LT_LANG_DEFAULT_CONFIG
905
906# Obsolete macros:
907AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
908AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
909AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
910AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
b6d0720c 911AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
7083c021
AC
912dnl aclocal-1.4 backwards compatibility:
913dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
914dnl AC_DEFUN([AC_LIBTOOL_F77], [])
915dnl AC_DEFUN([AC_LIBTOOL_FC], [])
916dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
b6d0720c 917dnl AC_DEFUN([AC_LIBTOOL_RC], [])
7083c021
AC
918
919
920# _LT_TAG_COMPILER
921# ----------------
922m4_defun([_LT_TAG_COMPILER],
db137867
AC
923[AC_REQUIRE([AC_PROG_CC])dnl
924
7083c021
AC
925_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
926_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
927_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
928_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
929
db137867
AC
930# If no C compiler was specified, use CC.
931LTCC=${LTCC-"$CC"}
932
933# If no C compiler flags were specified, use CFLAGS.
934LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
935
936# Allow CC to be a program name with arguments.
937compiler=$CC
7083c021 938])# _LT_TAG_COMPILER
db137867
AC
939
940
941# _LT_COMPILER_BOILERPLATE
942# ------------------------
943# Check for compiler boilerplate output or warnings with
944# the simple compiler test code.
7083c021
AC
945m4_defun([_LT_COMPILER_BOILERPLATE],
946[m4_require([_LT_DECL_SED])dnl
db137867
AC
947ac_outfile=conftest.$ac_objext
948echo "$lt_simple_compile_test_code" >conftest.$ac_ext
949eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
950_lt_compiler_boilerplate=`cat conftest.err`
7083c021 951$RM conftest*
db137867
AC
952])# _LT_COMPILER_BOILERPLATE
953
954
955# _LT_LINKER_BOILERPLATE
956# ----------------------
957# Check for linker boilerplate output or warnings with
958# the simple link test code.
7083c021
AC
959m4_defun([_LT_LINKER_BOILERPLATE],
960[m4_require([_LT_DECL_SED])dnl
db137867
AC
961ac_outfile=conftest.$ac_objext
962echo "$lt_simple_link_test_code" >conftest.$ac_ext
963eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
964_lt_linker_boilerplate=`cat conftest.err`
7083c021 965$RM -r conftest*
db137867
AC
966])# _LT_LINKER_BOILERPLATE
967
b676ea3b 968# _LT_REQUIRED_DARWIN_CHECKS
7083c021
AC
969# -------------------------
970m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
b676ea3b
AC
971 case $host_os in
972 rhapsody* | darwin*)
973 AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
974 AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
7083c021
AC
975 AC_CHECK_TOOL([LIPO], [lipo], [:])
976 AC_CHECK_TOOL([OTOOL], [otool], [:])
977 AC_CHECK_TOOL([OTOOL64], [otool64], [:])
978 _LT_DECL([], [DSYMUTIL], [1],
979 [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
980 _LT_DECL([], [NMEDIT], [1],
981 [Tool to change global to local symbols on Mac OS X])
982 _LT_DECL([], [LIPO], [1],
983 [Tool to manipulate fat objects and archives on Mac OS X])
984 _LT_DECL([], [OTOOL], [1],
985 [ldd/readelf like tool for Mach-O binaries on Mac OS X])
986 _LT_DECL([], [OTOOL64], [1],
987 [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
b676ea3b
AC
988
989 AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
990 [lt_cv_apple_cc_single_mod=no
991 if test -z "${LT_MULTI_MODULE}"; then
7083c021
AC
992 # By default we will add the -single_module flag. You can override
993 # by either setting the environment variable LT_MULTI_MODULE
994 # non-empty at configure time, or by adding -multi_module to the
995 # link flags.
996 rm -rf libconftest.dylib*
997 echo "int foo(void){return 1;}" > conftest.c
998 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
999-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
1000 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
1001 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
1002 _lt_result=$?
a949ab1a
AC
1003 # If there is a non-empty error log, and "single_module"
1004 # appears in it, assume the flag caused a linker warning
1005 if test -s conftest.err && $GREP single_module conftest.err; then
1006 cat conftest.err >&AS_MESSAGE_LOG_FD
1007 # Otherwise, if the output was created with a 0 exit code from
1008 # the compiler, it worked.
1009 elif test -f libconftest.dylib && test $_lt_result -eq 0; then
7083c021
AC
1010 lt_cv_apple_cc_single_mod=yes
1011 else
1012 cat conftest.err >&AS_MESSAGE_LOG_FD
1013 fi
1014 rm -rf libconftest.dylib*
1015 rm -f conftest.*
b676ea3b 1016 fi])
a949ab1a 1017
b676ea3b
AC
1018 AC_CACHE_CHECK([for -exported_symbols_list linker flag],
1019 [lt_cv_ld_exported_symbols_list],
1020 [lt_cv_ld_exported_symbols_list=no
1021 save_LDFLAGS=$LDFLAGS
1022 echo "_main" > conftest.sym
1023 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
1024 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
7083c021
AC
1025 [lt_cv_ld_exported_symbols_list=yes],
1026 [lt_cv_ld_exported_symbols_list=no])
1027 LDFLAGS="$save_LDFLAGS"
b676ea3b 1028 ])
a949ab1a 1029
b6d0720c
AC
1030 AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
1031 [lt_cv_ld_force_load=no
1032 cat > conftest.c << _LT_EOF
1033int forced_loaded() { return 2;}
1034_LT_EOF
1035 echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
1036 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
1037 echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
1038 $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
1039 echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
1040 $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
1041 cat > conftest.c << _LT_EOF
1042int main() { return 0;}
1043_LT_EOF
1044 echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
1045 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
1046 _lt_result=$?
a949ab1a
AC
1047 if test -s conftest.err && $GREP force_load conftest.err; then
1048 cat conftest.err >&AS_MESSAGE_LOG_FD
1049 elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then
b6d0720c
AC
1050 lt_cv_ld_force_load=yes
1051 else
1052 cat conftest.err >&AS_MESSAGE_LOG_FD
1053 fi
1054 rm -f conftest.err libconftest.a conftest conftest.c
1055 rm -rf conftest.dSYM
1056 ])
b676ea3b 1057 case $host_os in
7083c021 1058 rhapsody* | darwin1.[[012]])
b676ea3b
AC
1059 _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
1060 darwin1.*)
7083c021
AC
1061 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
1062 darwin*) # darwin 5.x on
b676ea3b
AC
1063 # if running on 10.5 or later, the deployment target defaults
1064 # to the OS version, if on x86, and 10.4, the deployment
1065 # target defaults to 10.4. Don't you love it?
1066 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
7083c021
AC
1067 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
1068 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
1069 10.[[012]]*)
1070 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
1071 10.*)
1072 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
b676ea3b
AC
1073 esac
1074 ;;
1075 esac
1076 if test "$lt_cv_apple_cc_single_mod" = "yes"; then
1077 _lt_dar_single_mod='$single_module'
1078 fi
1079 if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
1080 _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
1081 else
7083c021 1082 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
b676ea3b 1083 fi
b6d0720c 1084 if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
7083c021 1085 _lt_dsymutil='~$DSYMUTIL $lib || :'
b676ea3b
AC
1086 else
1087 _lt_dsymutil=
1088 fi
1089 ;;
1090 esac
1091])
db137867 1092
7083c021 1093
a949ab1a
AC
1094# _LT_DARWIN_LINKER_FEATURES([TAG])
1095# ---------------------------------
7083c021
AC
1096# Checks for linker and compiler features on darwin
1097m4_defun([_LT_DARWIN_LINKER_FEATURES],
1098[
1099 m4_require([_LT_REQUIRED_DARWIN_CHECKS])
1100 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
1101 _LT_TAGVAR(hardcode_direct, $1)=no
1102 _LT_TAGVAR(hardcode_automatic, $1)=yes
1103 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
b6d0720c
AC
1104 if test "$lt_cv_ld_force_load" = "yes"; then
1105 _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
a949ab1a
AC
1106 m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
1107 [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes])
b6d0720c
AC
1108 else
1109 _LT_TAGVAR(whole_archive_flag_spec, $1)=''
1110 fi
7083c021
AC
1111 _LT_TAGVAR(link_all_deplibs, $1)=yes
1112 _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
1113 case $cc_basename in
1114 ifort*) _lt_dar_can_shared=yes ;;
1115 *) _lt_dar_can_shared=$GCC ;;
1116 esac
1117 if test "$_lt_dar_can_shared" = "yes"; then
b6d0720c 1118 output_verbose_link_cmd=func_echo_all
7083c021
AC
1119 _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
1120 _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
1121 _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
1122 _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
1123 m4_if([$1], [CXX],
1124[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then
1125 _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dsymutil}"
1126 _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \${lib}-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \${lib}-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring${_lt_dar_export_syms}${_lt_dsymutil}"
1127 fi
1128],[])
1129 else
1130 _LT_TAGVAR(ld_shlibs, $1)=no
1131 fi
1132])
1133
b6d0720c
AC
1134# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
1135# ----------------------------------
db137867
AC
1136# Links a minimal program and checks the executable
1137# for the system default hardcoded library path. In most cases,
1138# this is /usr/lib:/lib, but when the MPI compilers are used
1139# the location of the communication and MPI libs are included too.
1140# If we don't find anything, use the default library path according
1141# to the aix ld manual.
b6d0720c
AC
1142# Store the results from the different compilers for each TAGNAME.
1143# Allow to override them for all tags through lt_cv_aix_libpath.
7083c021
AC
1144m4_defun([_LT_SYS_MODULE_PATH_AIX],
1145[m4_require([_LT_DECL_SED])dnl
b6d0720c
AC
1146if test "${lt_cv_aix_libpath+set}" = set; then
1147 aix_libpath=$lt_cv_aix_libpath
1148else
1149 AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
1150 [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
1151 lt_aix_libpath_sed='[
1152 /Import File Strings/,/^$/ {
1153 /^0/ {
1154 s/^0 *\([^ ]*\) *$/\1/
1155 p
1156 }
1157 }]'
1158 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1159 # Check for a 64-bit object if we didn't find anything.
1160 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1161 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1162 fi],[])
1163 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1164 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib"
1165 fi
1166 ])
1167 aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
1168fi
7083c021 1169])# _LT_SYS_MODULE_PATH_AIX
db137867
AC
1170
1171
7083c021
AC
1172# _LT_SHELL_INIT(ARG)
1173# -------------------
1174m4_define([_LT_SHELL_INIT],
b6d0720c
AC
1175[m4_divert_text([M4SH-INIT], [$1
1176])])# _LT_SHELL_INIT
1177
db137867
AC
1178
1179
7083c021
AC
1180# _LT_PROG_ECHO_BACKSLASH
1181# -----------------------
b6d0720c
AC
1182# Find how we can fake an echo command that does not interpret backslash.
1183# In particular, with Autoconf 2.60 or later we add some code to the start
1184# of the generated configure script which will find a shell with a builtin
1185# printf (which we can use as an echo command).
7083c021 1186m4_defun([_LT_PROG_ECHO_BACKSLASH],
b6d0720c
AC
1187[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1188ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1189ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1190
1191AC_MSG_CHECKING([how to print strings])
1192# Test print first, because it will be a builtin if present.
1193if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
1194 test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
1195 ECHO='print -r --'
1196elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
1197 ECHO='printf %s\n'
db137867 1198else
b6d0720c
AC
1199 # Use this function as a fallback that always works.
1200 func_fallback_echo ()
1201 {
1202 eval 'cat <<_LTECHO_EOF
1203$[]1
1204_LTECHO_EOF'
1205 }
1206 ECHO='func_fallback_echo'
db137867
AC
1207fi
1208
b6d0720c
AC
1209# func_echo_all arg...
1210# Invoke $ECHO with all args, space-separated.
1211func_echo_all ()
1212{
1213 $ECHO "$*"
1214}
db137867 1215
b6d0720c
AC
1216case "$ECHO" in
1217 printf*) AC_MSG_RESULT([printf]) ;;
1218 print*) AC_MSG_RESULT([print -r]) ;;
1219 *) AC_MSG_RESULT([cat]) ;;
1220esac
db137867 1221
b6d0720c
AC
1222m4_ifdef([_AS_DETECT_SUGGESTED],
1223[_AS_DETECT_SUGGESTED([
1224 test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
1225 ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1226 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1227 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1228 PATH=/empty FPATH=/empty; export PATH FPATH
1229 test "X`printf %s $ECHO`" = "X$ECHO" \
1230 || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
db137867 1231
7083c021 1232_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
b6d0720c 1233_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
7083c021 1234])# _LT_PROG_ECHO_BACKSLASH
db137867
AC
1235
1236
b6d0720c
AC
1237# _LT_WITH_SYSROOT
1238# ----------------
1239AC_DEFUN([_LT_WITH_SYSROOT],
1240[AC_MSG_CHECKING([for sysroot])
1241AC_ARG_WITH([sysroot],
1242[ --with-sysroot[=DIR] Search for dependent libraries within DIR
1243 (or the compiler's sysroot if not specified).],
1244[], [with_sysroot=no])
1245
1246dnl lt_sysroot will always be passed unquoted. We quote it here
1247dnl in case the user passed a directory name.
1248lt_sysroot=
1249case ${with_sysroot} in #(
1250 yes)
1251 if test "$GCC" = yes; then
1252 lt_sysroot=`$CC --print-sysroot 2>/dev/null`
1253 fi
1254 ;; #(
1255 /*)
1256 lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
1257 ;; #(
1258 no|'')
1259 ;; #(
1260 *)
1261 AC_MSG_RESULT([${with_sysroot}])
1262 AC_MSG_ERROR([The sysroot must be an absolute path.])
1263 ;;
1264esac
1265
1266 AC_MSG_RESULT([${lt_sysroot:-no}])
1267_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
1268[dependent libraries, and in which our libraries should be installed.])])
1269
7083c021
AC
1270# _LT_ENABLE_LOCK
1271# ---------------
1272m4_defun([_LT_ENABLE_LOCK],
db137867 1273[AC_ARG_ENABLE([libtool-lock],
7083c021
AC
1274 [AS_HELP_STRING([--disable-libtool-lock],
1275 [avoid locking (might break parallel builds)])])
db137867
AC
1276test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
1277
1278# Some flags need to be propagated to the compiler or linker for good
1279# libtool support.
1280case $host in
1281ia64-*-hpux*)
1282 # Find out which ABI we are using.
1283 echo 'int i;' > conftest.$ac_ext
1284 if AC_TRY_EVAL(ac_compile); then
1285 case `/usr/bin/file conftest.$ac_objext` in
7083c021
AC
1286 *ELF-32*)
1287 HPUX_IA64_MODE="32"
1288 ;;
1289 *ELF-64*)
1290 HPUX_IA64_MODE="64"
1291 ;;
db137867
AC
1292 esac
1293 fi
1294 rm -rf conftest*
1295 ;;
1296*-*-irix6*)
1297 # Find out which ABI we are using.
b6d0720c 1298 echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
db137867 1299 if AC_TRY_EVAL(ac_compile); then
7083c021
AC
1300 if test "$lt_cv_prog_gnu_ld" = yes; then
1301 case `/usr/bin/file conftest.$ac_objext` in
1302 *32-bit*)
1303 LD="${LD-ld} -melf32bsmip"
1304 ;;
1305 *N32*)
1306 LD="${LD-ld} -melf32bmipn32"
1307 ;;
1308 *64-bit*)
1309 LD="${LD-ld} -melf64bmip"
1310 ;;
1311 esac
1312 else
1313 case `/usr/bin/file conftest.$ac_objext` in
1314 *32-bit*)
1315 LD="${LD-ld} -32"
1316 ;;
1317 *N32*)
1318 LD="${LD-ld} -n32"
1319 ;;
1320 *64-bit*)
1321 LD="${LD-ld} -64"
1322 ;;
1323 esac
1324 fi
db137867
AC
1325 fi
1326 rm -rf conftest*
1327 ;;
1328
1329x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
7083c021 1330s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
db137867
AC
1331 # Find out which ABI we are using.
1332 echo 'int i;' > conftest.$ac_ext
1333 if AC_TRY_EVAL(ac_compile); then
1334 case `/usr/bin/file conftest.o` in
7083c021
AC
1335 *32-bit*)
1336 case $host in
1337 x86_64-*kfreebsd*-gnu)
1338 LD="${LD-ld} -m elf_i386_fbsd"
1339 ;;
1340 x86_64-*linux*)
1341 LD="${LD-ld} -m elf_i386"
1342 ;;
1343 ppc64-*linux*|powerpc64-*linux*)
1344 LD="${LD-ld} -m elf32ppclinux"
1345 ;;
1346 s390x-*linux*)
1347 LD="${LD-ld} -m elf_s390"
1348 ;;
1349 sparc64-*linux*)
1350 LD="${LD-ld} -m elf32_sparc"
1351 ;;
1352 esac
1353 ;;
1354 *64-bit*)
1355 case $host in
1356 x86_64-*kfreebsd*-gnu)
1357 LD="${LD-ld} -m elf_x86_64_fbsd"
1358 ;;
1359 x86_64-*linux*)
1360 LD="${LD-ld} -m elf_x86_64"
1361 ;;
1362 ppc*-*linux*|powerpc*-*linux*)
1363 LD="${LD-ld} -m elf64ppc"
1364 ;;
1365 s390*-*linux*|s390*-*tpf*)
1366 LD="${LD-ld} -m elf64_s390"
1367 ;;
1368 sparc*-*linux*)
1369 LD="${LD-ld} -m elf64_sparc"
1370 ;;
1371 esac
1372 ;;
db137867
AC
1373 esac
1374 fi
1375 rm -rf conftest*
1376 ;;
1377
1378*-*-sco3.2v5*)
1379 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
1380 SAVE_CFLAGS="$CFLAGS"
1381 CFLAGS="$CFLAGS -belf"
1382 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1383 [AC_LANG_PUSH(C)
7083c021 1384 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
db137867
AC
1385 AC_LANG_POP])
1386 if test x"$lt_cv_cc_needs_belf" != x"yes"; then
1387 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
1388 CFLAGS="$SAVE_CFLAGS"
1389 fi
1390 ;;
a949ab1a 1391*-*solaris*)
db137867
AC
1392 # Find out which ABI we are using.
1393 echo 'int i;' > conftest.$ac_ext
1394 if AC_TRY_EVAL(ac_compile); then
1395 case `/usr/bin/file conftest.o` in
1396 *64-bit*)
1397 case $lt_cv_prog_gnu_ld in
a949ab1a
AC
1398 yes*)
1399 case $host in
1400 i?86-*-solaris*)
1401 LD="${LD-ld} -m elf_x86_64"
1402 ;;
1403 sparc*-*-solaris*)
1404 LD="${LD-ld} -m elf64_sparc"
1405 ;;
1406 esac
1407 # GNU ld 2.21 introduced _sol2 emulations. Use them if available.
1408 if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
1409 LD="${LD-ld}_sol2"
1410 fi
1411 ;;
b676ea3b 1412 *)
7083c021 1413 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
b676ea3b
AC
1414 LD="${LD-ld} -64"
1415 fi
1416 ;;
db137867
AC
1417 esac
1418 ;;
1419 esac
1420 fi
1421 rm -rf conftest*
1422 ;;
db137867
AC
1423esac
1424
1425need_locks="$enable_libtool_lock"
7083c021
AC
1426])# _LT_ENABLE_LOCK
1427
1428
b6d0720c
AC
1429# _LT_PROG_AR
1430# -----------
1431m4_defun([_LT_PROG_AR],
1432[AC_CHECK_TOOLS(AR, [ar], false)
1433: ${AR=ar}
1434: ${AR_FLAGS=cru}
1435_LT_DECL([], [AR], [1], [The archiver])
1436_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
1437
1438AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
1439 [lt_cv_ar_at_file=no
1440 AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
1441 [echo conftest.$ac_objext > conftest.lst
1442 lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
1443 AC_TRY_EVAL([lt_ar_try])
1444 if test "$ac_status" -eq 0; then
1445 # Ensure the archiver fails upon bogus file names.
1446 rm -f conftest.$ac_objext libconftest.a
1447 AC_TRY_EVAL([lt_ar_try])
1448 if test "$ac_status" -ne 0; then
1449 lt_cv_ar_at_file=@
1450 fi
1451 fi
1452 rm -f conftest.* libconftest.a
1453 ])
1454 ])
1455
1456if test "x$lt_cv_ar_at_file" = xno; then
1457 archiver_list_spec=
1458else
1459 archiver_list_spec=$lt_cv_ar_at_file
1460fi
1461_LT_DECL([], [archiver_list_spec], [1],
1462 [How to feed a file listing to the archiver])
1463])# _LT_PROG_AR
1464
1465
7083c021
AC
1466# _LT_CMD_OLD_ARCHIVE
1467# -------------------
1468m4_defun([_LT_CMD_OLD_ARCHIVE],
b6d0720c 1469[_LT_PROG_AR
7083c021
AC
1470
1471AC_CHECK_TOOL(STRIP, strip, :)
1472test -z "$STRIP" && STRIP=:
1473_LT_DECL([], [STRIP], [1], [A symbol stripping program])
1474
1475AC_CHECK_TOOL(RANLIB, ranlib, :)
1476test -z "$RANLIB" && RANLIB=:
1477_LT_DECL([], [RANLIB], [1],
1478 [Commands used to install an old-style archive])
1479
1480# Determine commands to create old-style static archives.
1481old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
1482old_postinstall_cmds='chmod 644 $oldlib'
1483old_postuninstall_cmds=
db137867 1484
7083c021
AC
1485if test -n "$RANLIB"; then
1486 case $host_os in
1487 openbsd*)
a949ab1a 1488 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
7083c021
AC
1489 ;;
1490 *)
a949ab1a 1491 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
7083c021
AC
1492 ;;
1493 esac
a949ab1a 1494 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
7083c021 1495fi
b6d0720c
AC
1496
1497case $host_os in
1498 darwin*)
1499 lock_old_archive_extraction=yes ;;
1500 *)
1501 lock_old_archive_extraction=no ;;
1502esac
7083c021
AC
1503_LT_DECL([], [old_postinstall_cmds], [2])
1504_LT_DECL([], [old_postuninstall_cmds], [2])
1505_LT_TAGDECL([], [old_archive_cmds], [2],
1506 [Commands used to build an old-style archive])
b6d0720c
AC
1507_LT_DECL([], [lock_old_archive_extraction], [0],
1508 [Whether to use a lock for old archive extraction])
7083c021 1509])# _LT_CMD_OLD_ARCHIVE
db137867
AC
1510
1511
7083c021 1512# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
db137867
AC
1513# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1514# ----------------------------------------------------------------
1515# Check whether the given compiler option works
7083c021
AC
1516AC_DEFUN([_LT_COMPILER_OPTION],
1517[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1518m4_require([_LT_DECL_SED])dnl
db137867
AC
1519AC_CACHE_CHECK([$1], [$2],
1520 [$2=no
7083c021 1521 m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
db137867
AC
1522 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1523 lt_compiler_flag="$3"
1524 # Insert the option either (1) after the last *FLAGS variable, or
1525 # (2) before a word containing "conftest.", or (3) at the end.
1526 # Note that $ac_compile itself does not contain backslashes and begins
1527 # with a dollar sign (not a hyphen), so the echo should work correctly.
1528 # The option is referenced via a variable to avoid confusing sed.
1529 lt_compile=`echo "$ac_compile" | $SED \
1530 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1531 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1532 -e 's:$: $lt_compiler_flag:'`
b6d0720c 1533 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
db137867
AC
1534 (eval "$lt_compile" 2>conftest.err)
1535 ac_status=$?
1536 cat conftest.err >&AS_MESSAGE_LOG_FD
b6d0720c 1537 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
db137867
AC
1538 if (exit $ac_status) && test -s "$ac_outfile"; then
1539 # The compiler can only warn and ignore the option if not recognized
1540 # So say no if there are warnings other than the usual output.
b6d0720c 1541 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
db137867
AC
1542 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1543 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
1544 $2=yes
1545 fi
1546 fi
7083c021 1547 $RM conftest*
db137867
AC
1548])
1549
1550if test x"[$]$2" = xyes; then
7083c021 1551 m4_if([$5], , :, [$5])
db137867 1552else
7083c021 1553 m4_if([$6], , :, [$6])
db137867 1554fi
7083c021 1555])# _LT_COMPILER_OPTION
db137867 1556
7083c021
AC
1557# Old name:
1558AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
1559dnl aclocal-1.4 backwards compatibility:
1560dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
db137867 1561
7083c021
AC
1562
1563# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1564# [ACTION-SUCCESS], [ACTION-FAILURE])
1565# ----------------------------------------------------
1566# Check whether the given linker option works
1567AC_DEFUN([_LT_LINKER_OPTION],
1568[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1569m4_require([_LT_DECL_SED])dnl
db137867
AC
1570AC_CACHE_CHECK([$1], [$2],
1571 [$2=no
1572 save_LDFLAGS="$LDFLAGS"
1573 LDFLAGS="$LDFLAGS $3"
1574 echo "$lt_simple_link_test_code" > conftest.$ac_ext
1575 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
1576 # The linker can only warn and ignore the option if not recognized
1577 # So say no if there are warnings
1578 if test -s conftest.err; then
1579 # Append any errors to the config.log.
1580 cat conftest.err 1>&AS_MESSAGE_LOG_FD
b6d0720c 1581 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
db137867
AC
1582 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1583 if diff conftest.exp conftest.er2 >/dev/null; then
1584 $2=yes
1585 fi
1586 else
1587 $2=yes
1588 fi
1589 fi
7083c021 1590 $RM -r conftest*
db137867
AC
1591 LDFLAGS="$save_LDFLAGS"
1592])
1593
1594if test x"[$]$2" = xyes; then
7083c021 1595 m4_if([$4], , :, [$4])
db137867 1596else
7083c021 1597 m4_if([$5], , :, [$5])
db137867 1598fi
7083c021 1599])# _LT_LINKER_OPTION
db137867 1600
7083c021
AC
1601# Old name:
1602AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
1603dnl aclocal-1.4 backwards compatibility:
1604dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
db137867 1605
7083c021
AC
1606
1607# LT_CMD_MAX_LEN
1608#---------------
1609AC_DEFUN([LT_CMD_MAX_LEN],
1610[AC_REQUIRE([AC_CANONICAL_HOST])dnl
1611# find the maximum length of command line arguments
db137867
AC
1612AC_MSG_CHECKING([the maximum length of command line arguments])
1613AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1614 i=0
1615 teststring="ABCD"
1616
1617 case $build_os in
1618 msdosdjgpp*)
1619 # On DJGPP, this test can blow up pretty badly due to problems in libc
1620 # (any single argument exceeding 2000 bytes causes a buffer overrun
1621 # during glob expansion). Even if it were fixed, the result of this
1622 # check would be larger than it should be.
1623 lt_cv_sys_max_cmd_len=12288; # 12K is about right
1624 ;;
1625
1626 gnu*)
1627 # Under GNU Hurd, this test is not required because there is
1628 # no limit to the length of command line arguments.
1629 # Libtool will interpret -1 as no limit whatsoever
1630 lt_cv_sys_max_cmd_len=-1;
1631 ;;
1632
7083c021 1633 cygwin* | mingw* | cegcc*)
db137867
AC
1634 # On Win9x/ME, this test blows up -- it succeeds, but takes
1635 # about 5 minutes as the teststring grows exponentially.
1636 # Worse, since 9x/ME are not pre-emptively multitasking,
1637 # you end up with a "frozen" computer, even though with patience
1638 # the test eventually succeeds (with a max line length of 256k).
1639 # Instead, let's just punt: use the minimum linelength reported by
1640 # all of the supported platforms: 8192 (on NT/2K/XP).
1641 lt_cv_sys_max_cmd_len=8192;
1642 ;;
1643
b6d0720c
AC
1644 mint*)
1645 # On MiNT this can take a long time and run out of memory.
1646 lt_cv_sys_max_cmd_len=8192;
1647 ;;
1648
db137867
AC
1649 amigaos*)
1650 # On AmigaOS with pdksh, this test takes hours, literally.
1651 # So we just punt and use a minimum line length of 8192.
1652 lt_cv_sys_max_cmd_len=8192;
1653 ;;
1654
1655 netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
1656 # This has been around since 386BSD, at least. Likely further.
1657 if test -x /sbin/sysctl; then
1658 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1659 elif test -x /usr/sbin/sysctl; then
1660 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1661 else
1662 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
1663 fi
1664 # And add a safety zone
1665 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1666 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1667 ;;
1668
1669 interix*)
1670 # We know the value 262144 and hardcode it with a safety zone (like BSD)
1671 lt_cv_sys_max_cmd_len=196608
1672 ;;
1673
a949ab1a
AC
1674 os2*)
1675 # The test takes a long time on OS/2.
1676 lt_cv_sys_max_cmd_len=8192
1677 ;;
1678
db137867
AC
1679 osf*)
1680 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1681 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1682 # nice to cause kernel panics so lets avoid the loop below.
1683 # First set a reasonable default.
1684 lt_cv_sys_max_cmd_len=16384
1685 #
1686 if test -x /sbin/sysconfig; then
1687 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1688 *1*) lt_cv_sys_max_cmd_len=-1 ;;
1689 esac
1690 fi
1691 ;;
1692 sco3.2v5*)
1693 lt_cv_sys_max_cmd_len=102400
1694 ;;
1695 sysv5* | sco5v6* | sysv4.2uw2*)
1696 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1697 if test -n "$kargmax"; then
7083c021 1698 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
db137867
AC
1699 else
1700 lt_cv_sys_max_cmd_len=32768
1701 fi
1702 ;;
1703 *)
1704 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
1705 if test -n "$lt_cv_sys_max_cmd_len"; then
1706 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1707 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1708 else
7083c021
AC
1709 # Make teststring a little bigger before we do anything with it.
1710 # a 1K string should be a reasonable start.
1711 for i in 1 2 3 4 5 6 7 8 ; do
1712 teststring=$teststring$teststring
1713 done
db137867 1714 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
7083c021
AC
1715 # If test is not a shell built-in, we'll probably end up computing a
1716 # maximum length that is only half of the actual maximum length, but
1717 # we can't tell.
a949ab1a 1718 while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \
b6d0720c 1719 = "X$teststring$teststring"; } >/dev/null 2>&1 &&
db137867
AC
1720 test $i != 17 # 1/2 MB should be enough
1721 do
1722 i=`expr $i + 1`
1723 teststring=$teststring$teststring
1724 done
7083c021
AC
1725 # Only check the string length outside the loop.
1726 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
db137867 1727 teststring=
7083c021
AC
1728 # Add a significant safety factor because C++ compilers can tack on
1729 # massive amounts of additional arguments before passing them to the
1730 # linker. It appears as though 1/2 is a usable value.
db137867
AC
1731 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1732 fi
1733 ;;
1734 esac
1735])
1736if test -n $lt_cv_sys_max_cmd_len ; then
1737 AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1738else
1739 AC_MSG_RESULT(none)
1740fi
7083c021
AC
1741max_cmd_len=$lt_cv_sys_max_cmd_len
1742_LT_DECL([], [max_cmd_len], [0],
1743 [What is the maximum length of a command?])
1744])# LT_CMD_MAX_LEN
db137867 1745
7083c021
AC
1746# Old name:
1747AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
1748dnl aclocal-1.4 backwards compatibility:
1749dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
db137867 1750
7083c021
AC
1751
1752# _LT_HEADER_DLFCN
1753# ----------------
1754m4_defun([_LT_HEADER_DLFCN],
1755[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
1756])# _LT_HEADER_DLFCN
db137867
AC
1757
1758
7083c021
AC
1759# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1760# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1761# ----------------------------------------------------------------
1762m4_defun([_LT_TRY_DLOPEN_SELF],
1763[m4_require([_LT_HEADER_DLFCN])dnl
db137867
AC
1764if test "$cross_compiling" = yes; then :
1765 [$4]
1766else
1767 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1768 lt_status=$lt_dlunknown
7083c021 1769 cat > conftest.$ac_ext <<_LT_EOF
b6d0720c 1770[#line $LINENO "configure"
db137867
AC
1771#include "confdefs.h"
1772
1773#if HAVE_DLFCN_H
1774#include <dlfcn.h>
1775#endif
1776
1777#include <stdio.h>
1778
1779#ifdef RTLD_GLOBAL
1780# define LT_DLGLOBAL RTLD_GLOBAL
1781#else
1782# ifdef DL_GLOBAL
1783# define LT_DLGLOBAL DL_GLOBAL
1784# else
1785# define LT_DLGLOBAL 0
1786# endif
1787#endif
1788
1789/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1790 find out it does not work in some platform. */
1791#ifndef LT_DLLAZY_OR_NOW
1792# ifdef RTLD_LAZY
1793# define LT_DLLAZY_OR_NOW RTLD_LAZY
1794# else
1795# ifdef DL_LAZY
1796# define LT_DLLAZY_OR_NOW DL_LAZY
1797# else
1798# ifdef RTLD_NOW
1799# define LT_DLLAZY_OR_NOW RTLD_NOW
1800# else
1801# ifdef DL_NOW
1802# define LT_DLLAZY_OR_NOW DL_NOW
1803# else
1804# define LT_DLLAZY_OR_NOW 0
1805# endif
1806# endif
1807# endif
1808# endif
1809#endif
1810
b6d0720c
AC
1811/* When -fvisbility=hidden is used, assume the code has been annotated
1812 correspondingly for the symbols needed. */
1813#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
1814int fnord () __attribute__((visibility("default")));
1815#endif
1816
1817int fnord () { return 42; }
db137867
AC
1818int main ()
1819{
1820 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1821 int status = $lt_dlunknown;
1822
1823 if (self)
1824 {
1825 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
b6d0720c
AC
1826 else
1827 {
1828 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1829 else puts (dlerror ());
1830 }
db137867
AC
1831 /* dlclose (self); */
1832 }
1833 else
1834 puts (dlerror ());
1835
7083c021 1836 return status;
db137867 1837}]
7083c021 1838_LT_EOF
db137867
AC
1839 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
1840 (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
1841 lt_status=$?
1842 case x$lt_status in
1843 x$lt_dlno_uscore) $1 ;;
1844 x$lt_dlneed_uscore) $2 ;;
1845 x$lt_dlunknown|x*) $3 ;;
1846 esac
1847 else :
1848 # compilation failed
1849 $3
1850 fi
1851fi
1852rm -fr conftest*
7083c021 1853])# _LT_TRY_DLOPEN_SELF
db137867
AC
1854
1855
7083c021
AC
1856# LT_SYS_DLOPEN_SELF
1857# ------------------
1858AC_DEFUN([LT_SYS_DLOPEN_SELF],
1859[m4_require([_LT_HEADER_DLFCN])dnl
db137867
AC
1860if test "x$enable_dlopen" != xyes; then
1861 enable_dlopen=unknown
1862 enable_dlopen_self=unknown
1863 enable_dlopen_self_static=unknown
1864else
1865 lt_cv_dlopen=no
1866 lt_cv_dlopen_libs=
1867
1868 case $host_os in
1869 beos*)
1870 lt_cv_dlopen="load_add_on"
1871 lt_cv_dlopen_libs=
1872 lt_cv_dlopen_self=yes
1873 ;;
1874
7083c021 1875 mingw* | pw32* | cegcc*)
db137867
AC
1876 lt_cv_dlopen="LoadLibrary"
1877 lt_cv_dlopen_libs=
7083c021 1878 ;;
db137867
AC
1879
1880 cygwin*)
1881 lt_cv_dlopen="dlopen"
1882 lt_cv_dlopen_libs=
7083c021 1883 ;;
db137867
AC
1884
1885 darwin*)
1886 # if libdl is installed we need to link against it
1887 AC_CHECK_LIB([dl], [dlopen],
1888 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
1889 lt_cv_dlopen="dyld"
1890 lt_cv_dlopen_libs=
1891 lt_cv_dlopen_self=yes
1892 ])
7083c021 1893 ;;
db137867
AC
1894
1895 *)
1896 AC_CHECK_FUNC([shl_load],
1897 [lt_cv_dlopen="shl_load"],
1898 [AC_CHECK_LIB([dld], [shl_load],
b676ea3b 1899 [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
db137867
AC
1900 [AC_CHECK_FUNC([dlopen],
1901 [lt_cv_dlopen="dlopen"],
1902 [AC_CHECK_LIB([dl], [dlopen],
1903 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
1904 [AC_CHECK_LIB([svld], [dlopen],
1905 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
1906 [AC_CHECK_LIB([dld], [dld_link],
b676ea3b 1907 [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
db137867
AC
1908 ])
1909 ])
1910 ])
1911 ])
1912 ])
1913 ;;
1914 esac
1915
1916 if test "x$lt_cv_dlopen" != xno; then
1917 enable_dlopen=yes
1918 else
1919 enable_dlopen=no
1920 fi
1921
1922 case $lt_cv_dlopen in
1923 dlopen)
1924 save_CPPFLAGS="$CPPFLAGS"
1925 test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
1926
1927 save_LDFLAGS="$LDFLAGS"
1928 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
1929
1930 save_LIBS="$LIBS"
1931 LIBS="$lt_cv_dlopen_libs $LIBS"
1932
1933 AC_CACHE_CHECK([whether a program can dlopen itself],
1934 lt_cv_dlopen_self, [dnl
7083c021 1935 _LT_TRY_DLOPEN_SELF(
db137867
AC
1936 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
1937 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
1938 ])
1939
1940 if test "x$lt_cv_dlopen_self" = xyes; then
1941 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
1942 AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
7083c021
AC
1943 lt_cv_dlopen_self_static, [dnl
1944 _LT_TRY_DLOPEN_SELF(
db137867
AC
1945 lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
1946 lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
1947 ])
1948 fi
1949
1950 CPPFLAGS="$save_CPPFLAGS"
1951 LDFLAGS="$save_LDFLAGS"
1952 LIBS="$save_LIBS"
1953 ;;
1954 esac
1955
1956 case $lt_cv_dlopen_self in
1957 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
1958 *) enable_dlopen_self=unknown ;;
1959 esac
1960
1961 case $lt_cv_dlopen_self_static in
1962 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
1963 *) enable_dlopen_self_static=unknown ;;
1964 esac
1965fi
7083c021
AC
1966_LT_DECL([dlopen_support], [enable_dlopen], [0],
1967 [Whether dlopen is supported])
1968_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
1969 [Whether dlopen of programs is supported])
1970_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
1971 [Whether dlopen of statically linked programs is supported])
1972])# LT_SYS_DLOPEN_SELF
db137867 1973
7083c021
AC
1974# Old name:
1975AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
1976dnl aclocal-1.4 backwards compatibility:
1977dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
db137867 1978
7083c021
AC
1979
1980# _LT_COMPILER_C_O([TAGNAME])
1981# ---------------------------
1982# Check to see if options -c and -o are simultaneously supported by compiler.
1983# This macro does not hard code the compiler like AC_PROG_CC_C_O.
1984m4_defun([_LT_COMPILER_C_O],
1985[m4_require([_LT_DECL_SED])dnl
1986m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1987m4_require([_LT_TAG_COMPILER])dnl
db137867 1988AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
7083c021
AC
1989 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
1990 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
1991 $RM -r conftest 2>/dev/null
db137867
AC
1992 mkdir conftest
1993 cd conftest
1994 mkdir out
1995 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1996
1997 lt_compiler_flag="-o out/conftest2.$ac_objext"
1998 # Insert the option either (1) after the last *FLAGS variable, or
1999 # (2) before a word containing "conftest.", or (3) at the end.
2000 # Note that $ac_compile itself does not contain backslashes and begins
2001 # with a dollar sign (not a hyphen), so the echo should work correctly.
2002 lt_compile=`echo "$ac_compile" | $SED \
2003 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
2004 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
2005 -e 's:$: $lt_compiler_flag:'`
b6d0720c 2006 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
db137867
AC
2007 (eval "$lt_compile" 2>out/conftest.err)
2008 ac_status=$?
2009 cat out/conftest.err >&AS_MESSAGE_LOG_FD
b6d0720c 2010 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
db137867
AC
2011 if (exit $ac_status) && test -s out/conftest2.$ac_objext
2012 then
2013 # The compiler can only warn and ignore the option if not recognized
2014 # So say no if there are warnings
b6d0720c 2015 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
db137867
AC
2016 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
2017 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
7083c021 2018 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
db137867
AC
2019 fi
2020 fi
2021 chmod u+w . 2>&AS_MESSAGE_LOG_FD
7083c021 2022 $RM conftest*
db137867
AC
2023 # SGI C++ compiler will create directory out/ii_files/ for
2024 # template instantiation
7083c021
AC
2025 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
2026 $RM out/* && rmdir out
db137867 2027 cd ..
7083c021
AC
2028 $RM -r conftest
2029 $RM conftest*
db137867 2030])
7083c021
AC
2031_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
2032 [Does compiler simultaneously support -c and -o options?])
2033])# _LT_COMPILER_C_O
db137867
AC
2034
2035
7083c021
AC
2036# _LT_COMPILER_FILE_LOCKS([TAGNAME])
2037# ----------------------------------
db137867 2038# Check to see if we can do hard links to lock some files if needed
7083c021
AC
2039m4_defun([_LT_COMPILER_FILE_LOCKS],
2040[m4_require([_LT_ENABLE_LOCK])dnl
2041m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2042_LT_COMPILER_C_O([$1])
db137867
AC
2043
2044hard_links="nottested"
7083c021 2045if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
db137867
AC
2046 # do not overwrite the value of need_locks provided by the user
2047 AC_MSG_CHECKING([if we can lock with hard links])
2048 hard_links=yes
7083c021 2049 $RM conftest*
db137867
AC
2050 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2051 touch conftest.a
2052 ln conftest.a conftest.b 2>&5 || hard_links=no
2053 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2054 AC_MSG_RESULT([$hard_links])
2055 if test "$hard_links" = no; then
2056 AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
2057 need_locks=warn
2058 fi
2059else
2060 need_locks=no
2061fi
7083c021
AC
2062_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
2063])# _LT_COMPILER_FILE_LOCKS
db137867
AC
2064
2065
7083c021
AC
2066# _LT_CHECK_OBJDIR
2067# ----------------
2068m4_defun([_LT_CHECK_OBJDIR],
db137867
AC
2069[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
2070[rm -f .libs 2>/dev/null
2071mkdir .libs 2>/dev/null
2072if test -d .libs; then
2073 lt_cv_objdir=.libs
2074else
2075 # MS-DOS does not allow filenames that begin with a dot.
2076 lt_cv_objdir=_libs
2077fi
2078rmdir .libs 2>/dev/null])
2079objdir=$lt_cv_objdir
7083c021
AC
2080_LT_DECL([], [objdir], [0],
2081 [The name of the directory that contains temporary libtool files])dnl
2082m4_pattern_allow([LT_OBJDIR])dnl
2083AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
2084 [Define to the sub-directory in which libtool stores uninstalled libraries.])
2085])# _LT_CHECK_OBJDIR
db137867
AC
2086
2087
7083c021
AC
2088# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
2089# --------------------------------------
db137867 2090# Check hardcoding attributes.
7083c021 2091m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
db137867 2092[AC_MSG_CHECKING([how to hardcode library paths into programs])
7083c021
AC
2093_LT_TAGVAR(hardcode_action, $1)=
2094if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
2095 test -n "$_LT_TAGVAR(runpath_var, $1)" ||
2096 test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
db137867 2097
7083c021
AC
2098 # We can hardcode non-existent directories.
2099 if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
db137867
AC
2100 # If the only mechanism to avoid hardcoding is shlibpath_var, we
2101 # have to relink, otherwise we might link with an installed library
2102 # when we should be linking with a yet-to-be-installed one
7083c021
AC
2103 ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
2104 test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
db137867 2105 # Linking always hardcodes the temporary library directory.
7083c021 2106 _LT_TAGVAR(hardcode_action, $1)=relink
db137867
AC
2107 else
2108 # We can link without hardcoding, and we can hardcode nonexisting dirs.
7083c021 2109 _LT_TAGVAR(hardcode_action, $1)=immediate
db137867
AC
2110 fi
2111else
2112 # We cannot hardcode anything, or else we can only hardcode existing
2113 # directories.
7083c021 2114 _LT_TAGVAR(hardcode_action, $1)=unsupported
db137867 2115fi
7083c021 2116AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
db137867 2117
7083c021
AC
2118if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
2119 test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
db137867
AC
2120 # Fast installation is not supported
2121 enable_fast_install=no
2122elif test "$shlibpath_overrides_runpath" = yes ||
2123 test "$enable_shared" = no; then
2124 # Fast installation is not necessary
2125 enable_fast_install=needless
2126fi
7083c021
AC
2127_LT_TAGDECL([], [hardcode_action], [0],
2128 [How to hardcode a shared library path into an executable])
2129])# _LT_LINKER_HARDCODE_LIBPATH
db137867
AC
2130
2131
7083c021
AC
2132# _LT_CMD_STRIPLIB
2133# ----------------
2134m4_defun([_LT_CMD_STRIPLIB],
2135[m4_require([_LT_DECL_EGREP])
2136striplib=
db137867
AC
2137old_striplib=
2138AC_MSG_CHECKING([whether stripping libraries is possible])
7083c021 2139if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
db137867
AC
2140 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2141 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2142 AC_MSG_RESULT([yes])
2143else
2144# FIXME - insert some real tests, host_os isn't really good enough
2145 case $host_os in
7083c021
AC
2146 darwin*)
2147 if test -n "$STRIP" ; then
2148 striplib="$STRIP -x"
2149 old_striplib="$STRIP -S"
2150 AC_MSG_RESULT([yes])
2151 else
2152 AC_MSG_RESULT([no])
2153 fi
2154 ;;
2155 *)
2156 AC_MSG_RESULT([no])
db137867
AC
2157 ;;
2158 esac
2159fi
7083c021
AC
2160_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2161_LT_DECL([], [striplib], [1])
2162])# _LT_CMD_STRIPLIB
db137867
AC
2163
2164
7083c021 2165# _LT_SYS_DYNAMIC_LINKER([TAG])
db137867
AC
2166# -----------------------------
2167# PORTME Fill in your ld.so characteristics
7083c021
AC
2168m4_defun([_LT_SYS_DYNAMIC_LINKER],
2169[AC_REQUIRE([AC_CANONICAL_HOST])dnl
2170m4_require([_LT_DECL_EGREP])dnl
2171m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2172m4_require([_LT_DECL_OBJDUMP])dnl
2173m4_require([_LT_DECL_SED])dnl
b6d0720c 2174m4_require([_LT_CHECK_SHELL_FEATURES])dnl
db137867 2175AC_MSG_CHECKING([dynamic linker characteristics])
7083c021
AC
2176m4_if([$1],
2177 [], [
db137867
AC
2178if test "$GCC" = yes; then
2179 case $host_os in
2180 darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
2181 *) lt_awk_arg="/^libraries:/" ;;
2182 esac
b6d0720c
AC
2183 case $host_os in
2184 mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;;
2185 *) lt_sed_strip_eq="s,=/,/,g" ;;
2186 esac
2187 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
2188 case $lt_search_path_spec in
2189 *\;*)
db137867
AC
2190 # if the path contains ";" then we assume it to be the separator
2191 # otherwise default to the standard path separator (i.e. ":") - it is
2192 # assumed that no part of a normal pathname contains ";" but that should
2193 # okay in the real world where ";" in dirpaths is itself problematic.
b6d0720c
AC
2194 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
2195 ;;
2196 *)
2197 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
2198 ;;
2199 esac
db137867
AC
2200 # Ok, now we have the path, separated by spaces, we can step through it
2201 # and add multilib dir if necessary.
2202 lt_tmp_lt_search_path_spec=
2203 lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
2204 for lt_sys_path in $lt_search_path_spec; do
2205 if test -d "$lt_sys_path/$lt_multi_os_dir"; then
2206 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
2207 else
2208 test -d "$lt_sys_path" && \
2209 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2210 fi
2211 done
b6d0720c 2212 lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
db137867
AC
2213BEGIN {RS=" "; FS="/|\n";} {
2214 lt_foo="";
2215 lt_count=0;
2216 for (lt_i = NF; lt_i > 0; lt_i--) {
2217 if ($lt_i != "" && $lt_i != ".") {
2218 if ($lt_i == "..") {
2219 lt_count++;
2220 } else {
2221 if (lt_count == 0) {
2222 lt_foo="/" $lt_i lt_foo;
2223 } else {
2224 lt_count--;
2225 }
2226 }
2227 }
2228 }
2229 if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2230 if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2231}'`
b6d0720c
AC
2232 # AWK program above erroneously prepends '/' to C:/dos/paths
2233 # for these hosts.
2234 case $host_os in
2235 mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
2236 $SED 's,/\([[A-Za-z]]:\),\1,g'` ;;
2237 esac
2238 sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
db137867
AC
2239else
2240 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2241fi])
7083c021
AC
2242library_names_spec=
2243libname_spec='lib$name'
2244soname_spec=
2245shrext_cmds=".so"
2246postinstall_cmds=
2247postuninstall_cmds=
2248finish_cmds=
2249finish_eval=
2250shlibpath_var=
2251shlibpath_overrides_runpath=unknown
2252version_type=none
2253dynamic_linker="$host_os ld.so"
2254sys_lib_dlsearch_path_spec="/lib /usr/lib"
db137867
AC
2255need_lib_prefix=unknown
2256hardcode_into_libs=no
2257
2258# when you set need_version to no, make sure it does not cause -set_version
2259# flags to be left without arguments
2260need_version=unknown
2261
2262case $host_os in
2263aix3*)
a949ab1a 2264 version_type=linux # correct to gnu/linux during the next big refactor
db137867
AC
2265 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
2266 shlibpath_var=LIBPATH
2267
2268 # AIX 3 has no versioning support, so we append a major version to the name.
2269 soname_spec='${libname}${release}${shared_ext}$major'
2270 ;;
2271
b676ea3b 2272aix[[4-9]]*)
a949ab1a 2273 version_type=linux # correct to gnu/linux during the next big refactor
db137867
AC
2274 need_lib_prefix=no
2275 need_version=no
2276 hardcode_into_libs=yes
2277 if test "$host_cpu" = ia64; then
2278 # AIX 5 supports IA64
2279 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
2280 shlibpath_var=LD_LIBRARY_PATH
2281 else
2282 # With GCC up to 2.95.x, collect2 would create an import file
2283 # for dependence libraries. The import file would start with
2284 # the line `#! .'. This would cause the generated library to
2285 # depend on `.', always an invalid library. This was fixed in
2286 # development snapshots of GCC prior to 3.0.
2287 case $host_os in
2288 aix4 | aix4.[[01]] | aix4.[[01]].*)
2289 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2290 echo ' yes '
7083c021 2291 echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
db137867
AC
2292 :
2293 else
2294 can_build_shared=no
2295 fi
2296 ;;
2297 esac
2298 # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
2299 # soname into executable. Probably we can add versioning support to
2300 # collect2, so additional links can be useful in future.
2301 if test "$aix_use_runtimelinking" = yes; then
2302 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2303 # instead of lib<name>.a to let people know that these are not
2304 # typical AIX shared libraries.
2305 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2306 else
2307 # We preserve .a as extension for shared libraries through AIX4.2
2308 # and later when we are not doing run time linking.
2309 library_names_spec='${libname}${release}.a $libname.a'
2310 soname_spec='${libname}${release}${shared_ext}$major'
2311 fi
2312 shlibpath_var=LIBPATH
2313 fi
2314 ;;
2315
2316amigaos*)
7083c021
AC
2317 case $host_cpu in
2318 powerpc)
2319 # Since July 2007 AmigaOS4 officially supports .so libraries.
2320 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
2321 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2322 ;;
2323 m68k)
2324 library_names_spec='$libname.ixlibrary $libname.a'
2325 # Create ${libname}_ixlibrary.a entries in /sys/libs.
b6d0720c 2326 finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
7083c021
AC
2327 ;;
2328 esac
db137867
AC
2329 ;;
2330
2331beos*)
2332 library_names_spec='${libname}${shared_ext}'
2333 dynamic_linker="$host_os ld.so"
2334 shlibpath_var=LIBRARY_PATH
2335 ;;
2336
2337bsdi[[45]]*)
a949ab1a 2338 version_type=linux # correct to gnu/linux during the next big refactor
db137867
AC
2339 need_version=no
2340 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2341 soname_spec='${libname}${release}${shared_ext}$major'
2342 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2343 shlibpath_var=LD_LIBRARY_PATH
2344 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2345 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2346 # the default ld.so.conf also contains /usr/contrib/lib and
2347 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2348 # libtool to hard-code these into programs
2349 ;;
2350
7083c021 2351cygwin* | mingw* | pw32* | cegcc*)
db137867
AC
2352 version_type=windows
2353 shrext_cmds=".dll"
2354 need_version=no
2355 need_lib_prefix=no
2356
b6d0720c
AC
2357 case $GCC,$cc_basename in
2358 yes,*)
2359 # gcc
db137867
AC
2360 library_names_spec='$libname.dll.a'
2361 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2362 postinstall_cmds='base_file=`basename \${file}`~
7083c021 2363 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
db137867
AC
2364 dldir=$destdir/`dirname \$dlpath`~
2365 test -d \$dldir || mkdir -p \$dldir~
2366 $install_prog $dir/$dlname \$dldir/$dlname~
7083c021
AC
2367 chmod a+x \$dldir/$dlname~
2368 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2369 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2370 fi'
db137867
AC
2371 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2372 dlpath=$dir/\$dldll~
7083c021 2373 $RM \$dlpath'
db137867
AC
2374 shlibpath_overrides_runpath=yes
2375
2376 case $host_os in
2377 cygwin*)
2378 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
2379 soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
b6d0720c
AC
2380m4_if([$1], [],[
2381 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
db137867 2382 ;;
7083c021 2383 mingw* | cegcc*)
db137867
AC
2384 # MinGW DLLs use traditional 'lib' prefix
2385 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
db137867
AC
2386 ;;
2387 pw32*)
2388 # pw32 DLLs use 'pw' prefix rather than 'lib'
2389 library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2390 ;;
2391 esac
b6d0720c
AC
2392 dynamic_linker='Win32 ld.exe'
2393 ;;
2394
2395 *,cl*)
2396 # Native MSVC
2397 libname_spec='$name'
2398 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2399 library_names_spec='${libname}.dll.lib'
2400
2401 case $build_os in
2402 mingw*)
2403 sys_lib_search_path_spec=
2404 lt_save_ifs=$IFS
2405 IFS=';'
2406 for lt_path in $LIB
2407 do
2408 IFS=$lt_save_ifs
2409 # Let DOS variable expansion print the short 8.3 style file name.
2410 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
2411 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
2412 done
2413 IFS=$lt_save_ifs
2414 # Convert to MSYS style.
2415 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
2416 ;;
2417 cygwin*)
2418 # Convert to unix form, then to dos form, then back to unix form
2419 # but this time dos style (no spaces!) so that the unix form looks
2420 # like /cygdrive/c/PROGRA~1:/cygdr...
2421 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
2422 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
2423 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2424 ;;
2425 *)
2426 sys_lib_search_path_spec="$LIB"
2427 if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
2428 # It is most probably a Windows format PATH.
2429 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
2430 else
2431 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2432 fi
2433 # FIXME: find the short name or the path components, as spaces are
2434 # common. (e.g. "Program Files" -> "PROGRA~1")
2435 ;;
2436 esac
2437
2438 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2439 postinstall_cmds='base_file=`basename \${file}`~
2440 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
2441 dldir=$destdir/`dirname \$dlpath`~
2442 test -d \$dldir || mkdir -p \$dldir~
2443 $install_prog $dir/$dlname \$dldir/$dlname'
2444 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2445 dlpath=$dir/\$dldll~
2446 $RM \$dlpath'
2447 shlibpath_overrides_runpath=yes
2448 dynamic_linker='Win32 link.exe'
db137867
AC
2449 ;;
2450
2451 *)
b6d0720c 2452 # Assume MSVC wrapper
db137867 2453 library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
b6d0720c 2454 dynamic_linker='Win32 ld.exe'
db137867
AC
2455 ;;
2456 esac
db137867
AC
2457 # FIXME: first we should search . and the directory the executable is in
2458 shlibpath_var=PATH
2459 ;;
2460
2461darwin* | rhapsody*)
2462 dynamic_linker="$host_os dyld"
2463 version_type=darwin
2464 need_lib_prefix=no
2465 need_version=no
7083c021 2466 library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
db137867
AC
2467 soname_spec='${libname}${release}${major}$shared_ext'
2468 shlibpath_overrides_runpath=yes
2469 shlibpath_var=DYLD_LIBRARY_PATH
2470 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
7083c021
AC
2471m4_if([$1], [],[
2472 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
db137867
AC
2473 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
2474 ;;
2475
2476dgux*)
a949ab1a 2477 version_type=linux # correct to gnu/linux during the next big refactor
db137867
AC
2478 need_lib_prefix=no
2479 need_version=no
2480 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
2481 soname_spec='${libname}${release}${shared_ext}$major'
2482 shlibpath_var=LD_LIBRARY_PATH
2483 ;;
2484
db137867
AC
2485freebsd* | dragonfly*)
2486 # DragonFly does not have aout. When/if they implement a new
2487 # versioning mechanism, adjust this.
2488 if test -x /usr/bin/objformat; then
2489 objformat=`/usr/bin/objformat`
2490 else
2491 case $host_os in
a949ab1a 2492 freebsd[[23]].*) objformat=aout ;;
db137867
AC
2493 *) objformat=elf ;;
2494 esac
2495 fi
5a241f54 2496 version_type=freebsd-$objformat
db137867
AC
2497 case $version_type in
2498 freebsd-elf*)
2499 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2500 need_version=no
2501 need_lib_prefix=no
2502 ;;
2503 freebsd-*)
2504 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
2505 need_version=yes
2506 ;;
2507 esac
2508 shlibpath_var=LD_LIBRARY_PATH
2509 case $host_os in
a949ab1a 2510 freebsd2.*)
db137867
AC
2511 shlibpath_overrides_runpath=yes
2512 ;;
2513 freebsd3.[[01]]* | freebsdelf3.[[01]]*)
2514 shlibpath_overrides_runpath=yes
2515 hardcode_into_libs=yes
2516 ;;
2517 freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2518 freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
2519 shlibpath_overrides_runpath=no
2520 hardcode_into_libs=yes
2521 ;;
2522 *) # from 4.6 on, and DragonFly
2523 shlibpath_overrides_runpath=yes
2524 hardcode_into_libs=yes
2525 ;;
2526 esac
2527 ;;
2528
b6d0720c 2529haiku*)
a949ab1a 2530 version_type=linux # correct to gnu/linux during the next big refactor
b6d0720c
AC
2531 need_lib_prefix=no
2532 need_version=no
2533 dynamic_linker="$host_os runtime_loader"
2534 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2535 soname_spec='${libname}${release}${shared_ext}$major'
2536 shlibpath_var=LIBRARY_PATH
2537 shlibpath_overrides_runpath=yes
2538 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
2539 hardcode_into_libs=yes
2540 ;;
2541
db137867
AC
2542hpux9* | hpux10* | hpux11*)
2543 # Give a soname corresponding to the major version so that dld.sl refuses to
2544 # link against other versions.
2545 version_type=sunos
2546 need_lib_prefix=no
2547 need_version=no
2548 case $host_cpu in
2549 ia64*)
2550 shrext_cmds='.so'
2551 hardcode_into_libs=yes
2552 dynamic_linker="$host_os dld.so"
2553 shlibpath_var=LD_LIBRARY_PATH
2554 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2555 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2556 soname_spec='${libname}${release}${shared_ext}$major'
2557 if test "X$HPUX_IA64_MODE" = X32; then
2558 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
2559 else
2560 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
2561 fi
2562 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2563 ;;
7083c021
AC
2564 hppa*64*)
2565 shrext_cmds='.sl'
2566 hardcode_into_libs=yes
2567 dynamic_linker="$host_os dld.sl"
2568 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2569 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2570 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2571 soname_spec='${libname}${release}${shared_ext}$major'
2572 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2573 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2574 ;;
2575 *)
db137867
AC
2576 shrext_cmds='.sl'
2577 dynamic_linker="$host_os dld.sl"
2578 shlibpath_var=SHLIB_PATH
2579 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2580 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2581 soname_spec='${libname}${release}${shared_ext}$major'
2582 ;;
2583 esac
b6d0720c 2584 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
db137867 2585 postinstall_cmds='chmod 555 $lib'
b6d0720c
AC
2586 # or fails outright, so override atomically:
2587 install_override_mode=555
db137867
AC
2588 ;;
2589
2590interix[[3-9]]*)
a949ab1a 2591 version_type=linux # correct to gnu/linux during the next big refactor
db137867
AC
2592 need_lib_prefix=no
2593 need_version=no
2594 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2595 soname_spec='${libname}${release}${shared_ext}$major'
2596 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2597 shlibpath_var=LD_LIBRARY_PATH
2598 shlibpath_overrides_runpath=no
2599 hardcode_into_libs=yes
2600 ;;
2601
2602irix5* | irix6* | nonstopux*)
2603 case $host_os in
2604 nonstopux*) version_type=nonstopux ;;
2605 *)
2606 if test "$lt_cv_prog_gnu_ld" = yes; then
a949ab1a 2607 version_type=linux # correct to gnu/linux during the next big refactor
db137867
AC
2608 else
2609 version_type=irix
2610 fi ;;
2611 esac
2612 need_lib_prefix=no
2613 need_version=no
2614 soname_spec='${libname}${release}${shared_ext}$major'
2615 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
2616 case $host_os in
2617 irix5* | nonstopux*)
2618 libsuff= shlibsuff=
2619 ;;
2620 *)
2621 case $LD in # libtool.m4 will add one of these switches to LD
2622 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2623 libsuff= shlibsuff= libmagic=32-bit;;
2624 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2625 libsuff=32 shlibsuff=N32 libmagic=N32;;
2626 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2627 libsuff=64 shlibsuff=64 libmagic=64-bit;;
2628 *) libsuff= shlibsuff= libmagic=never-match;;
2629 esac
2630 ;;
2631 esac
2632 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2633 shlibpath_overrides_runpath=no
2634 sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
2635 sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
2636 hardcode_into_libs=yes
2637 ;;
2638
2639# No shared lib support for Linux oldld, aout, or coff.
2640linux*oldld* | linux*aout* | linux*coff*)
2641 dynamic_linker=no
2642 ;;
2643
a949ab1a 2644# This must be glibc/ELF.
e4cf89d4 2645linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
a949ab1a 2646 version_type=linux # correct to gnu/linux during the next big refactor
db137867
AC
2647 need_lib_prefix=no
2648 need_version=no
2649 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2650 soname_spec='${libname}${release}${shared_ext}$major'
2651 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2652 shlibpath_var=LD_LIBRARY_PATH
2653 shlibpath_overrides_runpath=no
b6d0720c 2654
7083c021 2655 # Some binutils ld are patched to set DT_RUNPATH
b6d0720c
AC
2656 AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
2657 [lt_cv_shlibpath_overrides_runpath=no
2658 save_LDFLAGS=$LDFLAGS
2659 save_libdir=$libdir
2660 eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2661 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2662 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2663 [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2664 [lt_cv_shlibpath_overrides_runpath=yes])])
2665 LDFLAGS=$save_LDFLAGS
2666 libdir=$save_libdir
2667 ])
2668 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
7083c021 2669
db137867
AC
2670 # This implies no fast_install, which is unacceptable.
2671 # Some rework will be needed to allow for fast_install
2672 # before this can be enabled.
2673 hardcode_into_libs=yes
2674
2675 # Append ld.so.conf contents to the search path
2676 if test -f /etc/ld.so.conf; then
b6d0720c
AC
2677 lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
2678 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
db137867
AC
2679 fi
2680
2681 # We used to test for /lib/ld.so.1 and disable shared libraries on
2682 # powerpc, because MkLinux only supported shared libraries with the
2683 # GNU dynamic linker. Since this was broken with cross compilers,
2684 # most powerpc-linux boxes support dynamic linking these days and
2685 # people can always --disable-shared, the test was removed, and we
2686 # assume the GNU/Linux dynamic linker is in use.
2687 dynamic_linker='GNU/Linux ld.so'
2688 ;;
2689
e4cf89d4
AB
2690netbsdelf*-gnu)
2691 version_type=linux
2692 need_lib_prefix=no
2693 need_version=no
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 shlibpath_overrides_runpath=no
2698 hardcode_into_libs=yes
2699 dynamic_linker='NetBSD ld.elf_so'
2700 ;;
2701
db137867
AC
2702netbsd*)
2703 version_type=sunos
2704 need_lib_prefix=no
2705 need_version=no
7083c021 2706 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
db137867
AC
2707 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2708 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2709 dynamic_linker='NetBSD (a.out) ld.so'
2710 else
2711 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2712 soname_spec='${libname}${release}${shared_ext}$major'
2713 dynamic_linker='NetBSD ld.elf_so'
2714 fi
2715 shlibpath_var=LD_LIBRARY_PATH
2716 shlibpath_overrides_runpath=yes
2717 hardcode_into_libs=yes
2718 ;;
2719
2720newsos6)
a949ab1a 2721 version_type=linux # correct to gnu/linux during the next big refactor
db137867
AC
2722 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2723 shlibpath_var=LD_LIBRARY_PATH
2724 shlibpath_overrides_runpath=yes
2725 ;;
2726
7083c021
AC
2727*nto* | *qnx*)
2728 version_type=qnx
db137867
AC
2729 need_lib_prefix=no
2730 need_version=no
2731 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2732 soname_spec='${libname}${release}${shared_ext}$major'
2733 shlibpath_var=LD_LIBRARY_PATH
7083c021
AC
2734 shlibpath_overrides_runpath=no
2735 hardcode_into_libs=yes
2736 dynamic_linker='ldqnx.so'
db137867
AC
2737 ;;
2738
2739openbsd*)
2740 version_type=sunos
2741 sys_lib_dlsearch_path_spec="/usr/lib"
2742 need_lib_prefix=no
2743 # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
2744 case $host_os in
7083c021
AC
2745 openbsd3.3 | openbsd3.3.*) need_version=yes ;;
2746 *) need_version=no ;;
db137867
AC
2747 esac
2748 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2749 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2750 shlibpath_var=LD_LIBRARY_PATH
7083c021 2751 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
db137867
AC
2752 case $host_os in
2753 openbsd2.[[89]] | openbsd2.[[89]].*)
2754 shlibpath_overrides_runpath=no
2755 ;;
2756 *)
2757 shlibpath_overrides_runpath=yes
2758 ;;
2759 esac
2760 else
2761 shlibpath_overrides_runpath=yes
2762 fi
2763 ;;
2764
2765os2*)
2766 libname_spec='$name'
2767 shrext_cmds=".dll"
2768 need_lib_prefix=no
2769 library_names_spec='$libname${shared_ext} $libname.a'
2770 dynamic_linker='OS/2 ld.exe'
2771 shlibpath_var=LIBPATH
2772 ;;
2773
2774osf3* | osf4* | osf5*)
2775 version_type=osf
2776 need_lib_prefix=no
2777 need_version=no
2778 soname_spec='${libname}${release}${shared_ext}$major'
2779 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2780 shlibpath_var=LD_LIBRARY_PATH
2781 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
2782 sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
2783 ;;
2784
2785rdos*)
2786 dynamic_linker=no
2787 ;;
2788
2789solaris*)
a949ab1a 2790 version_type=linux # correct to gnu/linux during the next big refactor
db137867
AC
2791 need_lib_prefix=no
2792 need_version=no
2793 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2794 soname_spec='${libname}${release}${shared_ext}$major'
2795 shlibpath_var=LD_LIBRARY_PATH
2796 shlibpath_overrides_runpath=yes
2797 hardcode_into_libs=yes
2798 # ldd complains unless libraries are executable
2799 postinstall_cmds='chmod +x $lib'
2800 ;;
2801
2802sunos4*)
2803 version_type=sunos
2804 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2805 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
2806 shlibpath_var=LD_LIBRARY_PATH
2807 shlibpath_overrides_runpath=yes
2808 if test "$with_gnu_ld" = yes; then
2809 need_lib_prefix=no
2810 fi
2811 need_version=yes
2812 ;;
2813
2814sysv4 | sysv4.3*)
a949ab1a 2815 version_type=linux # correct to gnu/linux during the next big refactor
db137867
AC
2816 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2817 soname_spec='${libname}${release}${shared_ext}$major'
2818 shlibpath_var=LD_LIBRARY_PATH
2819 case $host_vendor in
2820 sni)
2821 shlibpath_overrides_runpath=no
2822 need_lib_prefix=no
db137867
AC
2823 runpath_var=LD_RUN_PATH
2824 ;;
2825 siemens)
2826 need_lib_prefix=no
2827 ;;
2828 motorola)
2829 need_lib_prefix=no
2830 need_version=no
2831 shlibpath_overrides_runpath=no
2832 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
2833 ;;
2834 esac
2835 ;;
2836
2837sysv4*MP*)
2838 if test -d /usr/nec ;then
a949ab1a 2839 version_type=linux # correct to gnu/linux during the next big refactor
db137867
AC
2840 library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
2841 soname_spec='$libname${shared_ext}.$major'
2842 shlibpath_var=LD_LIBRARY_PATH
2843 fi
2844 ;;
2845
2846sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
2847 version_type=freebsd-elf
2848 need_lib_prefix=no
2849 need_version=no
2850 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2851 soname_spec='${libname}${release}${shared_ext}$major'
2852 shlibpath_var=LD_LIBRARY_PATH
7083c021 2853 shlibpath_overrides_runpath=yes
db137867
AC
2854 hardcode_into_libs=yes
2855 if test "$with_gnu_ld" = yes; then
2856 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
db137867
AC
2857 else
2858 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
db137867
AC
2859 case $host_os in
2860 sco3.2v5*)
2861 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
2862 ;;
2863 esac
2864 fi
2865 sys_lib_dlsearch_path_spec='/usr/lib'
2866 ;;
2867
7083c021
AC
2868tpf*)
2869 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
a949ab1a 2870 version_type=linux # correct to gnu/linux during the next big refactor
7083c021
AC
2871 need_lib_prefix=no
2872 need_version=no
2873 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2874 shlibpath_var=LD_LIBRARY_PATH
2875 shlibpath_overrides_runpath=no
2876 hardcode_into_libs=yes
2877 ;;
2878
db137867 2879uts4*)
a949ab1a 2880 version_type=linux # correct to gnu/linux during the next big refactor
db137867
AC
2881 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2882 soname_spec='${libname}${release}${shared_ext}$major'
2883 shlibpath_var=LD_LIBRARY_PATH
2884 ;;
2885
2886*)
2887 dynamic_linker=no
2888 ;;
2889esac
2890AC_MSG_RESULT([$dynamic_linker])
2891test "$dynamic_linker" = no && can_build_shared=no
2892
2893variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
2894if test "$GCC" = yes; then
2895 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
2896fi
db137867 2897
7083c021
AC
2898if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
2899 sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
2900fi
2901if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
2902 sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
2903fi
db137867 2904
7083c021
AC
2905_LT_DECL([], [variables_saved_for_relink], [1],
2906 [Variables whose values should be saved in libtool wrapper scripts and
2907 restored at link time])
2908_LT_DECL([], [need_lib_prefix], [0],
2909 [Do we need the "lib" prefix for modules?])
2910_LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
2911_LT_DECL([], [version_type], [0], [Library versioning type])
2912_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
2913_LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
2914_LT_DECL([], [shlibpath_overrides_runpath], [0],
2915 [Is shlibpath searched before the hard-coded library search path?])
2916_LT_DECL([], [libname_spec], [1], [Format of library name prefix])
2917_LT_DECL([], [library_names_spec], [1],
2918 [[List of archive names. First name is the real one, the rest are links.
2919 The last name is the one that the linker finds with -lNAME]])
2920_LT_DECL([], [soname_spec], [1],
2921 [[The coded name of the library, if different from the real name]])
b6d0720c
AC
2922_LT_DECL([], [install_override_mode], [1],
2923 [Permission mode override for installation of shared libraries])
7083c021
AC
2924_LT_DECL([], [postinstall_cmds], [2],
2925 [Command to use after installation of a shared archive])
2926_LT_DECL([], [postuninstall_cmds], [2],
2927 [Command to use after uninstallation of a shared archive])
2928_LT_DECL([], [finish_cmds], [2],
2929 [Commands used to finish a libtool library installation in a directory])
2930_LT_DECL([], [finish_eval], [1],
2931 [[As "finish_cmds", except a single script fragment to be evaled but
2932 not shown]])
2933_LT_DECL([], [hardcode_into_libs], [0],
2934 [Whether we should hardcode library paths into libraries])
2935_LT_DECL([], [sys_lib_search_path_spec], [2],
2936 [Compile-time system search path for libraries])
2937_LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
2938 [Run-time system search path for libraries])
2939])# _LT_SYS_DYNAMIC_LINKER
2940
2941
2942# _LT_PATH_TOOL_PREFIX(TOOL)
db137867 2943# --------------------------
db137867 2944# find a file program which can recognize shared library
7083c021
AC
2945AC_DEFUN([_LT_PATH_TOOL_PREFIX],
2946[m4_require([_LT_DECL_EGREP])dnl
db137867
AC
2947AC_MSG_CHECKING([for $1])
2948AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
2949[case $MAGIC_CMD in
2950[[\\/*] | ?:[\\/]*])
2951 lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
2952 ;;
2953*)
2954 lt_save_MAGIC_CMD="$MAGIC_CMD"
2955 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
2956dnl $ac_dummy forces splitting on constant user-supplied paths.
2957dnl POSIX.2 word splitting is done only on the output of word expansions,
2958dnl not every word. This closes a longstanding sh security hole.
7083c021 2959 ac_dummy="m4_if([$2], , $PATH, [$2])"
db137867
AC
2960 for ac_dir in $ac_dummy; do
2961 IFS="$lt_save_ifs"
2962 test -z "$ac_dir" && ac_dir=.
2963 if test -f $ac_dir/$1; then
2964 lt_cv_path_MAGIC_CMD="$ac_dir/$1"
2965 if test -n "$file_magic_test_file"; then
2966 case $deplibs_check_method in
2967 "file_magic "*)
2968 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
2969 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2970 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
2971 $EGREP "$file_magic_regex" > /dev/null; then
2972 :
2973 else
7083c021 2974 cat <<_LT_EOF 1>&2
db137867
AC
2975
2976*** Warning: the command libtool uses to detect shared libraries,
2977*** $file_magic_cmd, produces output that libtool cannot recognize.
2978*** The result is that libtool may fail to recognize shared libraries
2979*** as such. This will affect the creation of libtool libraries that
2980*** depend on shared libraries, but programs linked with such libtool
2981*** libraries will work regardless of this problem. Nevertheless, you
2982*** may want to report the problem to your system manager and/or to
2983*** bug-libtool@gnu.org
2984
7083c021 2985_LT_EOF
db137867
AC
2986 fi ;;
2987 esac
2988 fi
2989 break
2990 fi
2991 done
2992 IFS="$lt_save_ifs"
2993 MAGIC_CMD="$lt_save_MAGIC_CMD"
2994 ;;
2995esac])
2996MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
2997if test -n "$MAGIC_CMD"; then
2998 AC_MSG_RESULT($MAGIC_CMD)
2999else
3000 AC_MSG_RESULT(no)
3001fi
7083c021
AC
3002_LT_DECL([], [MAGIC_CMD], [0],
3003 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
3004])# _LT_PATH_TOOL_PREFIX
db137867 3005
7083c021
AC
3006# Old name:
3007AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
3008dnl aclocal-1.4 backwards compatibility:
3009dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
db137867 3010
7083c021
AC
3011
3012# _LT_PATH_MAGIC
3013# --------------
db137867 3014# find a file program which can recognize a shared library
7083c021
AC
3015m4_defun([_LT_PATH_MAGIC],
3016[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
db137867
AC
3017if test -z "$lt_cv_path_MAGIC_CMD"; then
3018 if test -n "$ac_tool_prefix"; then
7083c021 3019 _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
db137867
AC
3020 else
3021 MAGIC_CMD=:
3022 fi
3023fi
7083c021 3024])# _LT_PATH_MAGIC
db137867
AC
3025
3026
7083c021 3027# LT_PATH_LD
db137867
AC
3028# ----------
3029# find the pathname to the GNU or non-GNU linker
7083c021
AC
3030AC_DEFUN([LT_PATH_LD],
3031[AC_REQUIRE([AC_PROG_CC])dnl
db137867
AC
3032AC_REQUIRE([AC_CANONICAL_HOST])dnl
3033AC_REQUIRE([AC_CANONICAL_BUILD])dnl
7083c021
AC
3034m4_require([_LT_DECL_SED])dnl
3035m4_require([_LT_DECL_EGREP])dnl
b6d0720c 3036m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
7083c021
AC
3037
3038AC_ARG_WITH([gnu-ld],
3039 [AS_HELP_STRING([--with-gnu-ld],
3040 [assume the C compiler uses GNU ld @<:@default=no@:>@])],
3041 [test "$withval" = no || with_gnu_ld=yes],
3042 [with_gnu_ld=no])dnl
3043
db137867
AC
3044ac_prog=ld
3045if test "$GCC" = yes; then
3046 # Check if gcc -print-prog-name=ld gives a path.
3047 AC_MSG_CHECKING([for ld used by $CC])
3048 case $host in
3049 *-*-mingw*)
3050 # gcc leaves a trailing carriage return which upsets mingw
3051 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
3052 *)
3053 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
3054 esac
3055 case $ac_prog in
3056 # Accept absolute paths.
3057 [[\\/]]* | ?:[[\\/]]*)
3058 re_direlt='/[[^/]][[^/]]*/\.\./'
3059 # Canonicalize the pathname of ld
7083c021
AC
3060 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
3061 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
3062 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
db137867
AC
3063 done
3064 test -z "$LD" && LD="$ac_prog"
3065 ;;
3066 "")
3067 # If it fails, then pretend we aren't using GCC.
3068 ac_prog=ld
3069 ;;
3070 *)
3071 # If it is relative, then search for the first ld in PATH.
3072 with_gnu_ld=unknown
3073 ;;
3074 esac
3075elif test "$with_gnu_ld" = yes; then
3076 AC_MSG_CHECKING([for GNU ld])
3077else
3078 AC_MSG_CHECKING([for non-GNU ld])
3079fi
3080AC_CACHE_VAL(lt_cv_path_LD,
3081[if test -z "$LD"; then
3082 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3083 for ac_dir in $PATH; do
3084 IFS="$lt_save_ifs"
3085 test -z "$ac_dir" && ac_dir=.
3086 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
3087 lt_cv_path_LD="$ac_dir/$ac_prog"
3088 # Check to see if the program is GNU ld. I'd rather use --version,
3089 # but apparently some variants of GNU ld only accept -v.
3090 # Break only if it was the GNU/non-GNU ld that we prefer.
3091 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
3092 *GNU* | *'with BFD'*)
3093 test "$with_gnu_ld" != no && break
3094 ;;
3095 *)
3096 test "$with_gnu_ld" != yes && break
3097 ;;
3098 esac
3099 fi
3100 done
3101 IFS="$lt_save_ifs"
3102else
3103 lt_cv_path_LD="$LD" # Let the user override the test with a path.
3104fi])
3105LD="$lt_cv_path_LD"
3106if test -n "$LD"; then
3107 AC_MSG_RESULT($LD)
3108else
3109 AC_MSG_RESULT(no)
3110fi
3111test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
7083c021
AC
3112_LT_PATH_LD_GNU
3113AC_SUBST([LD])
db137867 3114
7083c021
AC
3115_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
3116])# LT_PATH_LD
db137867 3117
7083c021
AC
3118# Old names:
3119AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
3120AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
3121dnl aclocal-1.4 backwards compatibility:
3122dnl AC_DEFUN([AM_PROG_LD], [])
3123dnl AC_DEFUN([AC_PROG_LD], [])
3124
3125
3126# _LT_PATH_LD_GNU
3127#- --------------
3128m4_defun([_LT_PATH_LD_GNU],
3129[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
db137867
AC
3130[# I'd rather use --version here, but apparently some GNU lds only accept -v.
3131case `$LD -v 2>&1 </dev/null` in
3132*GNU* | *'with BFD'*)
3133 lt_cv_prog_gnu_ld=yes
3134 ;;
3135*)
3136 lt_cv_prog_gnu_ld=no
3137 ;;
3138esac])
3139with_gnu_ld=$lt_cv_prog_gnu_ld
7083c021 3140])# _LT_PATH_LD_GNU
db137867
AC
3141
3142
7083c021
AC
3143# _LT_CMD_RELOAD
3144# --------------
db137867
AC
3145# find reload flag for linker
3146# -- PORTME Some linkers may need a different reload flag.
7083c021 3147m4_defun([_LT_CMD_RELOAD],
db137867
AC
3148[AC_CACHE_CHECK([for $LD option to reload object files],
3149 lt_cv_ld_reload_flag,
3150 [lt_cv_ld_reload_flag='-r'])
3151reload_flag=$lt_cv_ld_reload_flag
3152case $reload_flag in
3153"" | " "*) ;;
3154*) reload_flag=" $reload_flag" ;;
3155esac
3156reload_cmds='$LD$reload_flag -o $output$reload_objs'
3157case $host_os in
b6d0720c
AC
3158 cygwin* | mingw* | pw32* | cegcc*)
3159 if test "$GCC" != yes; then
3160 reload_cmds=false
3161 fi
3162 ;;
db137867
AC
3163 darwin*)
3164 if test "$GCC" = yes; then
3165 reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
3166 else
3167 reload_cmds='$LD$reload_flag -o $output$reload_objs'
3168 fi
3169 ;;
3170esac
b6d0720c
AC
3171_LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
3172_LT_TAGDECL([], [reload_cmds], [2])dnl
7083c021 3173])# _LT_CMD_RELOAD
db137867
AC
3174
3175
7083c021
AC
3176# _LT_CHECK_MAGIC_METHOD
3177# ----------------------
db137867
AC
3178# how to check for library dependencies
3179# -- PORTME fill in with the dynamic library characteristics
7083c021
AC
3180m4_defun([_LT_CHECK_MAGIC_METHOD],
3181[m4_require([_LT_DECL_EGREP])
3182m4_require([_LT_DECL_OBJDUMP])
3183AC_CACHE_CHECK([how to recognize dependent libraries],
db137867
AC
3184lt_cv_deplibs_check_method,
3185[lt_cv_file_magic_cmd='$MAGIC_CMD'
3186lt_cv_file_magic_test_file=
3187lt_cv_deplibs_check_method='unknown'
3188# Need to set the preceding variable on all platforms that support
3189# interlibrary dependencies.
3190# 'none' -- dependencies not supported.
3191# `unknown' -- same as none, but documents that we really don't know.
3192# 'pass_all' -- all dependencies passed with no checks.
3193# 'test_compile' -- check by making test program.
3194# 'file_magic [[regex]]' -- check by looking for files in library path
3195# which responds to the $file_magic_cmd with a given extended regex.
3196# If you have `file' or equivalent on your system and you're not sure
3197# whether `pass_all' will *always* work, you probably want this one.
3198
3199case $host_os in
b676ea3b 3200aix[[4-9]]*)
db137867
AC
3201 lt_cv_deplibs_check_method=pass_all
3202 ;;
3203
3204beos*)
3205 lt_cv_deplibs_check_method=pass_all
3206 ;;
3207
3208bsdi[[45]]*)
3209 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3210 lt_cv_file_magic_cmd='/usr/bin/file -L'
3211 lt_cv_file_magic_test_file=/shlib/libc.so
3212 ;;
3213
3214cygwin*)
3215 # func_win32_libid is a shell function defined in ltmain.sh
3216 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3217 lt_cv_file_magic_cmd='func_win32_libid'
3218 ;;
3219
3220mingw* | pw32*)
3221 # Base MSYS/MinGW do not provide the 'file' command needed by
3222 # func_win32_libid shell function, so use a weaker test based on 'objdump',
3223 # unless we find 'file', for example because we are cross-compiling.
b6d0720c
AC
3224 # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
3225 if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
db137867
AC
3226 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3227 lt_cv_file_magic_cmd='func_win32_libid'
3228 else
b6d0720c
AC
3229 # Keep this pattern in sync with the one in func_win32_libid.
3230 lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
db137867
AC
3231 lt_cv_file_magic_cmd='$OBJDUMP -f'
3232 fi
3233 ;;
3234
b6d0720c 3235cegcc*)
7083c021
AC
3236 # use the weaker test based on 'objdump'. See mingw*.
3237 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
3238 lt_cv_file_magic_cmd='$OBJDUMP -f'
3239 ;;
3240
db137867
AC
3241darwin* | rhapsody*)
3242 lt_cv_deplibs_check_method=pass_all
3243 ;;
3244
3245freebsd* | dragonfly*)
7083c021 3246 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
db137867
AC
3247 case $host_cpu in
3248 i*86 )
3249 # Not sure whether the presence of OpenBSD here was a mistake.
3250 # Let's accept both of them until this is cleared up.
3251 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
3252 lt_cv_file_magic_cmd=/usr/bin/file
3253 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3254 ;;
3255 esac
3256 else
3257 lt_cv_deplibs_check_method=pass_all
3258 fi
3259 ;;
3260
b6d0720c
AC
3261haiku*)
3262 lt_cv_deplibs_check_method=pass_all
3263 ;;
3264
db137867
AC
3265hpux10.20* | hpux11*)
3266 lt_cv_file_magic_cmd=/usr/bin/file
3267 case $host_cpu in
3268 ia64*)
3269 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
3270 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
3271 ;;
3272 hppa*64*)
b6d0720c 3273 [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]']
db137867
AC
3274 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3275 ;;
3276 *)
b6d0720c 3277 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
db137867
AC
3278 lt_cv_file_magic_test_file=/usr/lib/libc.sl
3279 ;;
3280 esac
3281 ;;
3282
3283interix[[3-9]]*)
3284 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
3285 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
3286 ;;
3287
3288irix5* | irix6* | nonstopux*)
3289 case $LD in
3290 *-32|*"-32 ") libmagic=32-bit;;
3291 *-n32|*"-n32 ") libmagic=N32;;
3292 *-64|*"-64 ") libmagic=64-bit;;
3293 *) libmagic=never-match;;
3294 esac
3295 lt_cv_deplibs_check_method=pass_all
3296 ;;
3297
a949ab1a 3298# This must be glibc/ELF.
e4cf89d4 3299linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
db137867
AC
3300 lt_cv_deplibs_check_method=pass_all
3301 ;;
3302
e4cf89d4 3303netbsd* | netbsdelf*-gnu)
7083c021 3304 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
db137867
AC
3305 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3306 else
3307 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
3308 fi
3309 ;;
3310
3311newos6*)
3312 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
3313 lt_cv_file_magic_cmd=/usr/bin/file
3314 lt_cv_file_magic_test_file=/usr/lib/libnls.so
3315 ;;
3316
7083c021
AC
3317*nto* | *qnx*)
3318 lt_cv_deplibs_check_method=pass_all
db137867
AC
3319 ;;
3320
3321openbsd*)
7083c021 3322 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
db137867
AC
3323 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
3324 else
3325 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3326 fi
3327 ;;
3328
3329osf3* | osf4* | osf5*)
3330 lt_cv_deplibs_check_method=pass_all
3331 ;;
3332
3333rdos*)
3334 lt_cv_deplibs_check_method=pass_all
3335 ;;
3336
3337solaris*)
3338 lt_cv_deplibs_check_method=pass_all
3339 ;;
3340
7083c021
AC
3341sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3342 lt_cv_deplibs_check_method=pass_all
3343 ;;
3344
db137867
AC
3345sysv4 | sysv4.3*)
3346 case $host_vendor in
3347 motorola)
3348 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]]'
3349 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3350 ;;
3351 ncr)
3352 lt_cv_deplibs_check_method=pass_all
3353 ;;
3354 sequent)
3355 lt_cv_file_magic_cmd='/bin/file'
3356 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3357 ;;
3358 sni)
3359 lt_cv_file_magic_cmd='/bin/file'
3360 lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3361 lt_cv_file_magic_test_file=/lib/libc.so
3362 ;;
3363 siemens)
3364 lt_cv_deplibs_check_method=pass_all
3365 ;;
3366 pc)
3367 lt_cv_deplibs_check_method=pass_all
3368 ;;
3369 esac
3370 ;;
3371
7083c021 3372tpf*)
db137867
AC
3373 lt_cv_deplibs_check_method=pass_all
3374 ;;
3375esac
3376])
b6d0720c
AC
3377
3378file_magic_glob=
3379want_nocaseglob=no
3380if test "$build" = "$host"; then
3381 case $host_os in
3382 mingw* | pw32*)
3383 if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
3384 want_nocaseglob=yes
3385 else
3386 file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
3387 fi
3388 ;;
3389 esac
3390fi
3391
db137867
AC
3392file_magic_cmd=$lt_cv_file_magic_cmd
3393deplibs_check_method=$lt_cv_deplibs_check_method
3394test -z "$deplibs_check_method" && deplibs_check_method=unknown
7083c021
AC
3395
3396_LT_DECL([], [deplibs_check_method], [1],
3397 [Method to check whether dependent libraries are shared objects])
3398_LT_DECL([], [file_magic_cmd], [1],
b6d0720c
AC
3399 [Command to use when deplibs_check_method = "file_magic"])
3400_LT_DECL([], [file_magic_glob], [1],
3401 [How to find potential files when deplibs_check_method = "file_magic"])
3402_LT_DECL([], [want_nocaseglob], [1],
3403 [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
7083c021 3404])# _LT_CHECK_MAGIC_METHOD
db137867
AC
3405
3406
7083c021 3407# LT_PATH_NM
db137867 3408# ----------
7083c021
AC
3409# find the pathname to a BSD- or MS-compatible name lister
3410AC_DEFUN([LT_PATH_NM],
3411[AC_REQUIRE([AC_PROG_CC])dnl
3412AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
db137867
AC
3413[if test -n "$NM"; then
3414 # Let the user override the test.
3415 lt_cv_path_NM="$NM"
3416else
3417 lt_nm_to_check="${ac_tool_prefix}nm"
3418 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
3419 lt_nm_to_check="$lt_nm_to_check nm"
3420 fi
3421 for lt_tmp_nm in $lt_nm_to_check; do
3422 lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
3423 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
3424 IFS="$lt_save_ifs"
3425 test -z "$ac_dir" && ac_dir=.
3426 tmp_nm="$ac_dir/$lt_tmp_nm"
3427 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
3428 # Check to see if the nm accepts a BSD-compat flag.
3429 # Adding the `sed 1q' prevents false positives on HP-UX, which says:
3430 # nm: unknown option "B" ignored
3431 # Tru64's nm complains that /dev/null is an invalid object file
3432 case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
3433 */dev/null* | *'Invalid file or object type'*)
3434 lt_cv_path_NM="$tmp_nm -B"
3435 break
3436 ;;
3437 *)
3438 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
3439 */dev/null*)
3440 lt_cv_path_NM="$tmp_nm -p"
3441 break
3442 ;;
3443 *)
3444 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3445 continue # so that we can try to find one that supports BSD flags
3446 ;;
3447 esac
3448 ;;
3449 esac
3450 fi
3451 done
3452 IFS="$lt_save_ifs"
3453 done
7083c021 3454 : ${lt_cv_path_NM=no}
db137867 3455fi])
7083c021
AC
3456if test "$lt_cv_path_NM" != "no"; then
3457 NM="$lt_cv_path_NM"
3458else
3459 # Didn't find any BSD compatible name lister, look for dumpbin.
b6d0720c
AC
3460 if test -n "$DUMPBIN"; then :
3461 # Let the user override the test.
3462 else
3463 AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
3464 case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in
3465 *COFF*)
3466 DUMPBIN="$DUMPBIN -symbols"
3467 ;;
3468 *)
3469 DUMPBIN=:
3470 ;;
3471 esac
3472 fi
7083c021
AC
3473 AC_SUBST([DUMPBIN])
3474 if test "$DUMPBIN" != ":"; then
3475 NM="$DUMPBIN"
3476 fi
3477fi
3478test -z "$NM" && NM=nm
3479AC_SUBST([NM])
3480_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
3481
3482AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
3483 [lt_cv_nm_interface="BSD nm"
3484 echo "int some_variable = 0;" > conftest.$ac_ext
b6d0720c 3485 (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
7083c021
AC
3486 (eval "$ac_compile" 2>conftest.err)
3487 cat conftest.err >&AS_MESSAGE_LOG_FD
b6d0720c 3488 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
7083c021
AC
3489 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3490 cat conftest.err >&AS_MESSAGE_LOG_FD
b6d0720c 3491 (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
7083c021
AC
3492 cat conftest.out >&AS_MESSAGE_LOG_FD
3493 if $GREP 'External.*some_variable' conftest.out > /dev/null; then
3494 lt_cv_nm_interface="MS dumpbin"
3495 fi
3496 rm -f conftest*])
3497])# LT_PATH_NM
db137867 3498
7083c021
AC
3499# Old names:
3500AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
3501AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
3502dnl aclocal-1.4 backwards compatibility:
3503dnl AC_DEFUN([AM_PROG_NM], [])
3504dnl AC_DEFUN([AC_PROG_NM], [])
db137867 3505
b6d0720c
AC
3506# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3507# --------------------------------
3508# how to determine the name of the shared library
3509# associated with a specific link library.
3510# -- PORTME fill in with the dynamic library characteristics
3511m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
3512[m4_require([_LT_DECL_EGREP])
3513m4_require([_LT_DECL_OBJDUMP])
3514m4_require([_LT_DECL_DLLTOOL])
3515AC_CACHE_CHECK([how to associate runtime and link libraries],
3516lt_cv_sharedlib_from_linklib_cmd,
3517[lt_cv_sharedlib_from_linklib_cmd='unknown'
3518
3519case $host_os in
3520cygwin* | mingw* | pw32* | cegcc*)
3521 # two different shell functions defined in ltmain.sh
3522 # decide which to use based on capabilities of $DLLTOOL
3523 case `$DLLTOOL --help 2>&1` in
3524 *--identify-strict*)
3525 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
3526 ;;
3527 *)
3528 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
3529 ;;
3530 esac
3531 ;;
3532*)
3533 # fallback: assume linklib IS sharedlib
3534 lt_cv_sharedlib_from_linklib_cmd="$ECHO"
3535 ;;
3536esac
3537])
3538sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
3539test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
3540
3541_LT_DECL([], [sharedlib_from_linklib_cmd], [1],
3542 [Command to associate shared and link libraries])
3543])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3544
3545
3546# _LT_PATH_MANIFEST_TOOL
3547# ----------------------
3548# locate the manifest tool
3549m4_defun([_LT_PATH_MANIFEST_TOOL],
3550[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
3551test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
3552AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
3553 [lt_cv_path_mainfest_tool=no
3554 echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
3555 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
3556 cat conftest.err >&AS_MESSAGE_LOG_FD
3557 if $GREP 'Manifest Tool' conftest.out > /dev/null; then
3558 lt_cv_path_mainfest_tool=yes
3559 fi
3560 rm -f conftest*])
3561if test "x$lt_cv_path_mainfest_tool" != xyes; then
3562 MANIFEST_TOOL=:
3563fi
3564_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
3565])# _LT_PATH_MANIFEST_TOOL
3566
7083c021
AC
3567
3568# LT_LIB_M
3569# --------
db137867 3570# check for math library
7083c021 3571AC_DEFUN([LT_LIB_M],
db137867
AC
3572[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3573LIBM=
3574case $host in
b6d0720c 3575*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
db137867
AC
3576 # These system don't have libm, or don't need it
3577 ;;
3578*-ncr-sysv4.3*)
3579 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM="-lmw")
3580 AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
3581 ;;
3582*)
3583 AC_CHECK_LIB(m, cos, LIBM="-lm")
3584 ;;
3585esac
7083c021
AC
3586AC_SUBST([LIBM])
3587])# LT_LIB_M
db137867 3588
7083c021
AC
3589# Old name:
3590AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
3591dnl aclocal-1.4 backwards compatibility:
3592dnl AC_DEFUN([AC_CHECK_LIBM], [])
db137867 3593
db137867 3594
7083c021
AC
3595# _LT_COMPILER_NO_RTTI([TAGNAME])
3596# -------------------------------
3597m4_defun([_LT_COMPILER_NO_RTTI],
3598[m4_require([_LT_TAG_COMPILER])dnl
db137867 3599
7083c021 3600_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
db137867 3601
7083c021 3602if test "$GCC" = yes; then
b6d0720c
AC
3603 case $cc_basename in
3604 nvcc*)
3605 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
3606 *)
3607 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
3608 esac
db137867 3609
7083c021
AC
3610 _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
3611 lt_cv_prog_compiler_rtti_exceptions,
3612 [-fno-rtti -fno-exceptions], [],
3613 [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
3614fi
3615_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
3616 [Compiler flag to turn off builtin functions])
3617])# _LT_COMPILER_NO_RTTI
db137867
AC
3618
3619
7083c021
AC
3620# _LT_CMD_GLOBAL_SYMBOLS
3621# ----------------------
3622m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
3623[AC_REQUIRE([AC_CANONICAL_HOST])dnl
3624AC_REQUIRE([AC_PROG_CC])dnl
b6d0720c 3625AC_REQUIRE([AC_PROG_AWK])dnl
7083c021
AC
3626AC_REQUIRE([LT_PATH_NM])dnl
3627AC_REQUIRE([LT_PATH_LD])dnl
3628m4_require([_LT_DECL_SED])dnl
3629m4_require([_LT_DECL_EGREP])dnl
3630m4_require([_LT_TAG_COMPILER])dnl
db137867 3631
7083c021
AC
3632# Check for command to grab the raw symbol name followed by C symbol from nm.
3633AC_MSG_CHECKING([command to parse $NM output from $compiler object])
3634AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
db137867 3635[
7083c021
AC
3636# These are sane defaults that work on at least a few old systems.
3637# [They come from Ultrix. What could be older than Ultrix?!! ;)]
db137867 3638
7083c021
AC
3639# Character class describing NM global symbol codes.
3640symcode='[[BCDEGRST]]'
db137867 3641
7083c021
AC
3642# Regexp to match symbols that can be accessed directly from C.
3643sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
db137867 3644
7083c021
AC
3645# Define system-specific variables.
3646case $host_os in
3647aix*)
3648 symcode='[[BCDT]]'
3649 ;;
3650cygwin* | mingw* | pw32* | cegcc*)
3651 symcode='[[ABCDGISTW]]'
3652 ;;
3653hpux*)
3654 if test "$host_cpu" = ia64; then
3655 symcode='[[ABCDEGRST]]'
3656 fi
3657 ;;
3658irix* | nonstopux*)
3659 symcode='[[BCDEGRST]]'
3660 ;;
3661osf*)
3662 symcode='[[BCDEGQRST]]'
3663 ;;
3664solaris*)
3665 symcode='[[BDRT]]'
3666 ;;
3667sco3.2v5*)
3668 symcode='[[DT]]'
3669 ;;
3670sysv4.2uw2*)
3671 symcode='[[DT]]'
3672 ;;
3673sysv5* | sco5v6* | unixware* | OpenUNIX*)
3674 symcode='[[ABDT]]'
3675 ;;
3676sysv4)
3677 symcode='[[DFNSTU]]'
3678 ;;
3679esac
db137867 3680
7083c021
AC
3681# If we're using GNU nm, then use its standard symbol codes.
3682case `$NM -V 2>&1` in
3683*GNU* | *'with BFD'*)
3684 symcode='[[ABCDGIRSTW]]' ;;
3685esac
db137867 3686
7083c021
AC
3687# Transform an extracted symbol line into a proper C declaration.
3688# Some systems (esp. on ia64) link data and code symbols differently,
3689# so use this general approach.
3690lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
db137867 3691
7083c021 3692# Transform an extracted symbol line into symbol name and symbol address
b6d0720c
AC
3693lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p'"
3694lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([[^ ]]*\)[[ ]]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \(lib[[^ ]]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"lib\2\", (void *) \&\2},/p'"
db137867 3695
7083c021
AC
3696# Handle CRLF in mingw tool chain
3697opt_cr=
3698case $build_os in
3699mingw*)
3700 opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
3701 ;;
3702esac
db137867 3703
7083c021
AC
3704# Try without a prefix underscore, then with it.
3705for ac_symprfx in "" "_"; do
db137867 3706
7083c021
AC
3707 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
3708 symxfrm="\\1 $ac_symprfx\\2 \\2"
db137867 3709
7083c021
AC
3710 # Write the raw and C identifiers.
3711 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3712 # Fake it for dumpbin and say T for any non-static function
3713 # and D for any global variable.
3714 # Also find C++ and __fastcall symbols from MSVC++,
3715 # which start with @ or ?.
3716 lt_cv_sys_global_symbol_pipe="$AWK ['"\
3717" {last_section=section; section=\$ 3};"\
a949ab1a 3718" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
7083c021
AC
3719" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
3720" \$ 0!~/External *\|/{next};"\
3721" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
3722" {if(hide[section]) next};"\
3723" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\
3724" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\
3725" s[1]~/^[@?]/{print s[1], s[1]; next};"\
3726" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\
3727" ' prfx=^$ac_symprfx]"
3728 else
3729 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
3730 fi
b6d0720c 3731 lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
db137867 3732
7083c021
AC
3733 # Check to see that the pipe works correctly.
3734 pipe_works=no
db137867 3735
7083c021
AC
3736 rm -f conftest*
3737 cat > conftest.$ac_ext <<_LT_EOF
3738#ifdef __cplusplus
3739extern "C" {
3740#endif
3741char nm_test_var;
3742void nm_test_func(void);
3743void nm_test_func(void){}
3744#ifdef __cplusplus
3745}
3746#endif
3747int main(){nm_test_var='a';nm_test_func();return(0);}
3748_LT_EOF
db137867 3749
7083c021
AC
3750 if AC_TRY_EVAL(ac_compile); then
3751 # Now try to grab the symbols.
3752 nlist=conftest.nm
b6d0720c 3753 if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
7083c021
AC
3754 # Try sorting and uniquifying the output.
3755 if sort "$nlist" | uniq > "$nlist"T; then
3756 mv -f "$nlist"T "$nlist"
3757 else
3758 rm -f "$nlist"T
3759 fi
db137867 3760
7083c021
AC
3761 # Make sure that we snagged all the symbols we need.
3762 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
3763 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
3764 cat <<_LT_EOF > conftest.$ac_ext
b6d0720c
AC
3765/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
3766#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE)
3767/* DATA imports from DLLs on WIN32 con't be const, because runtime
3768 relocations are performed -- see ld's documentation on pseudo-relocs. */
3769# define LT@&t@_DLSYM_CONST
3770#elif defined(__osf__)
3771/* This system does not cope well with relocations in const data. */
3772# define LT@&t@_DLSYM_CONST
3773#else
3774# define LT@&t@_DLSYM_CONST const
3775#endif
3776
7083c021
AC
3777#ifdef __cplusplus
3778extern "C" {
3779#endif
db137867 3780
7083c021
AC
3781_LT_EOF
3782 # Now generate the symbol file.
3783 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
db137867 3784
7083c021 3785 cat <<_LT_EOF >> conftest.$ac_ext
db137867 3786
7083c021 3787/* The mapping between symbol names and symbols. */
b6d0720c 3788LT@&t@_DLSYM_CONST struct {
7083c021
AC
3789 const char *name;
3790 void *address;
3791}
3792lt__PROGRAM__LTX_preloaded_symbols[[]] =
3793{
3794 { "@PROGRAM@", (void *) 0 },
3795_LT_EOF
3796 $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
3797 cat <<\_LT_EOF >> conftest.$ac_ext
3798 {0, (void *) 0}
3799};
db137867 3800
7083c021
AC
3801/* This works around a problem in FreeBSD linker */
3802#ifdef FREEBSD_WORKAROUND
3803static const void *lt_preloaded_setup() {
3804 return lt__PROGRAM__LTX_preloaded_symbols;
3805}
3806#endif
db137867 3807
7083c021
AC
3808#ifdef __cplusplus
3809}
3810#endif
3811_LT_EOF
3812 # Now try linking the two files.
3813 mv conftest.$ac_objext conftstm.$ac_objext
b6d0720c
AC
3814 lt_globsym_save_LIBS=$LIBS
3815 lt_globsym_save_CFLAGS=$CFLAGS
7083c021
AC
3816 LIBS="conftstm.$ac_objext"
3817 CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
3818 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext}; then
3819 pipe_works=yes
3820 fi
b6d0720c
AC
3821 LIBS=$lt_globsym_save_LIBS
3822 CFLAGS=$lt_globsym_save_CFLAGS
7083c021
AC
3823 else
3824 echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
3825 fi
3826 else
3827 echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
3828 fi
db137867 3829 else
7083c021 3830 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
db137867
AC
3831 fi
3832 else
7083c021
AC
3833 echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
3834 cat conftest.$ac_ext >&5
db137867 3835 fi
7083c021 3836 rm -rf conftest* conftst*
db137867 3837
7083c021
AC
3838 # Do not use the global_symbol_pipe unless it works.
3839 if test "$pipe_works" = yes; then
3840 break
3841 else
3842 lt_cv_sys_global_symbol_pipe=
3843 fi
3844done
3845])
3846if test -z "$lt_cv_sys_global_symbol_pipe"; then
3847 lt_cv_sys_global_symbol_to_cdecl=
3848fi
3849if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
3850 AC_MSG_RESULT(failed)
db137867 3851else
7083c021 3852 AC_MSG_RESULT(ok)
db137867
AC
3853fi
3854
b6d0720c
AC
3855# Response file support.
3856if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3857 nm_file_list_spec='@'
3858elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
3859 nm_file_list_spec='@'
3860fi
3861
3862_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
7083c021
AC
3863 [Take the output of nm and produce a listing of raw symbols and C names])
3864_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
3865 [Transform the output of nm in a proper C declaration])
3866_LT_DECL([global_symbol_to_c_name_address],
3867 [lt_cv_sys_global_symbol_to_c_name_address], [1],
3868 [Transform the output of nm in a C name address pair])
3869_LT_DECL([global_symbol_to_c_name_address_lib_prefix],
3870 [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
3871 [Transform the output of nm in a C name address pair when lib prefix is needed])
b6d0720c
AC
3872_LT_DECL([], [nm_file_list_spec], [1],
3873 [Specify filename containing input files for $NM])
7083c021 3874]) # _LT_CMD_GLOBAL_SYMBOLS
db137867 3875
db137867 3876
7083c021
AC
3877# _LT_COMPILER_PIC([TAGNAME])
3878# ---------------------------
3879m4_defun([_LT_COMPILER_PIC],
3880[m4_require([_LT_TAG_COMPILER])dnl
3881_LT_TAGVAR(lt_prog_compiler_wl, $1)=
3882_LT_TAGVAR(lt_prog_compiler_pic, $1)=
3883_LT_TAGVAR(lt_prog_compiler_static, $1)=
db137867 3884
7083c021
AC
3885m4_if([$1], [CXX], [
3886 # C++ specific cases for pic, static, wl, etc.
3887 if test "$GXX" = yes; then
3888 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
3889 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
db137867 3890
7083c021
AC
3891 case $host_os in
3892 aix*)
3893 # All AIX code is PIC.
db137867 3894 if test "$host_cpu" = ia64; then
7083c021
AC
3895 # AIX 5 now supports IA64 processor
3896 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
db137867 3897 fi
7083c021 3898 ;;
db137867 3899
7083c021
AC
3900 amigaos*)
3901 case $host_cpu in
3902 powerpc)
3903 # see comment about AmigaOS4 .so support
3904 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
3905 ;;
3906 m68k)
3907 # FIXME: we need at least 68020 code to build shared libraries, but
3908 # adding the `-m68020' flag to GCC prevents building anything better,
3909 # like `-m68040'.
3910 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
db137867 3911 ;;
7083c021
AC
3912 esac
3913 ;;
db137867 3914
7083c021
AC
3915 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
3916 # PIC is the default for these OSes.
3917 ;;
3918 mingw* | cygwin* | os2* | pw32* | cegcc*)
3919 # This hack is so that the source file can tell whether it is being
3920 # built for inclusion in a dll (and should export symbols for example).
3921 # Although the cygwin gcc ignores -fPIC, still need this for old-style
3922 # (--disable-auto-import) libraries
3923 m4_if([$1], [GCJ], [],
3924 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
3925 ;;
3926 darwin* | rhapsody*)
3927 # PIC is the default on this platform
3928 # Common symbols not allowed in MH_DYLIB files
3929 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
3930 ;;
3931 *djgpp*)
3932 # DJGPP does not support shared libraries at all
3933 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
3934 ;;
b6d0720c
AC
3935 haiku*)
3936 # PIC is the default for Haiku.
3937 # The "-static" flag exists, but is broken.
3938 _LT_TAGVAR(lt_prog_compiler_static, $1)=
3939 ;;
7083c021
AC
3940 interix[[3-9]]*)
3941 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
3942 # Instead, we relocate shared libraries at runtime.
3943 ;;
3944 sysv4*MP*)
3945 if test -d /usr/nec; then
3946 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
3947 fi
3948 ;;
3949 hpux*)
3950 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
3951 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
3952 # sets the default TLS model and affects inlining.
3953 case $host_cpu in
3954 hppa*64*)
db137867
AC
3955 ;;
3956 *)
7083c021 3957 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
db137867 3958 ;;
7083c021 3959 esac
db137867 3960 ;;
7083c021
AC
3961 *qnx* | *nto*)
3962 # QNX uses GNU C++, but need to define -shared option too, otherwise
3963 # it will coredump.
3964 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
db137867
AC
3965 ;;
3966 *)
7083c021 3967 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
db137867
AC
3968 ;;
3969 esac
7083c021
AC
3970 else
3971 case $host_os in
3972 aix[[4-9]]*)
3973 # All AIX code is PIC.
3974 if test "$host_cpu" = ia64; then
3975 # AIX 5 now supports IA64 processor
3976 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
3977 else
3978 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
3979 fi
db137867 3980 ;;
7083c021
AC
3981 chorus*)
3982 case $cc_basename in
3983 cxch68*)
3984 # Green Hills C++ Compiler
3985 # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
db137867
AC
3986 ;;
3987 esac
db137867 3988 ;;
b6d0720c
AC
3989 mingw* | cygwin* | os2* | pw32* | cegcc*)
3990 # This hack is so that the source file can tell whether it is being
3991 # built for inclusion in a dll (and should export symbols for example).
3992 m4_if([$1], [GCJ], [],
3993 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
3994 ;;
7083c021
AC
3995 dgux*)
3996 case $cc_basename in
3997 ec++*)
3998 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
3999 ;;
4000 ghcx*)
4001 # Green Hills C++ Compiler
4002 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4003 ;;
4004 *)
4005 ;;
4006 esac
4007 ;;
4008 freebsd* | dragonfly*)
4009 # FreeBSD uses GNU C++
4010 ;;
4011 hpux9* | hpux10* | hpux11*)
4012 case $cc_basename in
4013 CC*)
4014 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4015 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
4016 if test "$host_cpu" != ia64; then
4017 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4018 fi
4019 ;;
4020 aCC*)
4021 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4022 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
db137867 4023 case $host_cpu in
7083c021
AC
4024 hppa*64*|ia64*)
4025 # +Z the default
db137867
AC
4026 ;;
4027 *)
7083c021 4028 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
db137867
AC
4029 ;;
4030 esac
7083c021
AC
4031 ;;
4032 *)
4033 ;;
db137867 4034 esac
db137867 4035 ;;
7083c021
AC
4036 interix*)
4037 # This is c89, which is MS Visual C++ (no shared libs)
4038 # Anyone wants to do a port?
db137867 4039 ;;
7083c021
AC
4040 irix5* | irix6* | nonstopux*)
4041 case $cc_basename in
4042 CC*)
4043 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4044 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4045 # CC pic flag -KPIC is the default.
4046 ;;
4047 *)
4048 ;;
db137867
AC
4049 esac
4050 ;;
e4cf89d4 4051 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
7083c021
AC
4052 case $cc_basename in
4053 KCC*)
4054 # KAI C++ Compiler
4055 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4056 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4057 ;;
4058 ecpc* )
4059 # old Intel C++ for x86_64 which still supported -KPIC.
4060 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4061 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4062 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4063 ;;
4064 icpc* )
4065 # Intel C++, used to be incompatible with GCC.
4066 # ICC 10 doesn't accept -KPIC any more.
4067 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4068 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4069 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4070 ;;
4071 pgCC* | pgcpp*)
4072 # Portland Group C++ compiler
4073 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4074 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4075 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4076 ;;
4077 cxx*)
4078 # Compaq C++
4079 # Make sure the PIC flag is empty. It appears that all Alpha
4080 # Linux and Compaq Tru64 Unix objects are PIC.
4081 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4082 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4083 ;;
b6d0720c
AC
4084 xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
4085 # IBM XL 8.0, 9.0 on PPC and BlueGene
7083c021
AC
4086 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4087 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4088 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4089 ;;
4090 *)
4091 case `$CC -V 2>&1 | sed 5q` in
4092 *Sun\ C*)
4093 # Sun C++ 5.9
4094 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4095 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4096 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4097 ;;
4098 esac
4099 ;;
4100 esac
db137867 4101 ;;
7083c021 4102 lynxos*)
db137867 4103 ;;
7083c021 4104 m88k*)
db137867 4105 ;;
7083c021
AC
4106 mvs*)
4107 case $cc_basename in
4108 cxx*)
4109 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
4110 ;;
4111 *)
4112 ;;
4113 esac
db137867 4114 ;;
e4cf89d4 4115 netbsd* | netbsdelf*-gnu)
db137867 4116 ;;
7083c021
AC
4117 *qnx* | *nto*)
4118 # QNX uses GNU C++, but need to define -shared option too, otherwise
4119 # it will coredump.
4120 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4121 ;;
4122 osf3* | osf4* | osf5*)
4123 case $cc_basename in
4124 KCC*)
4125 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4126 ;;
4127 RCC*)
4128 # Rational C++ 2.4.1
4129 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4130 ;;
4131 cxx*)
4132 # Digital/Compaq C++
4133 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4134 # Make sure the PIC flag is empty. It appears that all Alpha
4135 # Linux and Compaq Tru64 Unix objects are PIC.
4136 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4137 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4138 ;;
4139 *)
4140 ;;
4141 esac
db137867 4142 ;;
7083c021 4143 psos*)
db137867 4144 ;;
7083c021
AC
4145 solaris*)
4146 case $cc_basename in
b6d0720c 4147 CC* | sunCC*)
7083c021
AC
4148 # Sun C++ 4.2, 5.x and Centerline C++
4149 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4150 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4151 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4152 ;;
4153 gcx*)
4154 # Green Hills C++ Compiler
4155 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4156 ;;
db137867 4157 *)
db137867
AC
4158 ;;
4159 esac
db137867 4160 ;;
7083c021
AC
4161 sunos4*)
4162 case $cc_basename in
4163 CC*)
4164 # Sun C++ 4.x
4165 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4166 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4167 ;;
4168 lcc*)
4169 # Lucid
4170 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4171 ;;
db137867 4172 *)
db137867 4173 ;;
7083c021 4174 esac
db137867 4175 ;;
7083c021
AC
4176 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4177 case $cc_basename in
4178 CC*)
4179 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4180 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4181 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4182 ;;
4183 esac
db137867 4184 ;;
7083c021
AC
4185 tandem*)
4186 case $cc_basename in
4187 NCC*)
4188 # NonStop-UX NCC 3.20
4189 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4190 ;;
4191 *)
4192 ;;
4193 esac
db137867 4194 ;;
7083c021 4195 vxworks*)
db137867
AC
4196 ;;
4197 *)
7083c021 4198 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
db137867
AC
4199 ;;
4200 esac
7083c021
AC
4201 fi
4202],
4203[
4204 if test "$GCC" = yes; then
4205 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4206 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
db137867 4207
7083c021
AC
4208 case $host_os in
4209 aix*)
4210 # All AIX code is PIC.
4211 if test "$host_cpu" = ia64; then
4212 # AIX 5 now supports IA64 processor
4213 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4214 fi
4215 ;;
db137867 4216
7083c021
AC
4217 amigaos*)
4218 case $host_cpu in
4219 powerpc)
4220 # see comment about AmigaOS4 .so support
4221 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4222 ;;
4223 m68k)
4224 # FIXME: we need at least 68020 code to build shared libraries, but
4225 # adding the `-m68020' flag to GCC prevents building anything better,
4226 # like `-m68040'.
4227 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4228 ;;
4229 esac
4230 ;;
db137867 4231
7083c021
AC
4232 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4233 # PIC is the default for these OSes.
4234 ;;
db137867 4235
7083c021
AC
4236 mingw* | cygwin* | pw32* | os2* | cegcc*)
4237 # This hack is so that the source file can tell whether it is being
4238 # built for inclusion in a dll (and should export symbols for example).
4239 # Although the cygwin gcc ignores -fPIC, still need this for old-style
4240 # (--disable-auto-import) libraries
4241 m4_if([$1], [GCJ], [],
4242 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4243 ;;
db137867 4244
7083c021
AC
4245 darwin* | rhapsody*)
4246 # PIC is the default on this platform
4247 # Common symbols not allowed in MH_DYLIB files
4248 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4249 ;;
db137867 4250
b6d0720c
AC
4251 haiku*)
4252 # PIC is the default for Haiku.
4253 # The "-static" flag exists, but is broken.
4254 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4255 ;;
4256
7083c021
AC
4257 hpux*)
4258 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4259 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
4260 # sets the default TLS model and affects inlining.
4261 case $host_cpu in
4262 hppa*64*)
4263 # +Z the default
4264 ;;
4265 *)
4266 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4267 ;;
4268 esac
4269 ;;
db137867 4270
7083c021
AC
4271 interix[[3-9]]*)
4272 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4273 # Instead, we relocate shared libraries at runtime.
4274 ;;
db137867 4275
7083c021
AC
4276 msdosdjgpp*)
4277 # Just because we use GCC doesn't mean we suddenly get shared libraries
4278 # on systems that don't support them.
4279 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4280 enable_shared=no
4281 ;;
db137867 4282
7083c021
AC
4283 *nto* | *qnx*)
4284 # QNX uses GNU C++, but need to define -shared option too, otherwise
4285 # it will coredump.
4286 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4287 ;;
db137867 4288
7083c021
AC
4289 sysv4*MP*)
4290 if test -d /usr/nec; then
4291 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4292 fi
4293 ;;
db137867 4294
7083c021
AC
4295 *)
4296 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4297 ;;
4298 esac
b6d0720c
AC
4299
4300 case $cc_basename in
4301 nvcc*) # Cuda Compiler Driver 2.2
4302 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
a949ab1a
AC
4303 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4304 _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
4305 fi
b6d0720c
AC
4306 ;;
4307 esac
7083c021
AC
4308 else
4309 # PORTME Check for flag to pass linker flags through the system compiler.
4310 case $host_os in
4311 aix*)
4312 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4313 if test "$host_cpu" = ia64; then
4314 # AIX 5 now supports IA64 processor
4315 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4316 else
4317 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4318 fi
4319 ;;
db137867 4320
7083c021
AC
4321 mingw* | cygwin* | pw32* | os2* | cegcc*)
4322 # This hack is so that the source file can tell whether it is being
4323 # built for inclusion in a dll (and should export symbols for example).
4324 m4_if([$1], [GCJ], [],
4325 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4326 ;;
db137867 4327
7083c021
AC
4328 hpux9* | hpux10* | hpux11*)
4329 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4330 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
4331 # not for PA HP-UX.
4332 case $host_cpu in
4333 hppa*64*|ia64*)
4334 # +Z the default
4335 ;;
4336 *)
4337 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4338 ;;
4339 esac
4340 # Is there a better lt_prog_compiler_static that works with the bundled CC?
4341 _LT_TAGVAR(lt_prog_compiler_static, $1)='${wl}-a ${wl}archive'
4342 ;;
db137867 4343
7083c021
AC
4344 irix5* | irix6* | nonstopux*)
4345 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4346 # PIC (with -KPIC) is the default.
4347 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4348 ;;
db137867 4349
e4cf89d4 4350 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
7083c021
AC
4351 case $cc_basename in
4352 # old Intel for x86_64 which still supported -KPIC.
4353 ecc*)
4354 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4355 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4356 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4357 ;;
4358 # icc used to be incompatible with GCC.
4359 # ICC 10 doesn't accept -KPIC any more.
4360 icc* | ifort*)
4361 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4362 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4363 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4364 ;;
4365 # Lahey Fortran 8.1.
4366 lf95*)
4367 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4368 _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
4369 _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
4370 ;;
b6d0720c
AC
4371 nagfor*)
4372 # NAG Fortran compiler
4373 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4374 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4375 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4376 ;;
4377 pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
7083c021
AC
4378 # Portland Group compilers (*not* the Pentium gcc compiler,
4379 # which looks to be a dead project)
4380 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4381 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4382 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4383 ;;
4384 ccc*)
4385 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4386 # All Alpha code is PIC.
4387 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4388 ;;
b6d0720c
AC
4389 xl* | bgxl* | bgf* | mpixl*)
4390 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
7083c021
AC
4391 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4392 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4393 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4394 ;;
4395 *)
4396 case `$CC -V 2>&1 | sed 5q` in
a949ab1a 4397 *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
b6d0720c 4398 # Sun Fortran 8.3 passes all unrecognized flags to the linker
7083c021
AC
4399 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4400 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
b6d0720c 4401 _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
7083c021 4402 ;;
a949ab1a
AC
4403 *Sun\ F* | *Sun*Fortran*)
4404 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4405 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4406 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4407 ;;
b6d0720c
AC
4408 *Sun\ C*)
4409 # Sun C 5.9
7083c021
AC
4410 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4411 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
b6d0720c 4412 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
7083c021 4413 ;;
a949ab1a
AC
4414 *Intel*\ [[CF]]*Compiler*)
4415 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4416 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4417 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4418 ;;
4419 *Portland\ Group*)
4420 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4421 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4422 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4423 ;;
7083c021
AC
4424 esac
4425 ;;
4426 esac
4427 ;;
db137867 4428
7083c021
AC
4429 newsos6)
4430 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4431 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4432 ;;
b676ea3b 4433
7083c021
AC
4434 *nto* | *qnx*)
4435 # QNX uses GNU C++, but need to define -shared option too, otherwise
4436 # it will coredump.
4437 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4438 ;;
db137867 4439
7083c021
AC
4440 osf3* | osf4* | osf5*)
4441 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4442 # All OSF/1 code is PIC.
4443 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
db137867 4444 ;;
db137867 4445
7083c021
AC
4446 rdos*)
4447 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
db137867 4448 ;;
db137867 4449
7083c021
AC
4450 solaris*)
4451 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4452 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4453 case $cc_basename in
b6d0720c 4454 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
7083c021
AC
4455 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
4456 *)
4457 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
4458 esac
4459 ;;
db137867 4460
7083c021
AC
4461 sunos4*)
4462 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4463 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4464 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4465 ;;
db137867 4466
7083c021
AC
4467 sysv4 | sysv4.2uw2* | sysv4.3*)
4468 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4469 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4470 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4471 ;;
db137867 4472
7083c021
AC
4473 sysv4*MP*)
4474 if test -d /usr/nec ;then
4475 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4476 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4477 fi
4478 ;;
db137867 4479
7083c021
AC
4480 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4481 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4482 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4483 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4484 ;;
db137867 4485
7083c021
AC
4486 unicos*)
4487 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4488 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4489 ;;
db137867 4490
7083c021
AC
4491 uts4*)
4492 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4493 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4494 ;;
db137867 4495
7083c021
AC
4496 *)
4497 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4498 ;;
4499 esac
4500 fi
4501])
4502case $host_os in
4503 # For platforms which do not support PIC, -DPIC is meaningless:
4504 *djgpp*)
4505 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4506 ;;
4507 *)
4508 _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
4509 ;;
4510esac
b6d0720c
AC
4511
4512AC_CACHE_CHECK([for $compiler option to produce PIC],
4513 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
4514 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
4515_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
db137867 4516
7083c021
AC
4517#
4518# Check to make sure the PIC flag actually works.
4519#
4520if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4521 _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
4522 [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
4523 [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
4524 [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
4525 "" | " "*) ;;
4526 *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
4527 esac],
4528 [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4529 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
4530fi
4531_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
4532 [Additional compiler flags for building library objects])
db137867 4533
b6d0720c
AC
4534_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4535 [How to pass a linker flag through the compiler])
7083c021
AC
4536#
4537# Check to make sure the static flag actually works.
4538#
4539wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
4540_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
4541 _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
4542 $lt_tmp_static_flag,
4543 [],
4544 [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
4545_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
4546 [Compiler flag to prevent dynamic linking])
4547])# _LT_COMPILER_PIC
db137867 4548
db137867 4549
7083c021
AC
4550# _LT_LINKER_SHLIBS([TAGNAME])
4551# ----------------------------
4552# See if the linker supports building shared libraries.
4553m4_defun([_LT_LINKER_SHLIBS],
4554[AC_REQUIRE([LT_PATH_LD])dnl
4555AC_REQUIRE([LT_PATH_NM])dnl
b6d0720c 4556m4_require([_LT_PATH_MANIFEST_TOOL])dnl
7083c021
AC
4557m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4558m4_require([_LT_DECL_EGREP])dnl
4559m4_require([_LT_DECL_SED])dnl
4560m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
4561m4_require([_LT_TAG_COMPILER])dnl
4562AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
4563m4_if([$1], [CXX], [
4564 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
b6d0720c 4565 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
7083c021
AC
4566 case $host_os in
4567 aix[[4-9]]*)
4568 # If we're using GNU nm, then we don't want the "-C" option.
4569 # -C means demangle to AIX nm, but means don't demangle with GNU nm
b6d0720c
AC
4570 # Also, AIX nm treats weak defined symbols like other global defined
4571 # symbols, whereas GNU nm marks them as "W".
7083c021 4572 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
b6d0720c 4573 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
7083c021
AC
4574 else
4575 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
4576 fi
4577 ;;
4578 pw32*)
4579 _LT_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
b6d0720c 4580 ;;
7083c021 4581 cygwin* | mingw* | cegcc*)
b6d0720c 4582 case $cc_basename in
a949ab1a
AC
4583 cl*)
4584 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
4585 ;;
b6d0720c
AC
4586 *)
4587 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
4588 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4589 ;;
4590 esac
4591 ;;
e4cf89d4
AB
4592 linux* | k*bsd*-gnu | gnu*)
4593 _LT_TAGVAR(link_all_deplibs, $1)=no
4594 ;;
7083c021
AC
4595 *)
4596 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
b6d0720c 4597 ;;
7083c021 4598 esac
7083c021
AC
4599], [
4600 runpath_var=
4601 _LT_TAGVAR(allow_undefined_flag, $1)=
4602 _LT_TAGVAR(always_export_symbols, $1)=no
4603 _LT_TAGVAR(archive_cmds, $1)=
4604 _LT_TAGVAR(archive_expsym_cmds, $1)=
4605 _LT_TAGVAR(compiler_needs_object, $1)=no
4606 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
4607 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4608 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4609 _LT_TAGVAR(hardcode_automatic, $1)=no
4610 _LT_TAGVAR(hardcode_direct, $1)=no
4611 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
4612 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7083c021
AC
4613 _LT_TAGVAR(hardcode_libdir_separator, $1)=
4614 _LT_TAGVAR(hardcode_minus_L, $1)=no
4615 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
4616 _LT_TAGVAR(inherit_rpath, $1)=no
4617 _LT_TAGVAR(link_all_deplibs, $1)=unknown
4618 _LT_TAGVAR(module_cmds, $1)=
4619 _LT_TAGVAR(module_expsym_cmds, $1)=
4620 _LT_TAGVAR(old_archive_from_new_cmds, $1)=
4621 _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
4622 _LT_TAGVAR(thread_safe_flag_spec, $1)=
4623 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4624 # include_expsyms should be a list of space-separated symbols to be *always*
4625 # included in the symbol list
4626 _LT_TAGVAR(include_expsyms, $1)=
4627 # exclude_expsyms can be an extended regexp of symbols to exclude
4628 # it will be wrapped by ` (' and `)$', so one must not match beginning or
4629 # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
4630 # as well as any symbol that contains `d'.
4631 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4632 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
4633 # platforms (ab)use it in PIC code, but their linkers get confused if
4634 # the symbol is explicitly referenced. Since portable code cannot
4635 # rely on this symbol name, it's probably fine to never include it in
4636 # preloaded symbol tables.
4637 # Exclude shared library initialization/finalization symbols.
4638dnl Note also adjust exclude_expsyms for C++ above.
4639 extract_expsyms_cmds=
db137867 4640
7083c021
AC
4641 case $host_os in
4642 cygwin* | mingw* | pw32* | cegcc*)
4643 # FIXME: the MSVC++ port hasn't been tested in a loooong time
4644 # When not using gcc, we currently assume that we are using
4645 # Microsoft Visual C++.
4646 if test "$GCC" != yes; then
4647 with_gnu_ld=no
4648 fi
4649 ;;
4650 interix*)
4651 # we just hope/assume this is gcc and not c89 (= MSVC++)
4652 with_gnu_ld=yes
4653 ;;
4654 openbsd*)
4655 with_gnu_ld=no
4656 ;;
e4cf89d4
AB
4657 linux* | k*bsd*-gnu | gnu*)
4658 _LT_TAGVAR(link_all_deplibs, $1)=no
4659 ;;
7083c021 4660 esac
db137867 4661
7083c021 4662 _LT_TAGVAR(ld_shlibs, $1)=yes
b6d0720c
AC
4663
4664 # On some targets, GNU ld is compatible enough with the native linker
4665 # that we're better off using the native interface for both.
4666 lt_use_gnu_ld_interface=no
7083c021 4667 if test "$with_gnu_ld" = yes; then
b6d0720c
AC
4668 case $host_os in
4669 aix*)
4670 # The AIX port of GNU ld has always aspired to compatibility
4671 # with the native linker. However, as the warning in the GNU ld
4672 # block says, versions before 2.19.5* couldn't really create working
4673 # shared libraries, regardless of the interface used.
4674 case `$LD -v 2>&1` in
4675 *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
4676 *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
4677 *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
4678 *)
4679 lt_use_gnu_ld_interface=yes
4680 ;;
4681 esac
4682 ;;
4683 *)
4684 lt_use_gnu_ld_interface=yes
4685 ;;
4686 esac
4687 fi
4688
4689 if test "$lt_use_gnu_ld_interface" = yes; then
7083c021
AC
4690 # If archive_cmds runs LD, not CC, wlarc should be empty
4691 wlarc='${wl}'
db137867 4692
7083c021
AC
4693 # Set some defaults for GNU ld with shared library support. These
4694 # are reset later if shared libraries are not supported. Putting them
4695 # here allows them to be overridden if necessary.
4696 runpath_var=LD_RUN_PATH
4697 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4698 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
4699 # ancient GNU ld didn't support --whole-archive et. al.
4700 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
4701 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
4702 else
4703 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4704 fi
4705 supports_anon_versioning=no
4706 case `$LD -v 2>&1` in
b6d0720c 4707 *GNU\ gold*) supports_anon_versioning=yes ;;
7083c021
AC
4708 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
4709 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
4710 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
4711 *\ 2.11.*) ;; # other 2.11 versions
4712 *) supports_anon_versioning=yes ;;
4713 esac
db137867 4714
7083c021
AC
4715 # See if GNU ld supports shared libraries.
4716 case $host_os in
4717 aix[[3-9]]*)
4718 # On AIX/PPC, the GNU linker is very broken
4719 if test "$host_cpu" != ia64; then
4720 _LT_TAGVAR(ld_shlibs, $1)=no
4721 cat <<_LT_EOF 1>&2
db137867 4722
b6d0720c 4723*** Warning: the GNU linker, at least up to release 2.19, is reported
7083c021
AC
4724*** to be unable to reliably create shared libraries on AIX.
4725*** Therefore, libtool is disabling shared libraries support. If you
b6d0720c
AC
4726*** really care for shared libraries, you may want to install binutils
4727*** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
4728*** You will then need to restart the configuration process.
db137867 4729
7083c021
AC
4730_LT_EOF
4731 fi
4732 ;;
db137867 4733
7083c021
AC
4734 amigaos*)
4735 case $host_cpu in
4736 powerpc)
4737 # see comment about AmigaOS4 .so support
4738 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4739 _LT_TAGVAR(archive_expsym_cmds, $1)=''
4740 ;;
4741 m68k)
4742 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
4743 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
4744 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4745 ;;
4746 esac
4747 ;;
db137867 4748
7083c021
AC
4749 beos*)
4750 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4751 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4752 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
4753 # support --undefined. This deserves some investigation. FIXME
4754 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4755 else
4756 _LT_TAGVAR(ld_shlibs, $1)=no
4757 fi
4758 ;;
db137867 4759
7083c021
AC
4760 cygwin* | mingw* | pw32* | cegcc*)
4761 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
4762 # as there is no search path for DLLs.
4763 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
b6d0720c 4764 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
7083c021
AC
4765 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4766 _LT_TAGVAR(always_export_symbols, $1)=no
4767 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
b6d0720c
AC
4768 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
4769 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
7083c021
AC
4770
4771 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
4772 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
4773 # If the export-symbols file already is a .def file (1st line
4774 # is EXPORTS), use it as is; otherwise, prepend...
4775 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
4776 cp $export_symbols $output_objdir/$soname.def;
4777 else
4778 echo EXPORTS > $output_objdir/$soname.def;
4779 cat $export_symbols >> $output_objdir/$soname.def;
4780 fi~
4781 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
4782 else
4783 _LT_TAGVAR(ld_shlibs, $1)=no
4784 fi
4785 ;;
db137867 4786
b6d0720c
AC
4787 haiku*)
4788 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4789 _LT_TAGVAR(link_all_deplibs, $1)=yes
4790 ;;
4791
7083c021
AC
4792 interix[[3-9]]*)
4793 _LT_TAGVAR(hardcode_direct, $1)=no
4794 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
4795 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
4796 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
4797 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
4798 # Instead, shared libraries are loaded at an image base (0x10000000 by
4799 # default) and relocated if they conflict, which is a slow very memory
4800 # consuming and fragmenting process. To avoid this, we pick a random,
4801 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
4802 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
4803 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
4804 _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
4805 ;;
db137867 4806
b6d0720c 4807 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
7083c021
AC
4808 tmp_diet=no
4809 if test "$host_os" = linux-dietlibc; then
4810 case $cc_basename in
4811 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
4812 esac
4813 fi
4814 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
4815 && test "$tmp_diet" = no
4816 then
b6d0720c 4817 tmp_addflag=' $pic_flag'
7083c021
AC
4818 tmp_sharedflag='-shared'
4819 case $cc_basename,$host_cpu in
4820 pgcc*) # Portland Group C compiler
b6d0720c 4821 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
7083c021
AC
4822 tmp_addflag=' $pic_flag'
4823 ;;
b6d0720c
AC
4824 pgf77* | pgf90* | pgf95* | pgfortran*)
4825 # Portland Group f77 and f90 compilers
4826 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
7083c021
AC
4827 tmp_addflag=' $pic_flag -Mnomain' ;;
4828 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
4829 tmp_addflag=' -i_dynamic' ;;
4830 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
4831 tmp_addflag=' -i_dynamic -nofor_main' ;;
4832 ifc* | ifort*) # Intel Fortran compiler
4833 tmp_addflag=' -nofor_main' ;;
4834 lf95*) # Lahey Fortran 8.1
4835 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4836 tmp_sharedflag='--shared' ;;
b6d0720c 4837 xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
7083c021
AC
4838 tmp_sharedflag='-qmkshrobj'
4839 tmp_addflag= ;;
b6d0720c
AC
4840 nvcc*) # Cuda Compiler Driver 2.2
4841 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
4842 _LT_TAGVAR(compiler_needs_object, $1)=yes
4843 ;;
7083c021
AC
4844 esac
4845 case `$CC -V 2>&1 | sed 5q` in
4846 *Sun\ C*) # Sun C 5.9
b6d0720c 4847 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
7083c021
AC
4848 _LT_TAGVAR(compiler_needs_object, $1)=yes
4849 tmp_sharedflag='-G' ;;
4850 *Sun\ F*) # Sun Fortran 8.3
4851 tmp_sharedflag='-G' ;;
4852 esac
4853 _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
db137867 4854
7083c021
AC
4855 if test "x$supports_anon_versioning" = xyes; then
4856 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
4857 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
4858 echo "local: *; };" >> $output_objdir/$libname.ver~
4859 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
4860 fi
db137867 4861
7083c021 4862 case $cc_basename in
b6d0720c 4863 xlf* | bgf* | bgxlf* | mpixlf*)
7083c021
AC
4864 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
4865 _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
a949ab1a 4866 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
b6d0720c 4867 _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
7083c021
AC
4868 if test "x$supports_anon_versioning" = xyes; then
4869 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
4870 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
4871 echo "local: *; };" >> $output_objdir/$libname.ver~
b6d0720c 4872 $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
7083c021
AC
4873 fi
4874 ;;
4875 esac
4876 else
4877 _LT_TAGVAR(ld_shlibs, $1)=no
4878 fi
4879 ;;
db137867 4880
e4cf89d4 4881 netbsd* | netbsdelf*-gnu)
7083c021
AC
4882 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
4883 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
4884 wlarc=
4885 else
b6d0720c
AC
4886 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4887 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
7083c021
AC
4888 fi
4889 ;;
db137867 4890
7083c021
AC
4891 solaris*)
4892 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
4893 _LT_TAGVAR(ld_shlibs, $1)=no
4894 cat <<_LT_EOF 1>&2
db137867 4895
7083c021
AC
4896*** Warning: The releases 2.8.* of the GNU linker cannot reliably
4897*** create shared libraries on Solaris systems. Therefore, libtool
4898*** is disabling shared libraries support. We urge you to upgrade GNU
4899*** binutils to release 2.9.1 or newer. Another option is to modify
4900*** your PATH or compiler configuration so that the native linker is
4901*** used, and then restart.
db137867 4902
7083c021
AC
4903_LT_EOF
4904 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
b6d0720c
AC
4905 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4906 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
7083c021
AC
4907 else
4908 _LT_TAGVAR(ld_shlibs, $1)=no
4909 fi
4910 ;;
db137867 4911
7083c021
AC
4912 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
4913 case `$LD -v 2>&1` in
4914 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
4915 _LT_TAGVAR(ld_shlibs, $1)=no
4916 cat <<_LT_EOF 1>&2
db137867 4917
7083c021
AC
4918*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not
4919*** reliably create shared libraries on SCO systems. Therefore, libtool
4920*** is disabling shared libraries support. We urge you to upgrade GNU
4921*** binutils to release 2.16.91.0.3 or newer. Another option is to modify
4922*** your PATH or compiler configuration so that the native linker is
4923*** used, and then restart.
db137867 4924
7083c021
AC
4925_LT_EOF
4926 ;;
4927 *)
4928 # For security reasons, it is highly recommended that you always
4929 # use absolute paths for naming shared libraries, and exclude the
4930 # DT_RUNPATH tag from executables and libraries. But doing so
4931 # requires that you compile everything twice, which is a pain.
4932 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
4933 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
4934 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4935 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
4936 else
4937 _LT_TAGVAR(ld_shlibs, $1)=no
4938 fi
4939 ;;
4940 esac
4941 ;;
db137867 4942
7083c021
AC
4943 sunos4*)
4944 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
4945 wlarc=
4946 _LT_TAGVAR(hardcode_direct, $1)=yes
4947 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
db137867 4948 ;;
7083c021 4949
db137867 4950 *)
7083c021 4951 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
b6d0720c
AC
4952 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
4953 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
7083c021
AC
4954 else
4955 _LT_TAGVAR(ld_shlibs, $1)=no
4956 fi
db137867
AC
4957 ;;
4958 esac
db137867 4959
7083c021
AC
4960 if test "$_LT_TAGVAR(ld_shlibs, $1)" = no; then
4961 runpath_var=
4962 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4963 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4964 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4965 fi
4966 else
4967 # PORTME fill in a description of your system's linker (not GNU ld)
4968 case $host_os in
4969 aix3*)
4970 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
4971 _LT_TAGVAR(always_export_symbols, $1)=yes
4972 _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
4973 # Note: this linker hardcodes the directories in LIBPATH if there
4974 # are no directories specified by -L.
4975 _LT_TAGVAR(hardcode_minus_L, $1)=yes
4976 if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then
4977 # Neither direct hardcoding nor static linking is supported with a
4978 # broken collect2.
4979 _LT_TAGVAR(hardcode_direct, $1)=unsupported
4980 fi
4981 ;;
db137867 4982
7083c021
AC
4983 aix[[4-9]]*)
4984 if test "$host_cpu" = ia64; then
4985 # On IA64, the linker does run time linking by default, so we don't
4986 # have to do anything special.
4987 aix_use_runtimelinking=no
4988 exp_sym_flag='-Bexport'
4989 no_entry_flag=""
4990 else
4991 # If we're using GNU nm, then we don't want the "-C" option.
4992 # -C means demangle to AIX nm, but means don't demangle with GNU nm
b6d0720c
AC
4993 # Also, AIX nm treats weak defined symbols like other global
4994 # defined symbols, whereas GNU nm marks them as "W".
7083c021 4995 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
b6d0720c 4996 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
7083c021
AC
4997 else
4998 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && ([substr](\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols'
4999 fi
5000 aix_use_runtimelinking=no
db137867 5001
7083c021
AC
5002 # Test if we are trying to use run time linking or normal
5003 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
5004 # need to do runtime linking.
5005 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5006 for ld_flag in $LDFLAGS; do
5007 if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
5008 aix_use_runtimelinking=yes
5009 break
5010 fi
5011 done
5012 ;;
5013 esac
db137867 5014
7083c021
AC
5015 exp_sym_flag='-bexport'
5016 no_entry_flag='-bnoentry'
5017 fi
db137867 5018
7083c021
AC
5019 # When large executables or shared objects are built, AIX ld can
5020 # have problems creating the table of contents. If linking a library
5021 # or program results in "error TOC overflow" add -mminimal-toc to
5022 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
5023 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
db137867 5024
7083c021
AC
5025 _LT_TAGVAR(archive_cmds, $1)=''
5026 _LT_TAGVAR(hardcode_direct, $1)=yes
5027 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5028 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5029 _LT_TAGVAR(link_all_deplibs, $1)=yes
5030 _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
db137867 5031
7083c021
AC
5032 if test "$GCC" = yes; then
5033 case $host_os in aix4.[[012]]|aix4.[[012]].*)
5034 # We only want to do this on AIX 4.2 and lower, the check
5035 # below for broken collect2 doesn't work under 4.3+
5036 collect2name=`${CC} -print-prog-name=collect2`
5037 if test -f "$collect2name" &&
5038 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
5039 then
5040 # We have reworked collect2
5041 :
5042 else
5043 # We have old collect2
5044 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5045 # It fails to find uninstalled libraries when the uninstalled
5046 # path is not listed in the libpath. Setting hardcode_minus_L
5047 # to unsupported forces relinking
5048 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5049 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5050 _LT_TAGVAR(hardcode_libdir_separator, $1)=
5051 fi
5052 ;;
5053 esac
5054 shared_flag='-shared'
5055 if test "$aix_use_runtimelinking" = yes; then
5056 shared_flag="$shared_flag "'${wl}-G'
5057 fi
e4cf89d4 5058 _LT_TAGVAR(link_all_deplibs, $1)=no
7083c021
AC
5059 else
5060 # not using gcc
5061 if test "$host_cpu" = ia64; then
5062 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
5063 # chokes on -Wl,-G. The following line is correct:
5064 shared_flag='-G'
5065 else
5066 if test "$aix_use_runtimelinking" = yes; then
5067 shared_flag='${wl}-G'
5068 else
5069 shared_flag='${wl}-bM:SRE'
5070 fi
5071 fi
5072 fi
db137867 5073
7083c021
AC
5074 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
5075 # It seems that -bexpall does not export symbols beginning with
5076 # underscore (_), so it is better to generate a list of symbols to export.
5077 _LT_TAGVAR(always_export_symbols, $1)=yes
5078 if test "$aix_use_runtimelinking" = yes; then
5079 # Warning - without using the other runtime loading flags (-brtl),
5080 # -berok will link without error, but may produce a broken library.
5081 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
5082 # Determine the default libpath from the value encoded in an
5083 # empty executable.
b6d0720c 5084 _LT_SYS_MODULE_PATH_AIX([$1])
7083c021 5085 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
b6d0720c 5086 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
7083c021
AC
5087 else
5088 if test "$host_cpu" = ia64; then
5089 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
5090 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
5091 _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
5092 else
5093 # Determine the default libpath from the value encoded in an
5094 # empty executable.
b6d0720c 5095 _LT_SYS_MODULE_PATH_AIX([$1])
7083c021
AC
5096 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
5097 # Warning - without using the other run time loading flags,
5098 # -berok will link without error, but may produce a broken library.
5099 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
5100 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
b6d0720c
AC
5101 if test "$with_gnu_ld" = yes; then
5102 # We only use this code for GNU lds that support --whole-archive.
5103 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
5104 else
5105 # Exported symbols can be pulled into shared objects from archives
5106 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5107 fi
7083c021
AC
5108 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5109 # This is similar to how AIX traditionally builds its shared libraries.
5110 _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
5111 fi
5112 fi
5113 ;;
db137867 5114
7083c021
AC
5115 amigaos*)
5116 case $host_cpu in
5117 powerpc)
5118 # see comment about AmigaOS4 .so support
5119 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
5120 _LT_TAGVAR(archive_expsym_cmds, $1)=''
5121 ;;
5122 m68k)
5123 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
5124 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5125 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5126 ;;
5127 esac
5128 ;;
db137867 5129
7083c021
AC
5130 bsdi[[45]]*)
5131 _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
5132 ;;
db137867 5133
7083c021
AC
5134 cygwin* | mingw* | pw32* | cegcc*)
5135 # When not using gcc, we currently assume that we are using
5136 # Microsoft Visual C++.
5137 # hardcode_libdir_flag_spec is actually meaningless, as there is
5138 # no search path for DLLs.
b6d0720c
AC
5139 case $cc_basename in
5140 cl*)
5141 # Native MSVC
5142 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5143 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5144 _LT_TAGVAR(always_export_symbols, $1)=yes
5145 _LT_TAGVAR(file_list_spec, $1)='@'
5146 # Tell ltmain to make .lib files, not .a files.
5147 libext=lib
5148 # Tell ltmain to make .dll files, not .so files.
5149 shrext_cmds=".dll"
5150 # FIXME: Setting linknames here is a bad hack.
5151 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
5152 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
5153 sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
5154 else
5155 sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
5156 fi~
5157 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
5158 linknames='
5159 # The linker will not automatically build a static lib if we build a DLL.
5160 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5161 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
a949ab1a 5162 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
b6d0720c
AC
5163 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1,DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
5164 # Don't use ranlib
5165 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
5166 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
5167 lt_tool_outputfile="@TOOL_OUTPUT@"~
5168 case $lt_outputfile in
5169 *.exe|*.EXE) ;;
5170 *)
5171 lt_outputfile="$lt_outputfile.exe"
5172 lt_tool_outputfile="$lt_tool_outputfile.exe"
5173 ;;
5174 esac~
5175 if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
5176 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
5177 $RM "$lt_outputfile.manifest";
5178 fi'
5179 ;;
5180 *)
5181 # Assume MSVC wrapper
5182 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5183 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5184 # Tell ltmain to make .lib files, not .a files.
5185 libext=lib
5186 # Tell ltmain to make .dll files, not .so files.
5187 shrext_cmds=".dll"
5188 # FIXME: Setting linknames here is a bad hack.
5189 _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
5190 # The linker will automatically build a .lib file if we build a DLL.
5191 _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5192 # FIXME: Should let the user specify the lib program.
5193 _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
5194 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5195 ;;
5196 esac
7083c021 5197 ;;
db137867 5198
7083c021
AC
5199 darwin* | rhapsody*)
5200 _LT_DARWIN_LINKER_FEATURES($1)
5201 ;;
db137867 5202
7083c021
AC
5203 dgux*)
5204 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5205 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5206 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5207 ;;
db137867 5208
7083c021
AC
5209 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
5210 # support. Future versions do this automatically, but an explicit c++rt0.o
5211 # does not break anything, and helps significantly (at the cost of a little
5212 # extra space).
5213 freebsd2.2*)
5214 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
5215 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5216 _LT_TAGVAR(hardcode_direct, $1)=yes
5217 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5218 ;;
db137867 5219
7083c021 5220 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
a949ab1a 5221 freebsd2.*)
7083c021
AC
5222 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5223 _LT_TAGVAR(hardcode_direct, $1)=yes
5224 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5225 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5226 ;;
db137867 5227
7083c021
AC
5228 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
5229 freebsd* | dragonfly*)
b6d0720c 5230 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
7083c021
AC
5231 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5232 _LT_TAGVAR(hardcode_direct, $1)=yes
5233 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5234 ;;
db137867 5235
7083c021
AC
5236 hpux9*)
5237 if test "$GCC" = yes; then
b6d0720c 5238 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
7083c021
AC
5239 else
5240 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
5241 fi
5242 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5243 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5244 _LT_TAGVAR(hardcode_direct, $1)=yes
db137867 5245
7083c021
AC
5246 # hardcode_minus_L: Not really in the search PATH,
5247 # but as the default location of the library.
5248 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5249 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5250 ;;
db137867 5251
7083c021 5252 hpux10*)
b6d0720c
AC
5253 if test "$GCC" = yes && test "$with_gnu_ld" = no; then
5254 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
7083c021
AC
5255 else
5256 _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
5257 fi
5258 if test "$with_gnu_ld" = no; then
5259 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
7083c021
AC
5260 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5261 _LT_TAGVAR(hardcode_direct, $1)=yes
5262 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5263 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5264 # hardcode_minus_L: Not really in the search PATH,
5265 # but as the default location of the library.
5266 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5267 fi
5268 ;;
db137867 5269
7083c021 5270 hpux11*)
b6d0720c 5271 if test "$GCC" = yes && test "$with_gnu_ld" = no; then
7083c021
AC
5272 case $host_cpu in
5273 hppa*64*)
5274 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5275 ;;
5276 ia64*)
b6d0720c 5277 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
7083c021
AC
5278 ;;
5279 *)
b6d0720c 5280 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
7083c021
AC
5281 ;;
5282 esac
5283 else
5284 case $host_cpu in
5285 hppa*64*)
5286 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
5287 ;;
5288 ia64*)
5289 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5290 ;;
5291 *)
b6d0720c
AC
5292 m4_if($1, [], [
5293 # Older versions of the 11.00 compiler do not understand -b yet
5294 # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
5295 _LT_LINKER_OPTION([if $CC understands -b],
5296 _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
5297 [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
5298 [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
5299 [_LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
7083c021
AC
5300 ;;
5301 esac
5302 fi
5303 if test "$with_gnu_ld" = no; then
5304 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
5305 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
db137867 5306
7083c021
AC
5307 case $host_cpu in
5308 hppa*64*|ia64*)
5309 _LT_TAGVAR(hardcode_direct, $1)=no
5310 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5311 ;;
5312 *)
5313 _LT_TAGVAR(hardcode_direct, $1)=yes
5314 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5315 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
db137867 5316
7083c021
AC
5317 # hardcode_minus_L: Not really in the search PATH,
5318 # but as the default location of the library.
5319 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5320 ;;
5321 esac
5322 fi
5323 ;;
db137867 5324
7083c021
AC
5325 irix5* | irix6* | nonstopux*)
5326 if test "$GCC" = yes; then
b6d0720c 5327 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
7083c021
AC
5328 # Try to use the -exported_symbol ld option, if it does not
5329 # work, assume that -exports_file does not work either and
5330 # implicitly export all symbols.
b6d0720c
AC
5331 # This should be the same for all languages, so no per-tag cache variable.
5332 AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
5333 [lt_cv_irix_exported_symbol],
5334 [save_LDFLAGS="$LDFLAGS"
5335 LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null"
5336 AC_LINK_IFELSE(
5337 [AC_LANG_SOURCE(
5338 [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
5339 [C++], [[int foo (void) { return 0; }]],
5340 [Fortran 77], [[
5341 subroutine foo
5342 end]],
5343 [Fortran], [[
5344 subroutine foo
5345 end]])])],
5346 [lt_cv_irix_exported_symbol=yes],
5347 [lt_cv_irix_exported_symbol=no])
5348 LDFLAGS="$save_LDFLAGS"])
5349 if test "$lt_cv_irix_exported_symbol" = yes; then
5350 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib'
5351 fi
7083c021 5352 else
b6d0720c
AC
5353 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
5354 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib'
7083c021
AC
5355 fi
5356 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5357 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5358 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5359 _LT_TAGVAR(inherit_rpath, $1)=yes
5360 _LT_TAGVAR(link_all_deplibs, $1)=yes
5361 ;;
db137867 5362
e4cf89d4 5363 netbsd* | netbsdelf*-gnu)
7083c021
AC
5364 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5365 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
5366 else
5367 _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
5368 fi
5369 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5370 _LT_TAGVAR(hardcode_direct, $1)=yes
5371 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5372 ;;
db137867 5373
7083c021
AC
5374 newsos6)
5375 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5376 _LT_TAGVAR(hardcode_direct, $1)=yes
5377 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5378 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5379 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5380 ;;
db137867 5381
7083c021
AC
5382 *nto* | *qnx*)
5383 ;;
db137867 5384
7083c021
AC
5385 openbsd*)
5386 if test -f /usr/libexec/ld.so; then
5387 _LT_TAGVAR(hardcode_direct, $1)=yes
5388 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5389 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5390 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
5391 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5392 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
5393 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5394 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
5395 else
5396 case $host_os in
5397 openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
5398 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5399 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5400 ;;
5401 *)
5402 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5403 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
5404 ;;
5405 esac
5406 fi
5407 else
5408 _LT_TAGVAR(ld_shlibs, $1)=no
5409 fi
5410 ;;
db137867 5411
7083c021
AC
5412 os2*)
5413 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5414 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5415 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
b6d0720c 5416 _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
7083c021
AC
5417 _LT_TAGVAR(old_archive_from_new_cmds, $1)='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
5418 ;;
db137867 5419
7083c021
AC
5420 osf3*)
5421 if test "$GCC" = yes; then
5422 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
b6d0720c 5423 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
7083c021
AC
5424 else
5425 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
b6d0720c 5426 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
7083c021
AC
5427 fi
5428 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5429 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5430 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5431 ;;
db137867 5432
7083c021
AC
5433 osf4* | osf5*) # as osf3* with the addition of -msym flag
5434 if test "$GCC" = yes; then
5435 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
b6d0720c 5436 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
7083c021
AC
5437 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5438 else
5439 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
b6d0720c 5440 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
7083c021 5441 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
b6d0720c 5442 $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp'
db137867 5443
7083c021
AC
5444 # Both c and cxx compiler support -rpath directly
5445 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
5446 fi
5447 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5448 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5449 ;;
db137867 5450
7083c021
AC
5451 solaris*)
5452 _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
5453 if test "$GCC" = yes; then
5454 wlarc='${wl}'
b6d0720c 5455 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
7083c021 5456 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
b6d0720c 5457 $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
7083c021
AC
5458 else
5459 case `$CC -V 2>&1` in
5460 *"Compilers 5.0"*)
5461 wlarc=''
5462 _LT_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
5463 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5464 $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
5465 ;;
5466 *)
5467 wlarc='${wl}'
5468 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags'
5469 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5470 $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5471 ;;
5472 esac
5473 fi
5474 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5475 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5476 case $host_os in
5477 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
5478 *)
5479 # The compiler driver will combine and reorder linker options,
5480 # but understands `-z linker_flag'. GCC discards it without `$wl',
5481 # but is careful enough not to reorder.
5482 # Supported since Solaris 2.6 (maybe 2.5.1?)
5483 if test "$GCC" = yes; then
5484 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
5485 else
5486 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
5487 fi
5488 ;;
5489 esac
5490 _LT_TAGVAR(link_all_deplibs, $1)=yes
5491 ;;
db137867 5492
7083c021
AC
5493 sunos4*)
5494 if test "x$host_vendor" = xsequent; then
5495 # Use $CC to link under sequent, because it throws in some extra .o
5496 # files that make .init and .fini sections work.
5497 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
5498 else
5499 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
5500 fi
5501 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5502 _LT_TAGVAR(hardcode_direct, $1)=yes
5503 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5504 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5505 ;;
db137867 5506
7083c021
AC
5507 sysv4)
5508 case $host_vendor in
5509 sni)
5510 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5511 _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
5512 ;;
5513 siemens)
5514 ## LD is ld it makes a PLAMLIB
5515 ## CC just makes a GrossModule.
5516 _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
5517 _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
5518 _LT_TAGVAR(hardcode_direct, $1)=no
5519 ;;
5520 motorola)
5521 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5522 _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
5523 ;;
5524 esac
5525 runpath_var='LD_RUN_PATH'
5526 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5527 ;;
db137867 5528
7083c021
AC
5529 sysv4.3*)
5530 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5531 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5532 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
5533 ;;
db137867 5534
7083c021
AC
5535 sysv4*MP*)
5536 if test -d /usr/nec; then
5537 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5538 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5539 runpath_var=LD_RUN_PATH
5540 hardcode_runpath_var=yes
5541 _LT_TAGVAR(ld_shlibs, $1)=yes
5542 fi
5543 ;;
db137867 5544
7083c021
AC
5545 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
5546 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
5547 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5548 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5549 runpath_var='LD_RUN_PATH'
db137867 5550
7083c021
AC
5551 if test "$GCC" = yes; then
5552 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5553 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5554 else
5555 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5556 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5557 fi
5558 ;;
db137867 5559
7083c021
AC
5560 sysv5* | sco3.2v5* | sco5v6*)
5561 # Note: We can NOT use -z defs as we might desire, because we do not
5562 # link with -lc, and that would cause any symbols used from libc to
5563 # always be unresolved, which means just about no library would
5564 # ever link correctly. If we're not using GNU ld we use -z text
5565 # though, which does catch some bad symbols but isn't as heavy-handed
5566 # as -z defs.
5567 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
5568 _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
5569 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
5570 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5571 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
5572 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5573 _LT_TAGVAR(link_all_deplibs, $1)=yes
5574 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
5575 runpath_var='LD_RUN_PATH'
db137867 5576
7083c021
AC
5577 if test "$GCC" = yes; then
5578 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5579 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5580 else
5581 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5582 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
5583 fi
5584 ;;
db137867 5585
7083c021
AC
5586 uts4*)
5587 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5588 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5589 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5590 ;;
db137867 5591
7083c021
AC
5592 *)
5593 _LT_TAGVAR(ld_shlibs, $1)=no
5594 ;;
5595 esac
db137867 5596
7083c021
AC
5597 if test x$host_vendor = xsni; then
5598 case $host in
5599 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
5600 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Blargedynsym'
5601 ;;
5602 esac
5603 fi
5604 fi
5605])
5606AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
5607test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
db137867 5608
7083c021 5609_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
b676ea3b 5610
7083c021
AC
5611_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
5612_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
5613_LT_DECL([], [extract_expsyms_cmds], [2],
5614 [The commands to extract the exported symbol list from a shared archive])
db137867 5615
7083c021
AC
5616#
5617# Do we need to explicitly link libc?
5618#
5619case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
5620x|xyes)
5621 # Assume -lc should be added
5622 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
db137867 5623
7083c021
AC
5624 if test "$enable_shared" = yes && test "$GCC" = yes; then
5625 case $_LT_TAGVAR(archive_cmds, $1) in
5626 *'~'*)
5627 # FIXME: we may have to deal with multi-command sequences.
5628 ;;
5629 '$CC '*)
5630 # Test whether the compiler implicitly links with -lc since on some
5631 # systems, -lgcc has to come before -lc. If gcc already passes -lc
5632 # to ld, don't add -lc before -lgcc.
b6d0720c
AC
5633 AC_CACHE_CHECK([whether -lc should be explicitly linked in],
5634 [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
5635 [$RM conftest*
5636 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
5637
5638 if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
5639 soname=conftest
5640 lib=conftest
5641 libobjs=conftest.$ac_objext
5642 deplibs=
5643 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
5644 pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
5645 compiler_flags=-v
5646 linker_flags=-v
5647 verstring=
5648 output_objdir=.
5649 libname=conftest
5650 lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
5651 _LT_TAGVAR(allow_undefined_flag, $1)=
5652 if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
5653 then
5654 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
5655 else
5656 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5657 fi
5658 _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
5659 else
5660 cat conftest.err 1>&5
5661 fi
5662 $RM conftest*
5663 ])
5664 _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
7083c021
AC
5665 ;;
5666 esac
5667 fi
5668 ;;
5669esac
db137867 5670
7083c021
AC
5671_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
5672 [Whether or not to add -lc for building shared libraries])
5673_LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
5674 [enable_shared_with_static_runtimes], [0],
5675 [Whether or not to disallow shared libs when runtime libs are static])
5676_LT_TAGDECL([], [export_dynamic_flag_spec], [1],
5677 [Compiler flag to allow reflexive dlopens])
5678_LT_TAGDECL([], [whole_archive_flag_spec], [1],
5679 [Compiler flag to generate shared objects directly from archives])
5680_LT_TAGDECL([], [compiler_needs_object], [1],
5681 [Whether the compiler copes with passing no objects directly])
5682_LT_TAGDECL([], [old_archive_from_new_cmds], [2],
5683 [Create an old-style archive from a shared archive])
5684_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
5685 [Create a temporary old-style archive to link instead of a shared archive])
5686_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
5687_LT_TAGDECL([], [archive_expsym_cmds], [2])
5688_LT_TAGDECL([], [module_cmds], [2],
5689 [Commands used to build a loadable module if different from building
5690 a shared archive.])
5691_LT_TAGDECL([], [module_expsym_cmds], [2])
5692_LT_TAGDECL([], [with_gnu_ld], [1],
5693 [Whether we are building with GNU ld or not])
5694_LT_TAGDECL([], [allow_undefined_flag], [1],
5695 [Flag that allows shared libraries with undefined symbols to be built])
5696_LT_TAGDECL([], [no_undefined_flag], [1],
5697 [Flag that enforces no undefined symbols])
5698_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
5699 [Flag to hardcode $libdir into a binary during linking.
5700 This must work even if $libdir does not exist])
7083c021
AC
5701_LT_TAGDECL([], [hardcode_libdir_separator], [1],
5702 [Whether we need a single "-rpath" flag with a separated argument])
5703_LT_TAGDECL([], [hardcode_direct], [0],
5704 [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
5705 DIR into the resulting binary])
5706_LT_TAGDECL([], [hardcode_direct_absolute], [0],
5707 [Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes
5708 DIR into the resulting binary and the resulting library dependency is
5709 "absolute", i.e impossible to change by setting ${shlibpath_var} if the
5710 library is relocated])
5711_LT_TAGDECL([], [hardcode_minus_L], [0],
5712 [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
5713 into the resulting binary])
5714_LT_TAGDECL([], [hardcode_shlibpath_var], [0],
5715 [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
5716 into the resulting binary])
5717_LT_TAGDECL([], [hardcode_automatic], [0],
5718 [Set to "yes" if building a shared library automatically hardcodes DIR
5719 into the library and all subsequent libraries and executables linked
5720 against it])
5721_LT_TAGDECL([], [inherit_rpath], [0],
5722 [Set to yes if linker adds runtime paths of dependent libraries
5723 to runtime path list])
5724_LT_TAGDECL([], [link_all_deplibs], [0],
5725 [Whether libtool must link a program against all its dependency libraries])
7083c021
AC
5726_LT_TAGDECL([], [always_export_symbols], [0],
5727 [Set to "yes" if exported symbols are required])
5728_LT_TAGDECL([], [export_symbols_cmds], [2],
5729 [The commands to list exported symbols])
5730_LT_TAGDECL([], [exclude_expsyms], [1],
5731 [Symbols that should not be listed in the preloaded symbols])
5732_LT_TAGDECL([], [include_expsyms], [1],
5733 [Symbols that must always be exported])
5734_LT_TAGDECL([], [prelink_cmds], [2],
5735 [Commands necessary for linking programs (against libraries) with templates])
b6d0720c
AC
5736_LT_TAGDECL([], [postlink_cmds], [2],
5737 [Commands necessary for finishing linking programs])
7083c021
AC
5738_LT_TAGDECL([], [file_list_spec], [1],
5739 [Specify filename containing input files])
5740dnl FIXME: Not yet implemented
5741dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
5742dnl [Compiler flag to generate thread safe objects])
5743])# _LT_LINKER_SHLIBS
5744
5745
5746# _LT_LANG_C_CONFIG([TAG])
5747# ------------------------
5748# Ensure that the configuration variables for a C compiler are suitably
5749# defined. These variables are subsequently used by _LT_CONFIG to write
5750# the compiler configuration to `libtool'.
5751m4_defun([_LT_LANG_C_CONFIG],
5752[m4_require([_LT_DECL_EGREP])dnl
5753lt_save_CC="$CC"
5754AC_LANG_PUSH(C)
db137867 5755
7083c021
AC
5756# Source file extension for C test sources.
5757ac_ext=c
db137867 5758
7083c021
AC
5759# Object file extension for compiled C test sources.
5760objext=o
5761_LT_TAGVAR(objext, $1)=$objext
db137867 5762
7083c021
AC
5763# Code to be used in simple compile tests
5764lt_simple_compile_test_code="int some_variable = 0;"
db137867 5765
7083c021
AC
5766# Code to be used in simple link tests
5767lt_simple_link_test_code='int main(){return(0);}'
db137867 5768
7083c021
AC
5769_LT_TAG_COMPILER
5770# Save the default compiler, since it gets overwritten when the other
5771# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
5772compiler_DEFAULT=$CC
db137867 5773
7083c021
AC
5774# save warnings/boilerplate of simple test code
5775_LT_COMPILER_BOILERPLATE
5776_LT_LINKER_BOILERPLATE
db137867 5777
7083c021
AC
5778if test -n "$compiler"; then
5779 _LT_COMPILER_NO_RTTI($1)
5780 _LT_COMPILER_PIC($1)
5781 _LT_COMPILER_C_O($1)
5782 _LT_COMPILER_FILE_LOCKS($1)
5783 _LT_LINKER_SHLIBS($1)
5784 _LT_SYS_DYNAMIC_LINKER($1)
5785 _LT_LINKER_HARDCODE_LIBPATH($1)
5786 LT_SYS_DLOPEN_SELF
5787 _LT_CMD_STRIPLIB
5788
5789 # Report which library types will actually be built
5790 AC_MSG_CHECKING([if libtool supports shared libraries])
5791 AC_MSG_RESULT([$can_build_shared])
5792
5793 AC_MSG_CHECKING([whether to build shared libraries])
5794 test "$can_build_shared" = "no" && enable_shared=no
5795
5796 # On AIX, shared libraries and static libraries use the same namespace, and
5797 # are all built from PIC.
5798 case $host_os in
5799 aix3*)
5800 test "$enable_shared" = yes && enable_static=no
5801 if test -n "$RANLIB"; then
5802 archive_cmds="$archive_cmds~\$RANLIB \$lib"
5803 postinstall_cmds='$RANLIB $lib'
5804 fi
5805 ;;
db137867 5806
7083c021
AC
5807 aix[[4-9]]*)
5808 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
5809 test "$enable_shared" = yes && enable_static=no
5810 fi
5811 ;;
5812 esac
5813 AC_MSG_RESULT([$enable_shared])
db137867 5814
7083c021
AC
5815 AC_MSG_CHECKING([whether to build static libraries])
5816 # Make sure either enable_shared or enable_static is yes.
5817 test "$enable_shared" = yes || enable_static=yes
5818 AC_MSG_RESULT([$enable_static])
db137867 5819
7083c021
AC
5820 _LT_CONFIG($1)
5821fi
5822AC_LANG_POP
5823CC="$lt_save_CC"
5824])# _LT_LANG_C_CONFIG
db137867 5825
db137867 5826
7083c021
AC
5827# _LT_LANG_CXX_CONFIG([TAG])
5828# --------------------------
5829# Ensure that the configuration variables for a C++ compiler are suitably
5830# defined. These variables are subsequently used by _LT_CONFIG to write
5831# the compiler configuration to `libtool'.
5832m4_defun([_LT_LANG_CXX_CONFIG],
b6d0720c 5833[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
7083c021 5834m4_require([_LT_DECL_EGREP])dnl
b6d0720c
AC
5835m4_require([_LT_PATH_MANIFEST_TOOL])dnl
5836if test -n "$CXX" && ( test "X$CXX" != "Xno" &&
5837 ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) ||
5838 (test "X$CXX" != "Xg++"))) ; then
5839 AC_PROG_CXXCPP
5840else
5841 _lt_caught_CXX_error=yes
5842fi
7083c021
AC
5843
5844AC_LANG_PUSH(C++)
5845_LT_TAGVAR(archive_cmds_need_lc, $1)=no
5846_LT_TAGVAR(allow_undefined_flag, $1)=
5847_LT_TAGVAR(always_export_symbols, $1)=no
5848_LT_TAGVAR(archive_expsym_cmds, $1)=
5849_LT_TAGVAR(compiler_needs_object, $1)=no
5850_LT_TAGVAR(export_dynamic_flag_spec, $1)=
5851_LT_TAGVAR(hardcode_direct, $1)=no
5852_LT_TAGVAR(hardcode_direct_absolute, $1)=no
5853_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7083c021
AC
5854_LT_TAGVAR(hardcode_libdir_separator, $1)=
5855_LT_TAGVAR(hardcode_minus_L, $1)=no
5856_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
5857_LT_TAGVAR(hardcode_automatic, $1)=no
5858_LT_TAGVAR(inherit_rpath, $1)=no
5859_LT_TAGVAR(module_cmds, $1)=
5860_LT_TAGVAR(module_expsym_cmds, $1)=
5861_LT_TAGVAR(link_all_deplibs, $1)=unknown
5862_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
b6d0720c
AC
5863_LT_TAGVAR(reload_flag, $1)=$reload_flag
5864_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7083c021
AC
5865_LT_TAGVAR(no_undefined_flag, $1)=
5866_LT_TAGVAR(whole_archive_flag_spec, $1)=
5867_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
db137867 5868
7083c021
AC
5869# Source file extension for C++ test sources.
5870ac_ext=cpp
db137867 5871
7083c021
AC
5872# Object file extension for compiled C++ test sources.
5873objext=o
5874_LT_TAGVAR(objext, $1)=$objext
5875
5876# No sense in running all these tests if we already determined that
5877# the CXX compiler isn't working. Some variables (like enable_shared)
5878# are currently assumed to apply to all compilers on this platform,
5879# and will be corrupted by setting them based on a non-working compiler.
5880if test "$_lt_caught_CXX_error" != yes; then
5881 # Code to be used in simple compile tests
5882 lt_simple_compile_test_code="int some_variable = 0;"
5883
5884 # Code to be used in simple link tests
5885 lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
5886
5887 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
5888 _LT_TAG_COMPILER
5889
5890 # save warnings/boilerplate of simple test code
5891 _LT_COMPILER_BOILERPLATE
5892 _LT_LINKER_BOILERPLATE
5893
5894 # Allow CC to be a program name with arguments.
5895 lt_save_CC=$CC
b6d0720c 5896 lt_save_CFLAGS=$CFLAGS
7083c021
AC
5897 lt_save_LD=$LD
5898 lt_save_GCC=$GCC
5899 GCC=$GXX
5900 lt_save_with_gnu_ld=$with_gnu_ld
5901 lt_save_path_LD=$lt_cv_path_LD
5902 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
5903 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
5904 else
5905 $as_unset lt_cv_prog_gnu_ld
5906 fi
5907 if test -n "${lt_cv_path_LDCXX+set}"; then
5908 lt_cv_path_LD=$lt_cv_path_LDCXX
5909 else
5910 $as_unset lt_cv_path_LD
5911 fi
5912 test -z "${LDCXX+set}" || LD=$LDCXX
5913 CC=${CXX-"c++"}
b6d0720c 5914 CFLAGS=$CXXFLAGS
7083c021
AC
5915 compiler=$CC
5916 _LT_TAGVAR(compiler, $1)=$CC
5917 _LT_CC_BASENAME([$compiler])
db137867 5918
7083c021
AC
5919 if test -n "$compiler"; then
5920 # We don't want -fno-exception when compiling C++ code, so set the
5921 # no_builtin_flag separately
5922 if test "$GXX" = yes; then
5923 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
5924 else
5925 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
5926 fi
db137867 5927
7083c021
AC
5928 if test "$GXX" = yes; then
5929 # Set up default GNU C++ configuration
db137867 5930
7083c021 5931 LT_PATH_LD
db137867 5932
7083c021
AC
5933 # Check if GNU C++ uses GNU ld as the underlying linker, since the
5934 # archiving commands below assume that GNU ld is being used.
5935 if test "$with_gnu_ld" = yes; then
b6d0720c
AC
5936 _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
5937 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
db137867 5938
7083c021
AC
5939 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
5940 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
db137867 5941
7083c021
AC
5942 # If archive_cmds runs LD, not CC, wlarc should be empty
5943 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
5944 # investigate it a little bit more. (MM)
5945 wlarc='${wl}'
db137867 5946
7083c021
AC
5947 # ancient GNU ld didn't support --whole-archive et. al.
5948 if eval "`$CC -print-prog-name=ld` --help 2>&1" |
5949 $GREP 'no-whole-archive' > /dev/null; then
5950 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
5951 else
5952 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5953 fi
5954 else
5955 with_gnu_ld=no
5956 wlarc=
5957
5958 # A generic and very simple default shared library creation
5959 # command for GNU C++ for the case where it uses the native
5960 # linker, instead of GNU ld. If possible, this setting should
5961 # overridden to take advantage of the native linker features on
5962 # the platform it is being used on.
5963 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
5964 fi
db137867 5965
7083c021
AC
5966 # Commands to make compiler produce verbose output that lists
5967 # what "hidden" libraries, object files and flags are used when
5968 # linking a shared library.
b6d0720c 5969 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
db137867 5970
7083c021
AC
5971 else
5972 GXX=no
5973 with_gnu_ld=no
5974 wlarc=
5975 fi
db137867 5976
7083c021
AC
5977 # PORTME: fill in a description of your system's C++ link characteristics
5978 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
5979 _LT_TAGVAR(ld_shlibs, $1)=yes
5980 case $host_os in
5981 aix3*)
5982 # FIXME: insert proper C++ library support
5983 _LT_TAGVAR(ld_shlibs, $1)=no
5984 ;;
5985 aix[[4-9]]*)
5986 if test "$host_cpu" = ia64; then
5987 # On IA64, the linker does run time linking by default, so we don't
5988 # have to do anything special.
5989 aix_use_runtimelinking=no
5990 exp_sym_flag='-Bexport'
5991 no_entry_flag=""
5992 else
5993 aix_use_runtimelinking=no
5994
5995 # Test if we are trying to use run time linking or normal
5996 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
5997 # need to do runtime linking.
5998 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5999 for ld_flag in $LDFLAGS; do
6000 case $ld_flag in
6001 *-brtl*)
6002 aix_use_runtimelinking=yes
6003 break
6004 ;;
6005 esac
6006 done
6007 ;;
6008 esac
db137867 6009
7083c021
AC
6010 exp_sym_flag='-bexport'
6011 no_entry_flag='-bnoentry'
6012 fi
db137867 6013
7083c021
AC
6014 # When large executables or shared objects are built, AIX ld can
6015 # have problems creating the table of contents. If linking a library
6016 # or program results in "error TOC overflow" add -mminimal-toc to
6017 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
6018 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
6019
6020 _LT_TAGVAR(archive_cmds, $1)=''
6021 _LT_TAGVAR(hardcode_direct, $1)=yes
6022 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6023 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6024 _LT_TAGVAR(link_all_deplibs, $1)=yes
6025 _LT_TAGVAR(file_list_spec, $1)='${wl}-f,'
6026
6027 if test "$GXX" = yes; then
6028 case $host_os in aix4.[[012]]|aix4.[[012]].*)
6029 # We only want to do this on AIX 4.2 and lower, the check
6030 # below for broken collect2 doesn't work under 4.3+
6031 collect2name=`${CC} -print-prog-name=collect2`
6032 if test -f "$collect2name" &&
6033 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
6034 then
6035 # We have reworked collect2
6036 :
6037 else
6038 # We have old collect2
6039 _LT_TAGVAR(hardcode_direct, $1)=unsupported
6040 # It fails to find uninstalled libraries when the uninstalled
6041 # path is not listed in the libpath. Setting hardcode_minus_L
6042 # to unsupported forces relinking
6043 _LT_TAGVAR(hardcode_minus_L, $1)=yes
6044 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6045 _LT_TAGVAR(hardcode_libdir_separator, $1)=
6046 fi
6047 esac
6048 shared_flag='-shared'
6049 if test "$aix_use_runtimelinking" = yes; then
6050 shared_flag="$shared_flag "'${wl}-G'
6051 fi
6052 else
6053 # not using gcc
6054 if test "$host_cpu" = ia64; then
6055 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
6056 # chokes on -Wl,-G. The following line is correct:
6057 shared_flag='-G'
6058 else
6059 if test "$aix_use_runtimelinking" = yes; then
6060 shared_flag='${wl}-G'
6061 else
6062 shared_flag='${wl}-bM:SRE'
6063 fi
6064 fi
6065 fi
db137867 6066
7083c021
AC
6067 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-bexpall'
6068 # It seems that -bexpall does not export symbols beginning with
6069 # underscore (_), so it is better to generate a list of symbols to
6070 # export.
6071 _LT_TAGVAR(always_export_symbols, $1)=yes
6072 if test "$aix_use_runtimelinking" = yes; then
6073 # Warning - without using the other runtime loading flags (-brtl),
6074 # -berok will link without error, but may produce a broken library.
6075 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
6076 # Determine the default libpath from the value encoded in an empty
6077 # executable.
b6d0720c 6078 _LT_SYS_MODULE_PATH_AIX([$1])
7083c021
AC
6079 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6080
b6d0720c 6081 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag"
7083c021
AC
6082 else
6083 if test "$host_cpu" = ia64; then
6084 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $libdir:/usr/lib:/lib'
6085 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
6086 _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols"
6087 else
6088 # Determine the default libpath from the value encoded in an
6089 # empty executable.
b6d0720c 6090 _LT_SYS_MODULE_PATH_AIX([$1])
7083c021
AC
6091 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-blibpath:$libdir:'"$aix_libpath"
6092 # Warning - without using the other run time loading flags,
6093 # -berok will link without error, but may produce a broken library.
6094 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-bernotok'
6095 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-berok'
b6d0720c
AC
6096 if test "$with_gnu_ld" = yes; then
6097 # We only use this code for GNU lds that support --whole-archive.
6098 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
6099 else
6100 # Exported symbols can be pulled into shared objects from archives
6101 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6102 fi
7083c021
AC
6103 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6104 # This is similar to how AIX traditionally builds its shared
6105 # libraries.
6106 _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname'
6107 fi
6108 fi
6109 ;;
db137867 6110
7083c021
AC
6111 beos*)
6112 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
6113 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6114 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
6115 # support --undefined. This deserves some investigation. FIXME
6116 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6117 else
6118 _LT_TAGVAR(ld_shlibs, $1)=no
6119 fi
6120 ;;
db137867 6121
7083c021
AC
6122 chorus*)
6123 case $cc_basename in
6124 *)
6125 # FIXME: insert proper C++ library support
6126 _LT_TAGVAR(ld_shlibs, $1)=no
6127 ;;
6128 esac
6129 ;;
db137867 6130
7083c021 6131 cygwin* | mingw* | pw32* | cegcc*)
b6d0720c
AC
6132 case $GXX,$cc_basename in
6133 ,cl* | no,cl*)
6134 # Native MSVC
6135 # hardcode_libdir_flag_spec is actually meaningless, as there is
6136 # no search path for DLLs.
6137 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6138 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6139 _LT_TAGVAR(always_export_symbols, $1)=yes
6140 _LT_TAGVAR(file_list_spec, $1)='@'
6141 # Tell ltmain to make .lib files, not .a files.
6142 libext=lib
6143 # Tell ltmain to make .dll files, not .so files.
6144 shrext_cmds=".dll"
6145 # FIXME: Setting linknames here is a bad hack.
6146 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames='
6147 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
6148 $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp;
6149 else
6150 $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp;
6151 fi~
6152 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
6153 linknames='
6154 # The linker will not automatically build a static lib if we build a DLL.
6155 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
6156 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6157 # Don't use ranlib
6158 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
6159 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
6160 lt_tool_outputfile="@TOOL_OUTPUT@"~
6161 case $lt_outputfile in
6162 *.exe|*.EXE) ;;
6163 *)
6164 lt_outputfile="$lt_outputfile.exe"
6165 lt_tool_outputfile="$lt_tool_outputfile.exe"
6166 ;;
6167 esac~
6168 func_to_tool_file "$lt_outputfile"~
6169 if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then
6170 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
6171 $RM "$lt_outputfile.manifest";
6172 fi'
6173 ;;
6174 *)
6175 # g++
6176 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
6177 # as there is no search path for DLLs.
6178 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6179 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-all-symbols'
6180 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6181 _LT_TAGVAR(always_export_symbols, $1)=no
6182 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6183
6184 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
6185 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
6186 # If the export-symbols file already is a .def file (1st line
6187 # is EXPORTS), use it as is; otherwise, prepend...
6188 _LT_TAGVAR(archive_expsym_cmds, $1)='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then
6189 cp $export_symbols $output_objdir/$soname.def;
6190 else
6191 echo EXPORTS > $output_objdir/$soname.def;
6192 cat $export_symbols >> $output_objdir/$soname.def;
6193 fi~
6194 $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
6195 else
6196 _LT_TAGVAR(ld_shlibs, $1)=no
6197 fi
6198 ;;
6199 esac
6200 ;;
7083c021
AC
6201 darwin* | rhapsody*)
6202 _LT_DARWIN_LINKER_FEATURES($1)
6203 ;;
db137867 6204
7083c021
AC
6205 dgux*)
6206 case $cc_basename in
6207 ec++*)
6208 # FIXME: insert proper C++ library support
6209 _LT_TAGVAR(ld_shlibs, $1)=no
6210 ;;
6211 ghcx*)
6212 # Green Hills C++ Compiler
6213 # FIXME: insert proper C++ library support
6214 _LT_TAGVAR(ld_shlibs, $1)=no
6215 ;;
6216 *)
6217 # FIXME: insert proper C++ library support
6218 _LT_TAGVAR(ld_shlibs, $1)=no
6219 ;;
6220 esac
6221 ;;
db137867 6222
a949ab1a 6223 freebsd2.*)
7083c021
AC
6224 # C++ shared libraries reported to be fairly broken before
6225 # switch to ELF
6226 _LT_TAGVAR(ld_shlibs, $1)=no
6227 ;;
db137867 6228
7083c021
AC
6229 freebsd-elf*)
6230 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6231 ;;
db137867 6232
7083c021
AC
6233 freebsd* | dragonfly*)
6234 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
6235 # conventions
6236 _LT_TAGVAR(ld_shlibs, $1)=yes
6237 ;;
db137867 6238
b6d0720c
AC
6239 haiku*)
6240 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6241 _LT_TAGVAR(link_all_deplibs, $1)=yes
6242 ;;
6243
7083c021
AC
6244 hpux9*)
6245 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6246 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6247 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6248 _LT_TAGVAR(hardcode_direct, $1)=yes
6249 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6250 # but as the default
6251 # location of the library.
6252
6253 case $cc_basename in
6254 CC*)
6255 # FIXME: insert proper C++ library support
6256 _LT_TAGVAR(ld_shlibs, $1)=no
6257 ;;
6258 aCC*)
6259 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
6260 # Commands to make compiler produce verbose output that lists
6261 # what "hidden" libraries, object files and flags are used when
6262 # linking a shared library.
6263 #
6264 # There doesn't appear to be a way to prevent this compiler from
6265 # explicitly linking system object files so we need to strip them
6266 # from the output so that they don't get included in the library
6267 # dependencies.
b6d0720c 6268 output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
7083c021
AC
6269 ;;
6270 *)
6271 if test "$GXX" = yes; then
b6d0720c 6272 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
7083c021
AC
6273 else
6274 # FIXME: insert proper C++ library support
6275 _LT_TAGVAR(ld_shlibs, $1)=no
6276 fi
6277 ;;
6278 esac
6279 ;;
db137867 6280
7083c021
AC
6281 hpux10*|hpux11*)
6282 if test $with_gnu_ld = no; then
6283 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
6284 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6285
6286 case $host_cpu in
6287 hppa*64*|ia64*)
6288 ;;
6289 *)
6290 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6291 ;;
6292 esac
6293 fi
6294 case $host_cpu in
6295 hppa*64*|ia64*)
6296 _LT_TAGVAR(hardcode_direct, $1)=no
6297 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6298 ;;
6299 *)
6300 _LT_TAGVAR(hardcode_direct, $1)=yes
6301 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6302 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6303 # but as the default
6304 # location of the library.
6305 ;;
6306 esac
6307
6308 case $cc_basename in
6309 CC*)
6310 # FIXME: insert proper C++ library support
6311 _LT_TAGVAR(ld_shlibs, $1)=no
6312 ;;
6313 aCC*)
6314 case $host_cpu in
6315 hppa*64*)
6316 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6317 ;;
6318 ia64*)
6319 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6320 ;;
6321 *)
6322 _LT_TAGVAR(archive_cmds, $1)='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6323 ;;
6324 esac
6325 # Commands to make compiler produce verbose output that lists
6326 # what "hidden" libraries, object files and flags are used when
6327 # linking a shared library.
6328 #
6329 # There doesn't appear to be a way to prevent this compiler from
6330 # explicitly linking system object files so we need to strip them
6331 # from the output so that they don't get included in the library
6332 # dependencies.
b6d0720c 6333 output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
7083c021
AC
6334 ;;
6335 *)
6336 if test "$GXX" = yes; then
6337 if test $with_gnu_ld = no; then
6338 case $host_cpu in
6339 hppa*64*)
6340 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6341 ;;
6342 ia64*)
b6d0720c 6343 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7083c021
AC
6344 ;;
6345 *)
b6d0720c 6346 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7083c021
AC
6347 ;;
6348 esac
6349 fi
6350 else
6351 # FIXME: insert proper C++ library support
6352 _LT_TAGVAR(ld_shlibs, $1)=no
6353 fi
6354 ;;
6355 esac
6356 ;;
db137867 6357
7083c021
AC
6358 interix[[3-9]]*)
6359 _LT_TAGVAR(hardcode_direct, $1)=no
6360 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6361 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6362 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6363 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
6364 # Instead, shared libraries are loaded at an image base (0x10000000 by
6365 # default) and relocated if they conflict, which is a slow very memory
6366 # consuming and fragmenting process. To avoid this, we pick a random,
6367 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
6368 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
6369 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
6370 _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
6371 ;;
6372 irix5* | irix6*)
6373 case $cc_basename in
6374 CC*)
6375 # SGI C++
b6d0720c 6376 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
7083c021
AC
6377
6378 # Archives containing C++ object files must be created using
6379 # "CC -ar", where "CC" is the IRIX C++ compiler. This is
6380 # necessary to make sure instantiated templates are included
6381 # in the archive.
6382 _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
6383 ;;
6384 *)
6385 if test "$GXX" = yes; then
6386 if test "$with_gnu_ld" = no; then
b6d0720c 6387 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
7083c021 6388 else
b6d0720c 6389 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` -o $lib'
7083c021
AC
6390 fi
6391 fi
6392 _LT_TAGVAR(link_all_deplibs, $1)=yes
6393 ;;
6394 esac
6395 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6396 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6397 _LT_TAGVAR(inherit_rpath, $1)=yes
6398 ;;
db137867 6399
e4cf89d4 6400 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
7083c021
AC
6401 case $cc_basename in
6402 KCC*)
6403 # Kuck and Associates, Inc. (KAI) C++ Compiler
6404
6405 # KCC will only create a shared library if the output file
6406 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6407 # to its proper name (with version) after linking.
6408 _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
6409 _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib ${wl}-retain-symbols-file,$export_symbols; mv \$templib $lib'
6410 # Commands to make compiler produce verbose output that lists
6411 # what "hidden" libraries, object files and flags are used when
6412 # linking a shared library.
6413 #
6414 # There doesn't appear to be a way to prevent this compiler from
6415 # explicitly linking system object files so we need to strip them
6416 # from the output so that they don't get included in the library
6417 # dependencies.
b6d0720c 6418 output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
7083c021
AC
6419
6420 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6421 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6422
6423 # Archives containing C++ object files must be created using
6424 # "CC -Bstatic", where "CC" is the KAI C++ compiler.
6425 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
6426 ;;
6427 icpc* | ecpc* )
6428 # Intel C++
6429 with_gnu_ld=yes
6430 # version 8.0 and above of icpc choke on multiply defined symbols
6431 # if we add $predep_objects and $postdep_objects, however 7.1 and
6432 # earlier do not add the objects themselves.
6433 case `$CC -V 2>&1` in
6434 *"Version 7."*)
6435 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
6436 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
6437 ;;
6438 *) # Version 8.0 or newer
6439 tmp_idyn=
6440 case $host_cpu in
6441 ia64*) tmp_idyn=' -i_dynamic';;
6442 esac
6443 _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6444 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
6445 ;;
6446 esac
6447 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6448 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6449 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6450 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive$convenience ${wl}--no-whole-archive'
6451 ;;
6452 pgCC* | pgcpp*)
6453 # Portland Group C++ compiler
6454 case `$CC -V` in
b6d0720c 6455 *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
7083c021
AC
6456 _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
6457 rm -rf $tpldir~
6458 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
b6d0720c 6459 compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
7083c021
AC
6460 _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
6461 rm -rf $tpldir~
6462 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
b6d0720c 6463 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
7083c021
AC
6464 $RANLIB $oldlib'
6465 _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
6466 rm -rf $tpldir~
6467 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
b6d0720c 6468 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
7083c021
AC
6469 _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
6470 rm -rf $tpldir~
6471 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
b6d0720c 6472 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
7083c021 6473 ;;
b6d0720c 6474 *) # Version 6 and above use weak symbols
7083c021
AC
6475 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib'
6476 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib'
6477 ;;
6478 esac
db137867 6479
7083c021
AC
6480 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}--rpath ${wl}$libdir'
6481 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
b6d0720c 6482 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
7083c021
AC
6483 ;;
6484 cxx*)
6485 # Compaq C++
6486 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib'
6487 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib ${wl}-retain-symbols-file $wl$export_symbols'
db137867 6488
7083c021
AC
6489 runpath_var=LD_RUN_PATH
6490 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6491 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
db137867 6492
7083c021
AC
6493 # Commands to make compiler produce verbose output that lists
6494 # what "hidden" libraries, object files and flags are used when
6495 # linking a shared library.
6496 #
6497 # There doesn't appear to be a way to prevent this compiler from
6498 # explicitly linking system object files so we need to strip them
6499 # from the output so that they don't get included in the library
6500 # dependencies.
b6d0720c 6501 output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed'
7083c021 6502 ;;
b6d0720c 6503 xl* | mpixl* | bgxl*)
7083c021
AC
6504 # IBM XL 8.0 on PPC, with GNU ld
6505 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6506 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}--export-dynamic'
6507 _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
6508 if test "x$supports_anon_versioning" = xyes; then
6509 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
6510 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
6511 echo "local: *; };" >> $output_objdir/$libname.ver~
6512 $CC -qmkshrobj $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
6513 fi
6514 ;;
6515 *)
6516 case `$CC -V 2>&1 | sed 5q` in
6517 *Sun\ C*)
6518 # Sun C++ 5.9
6519 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6520 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6521 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
6522 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
b6d0720c 6523 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive'
7083c021
AC
6524 _LT_TAGVAR(compiler_needs_object, $1)=yes
6525
6526 # Not sure whether something based on
6527 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
6528 # would be better.
b6d0720c 6529 output_verbose_link_cmd='func_echo_all'
7083c021
AC
6530
6531 # Archives containing C++ object files must be created using
6532 # "CC -xar", where "CC" is the Sun C++ compiler. This is
6533 # necessary to make sure instantiated templates are included
6534 # in the archive.
6535 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
6536 ;;
6537 esac
6538 ;;
6539 esac
6540 ;;
db137867 6541
7083c021
AC
6542 lynxos*)
6543 # FIXME: insert proper C++ library support
6544 _LT_TAGVAR(ld_shlibs, $1)=no
6545 ;;
db137867 6546
7083c021
AC
6547 m88k*)
6548 # FIXME: insert proper C++ library support
6549 _LT_TAGVAR(ld_shlibs, $1)=no
6550 ;;
db137867 6551
7083c021
AC
6552 mvs*)
6553 case $cc_basename in
6554 cxx*)
6555 # FIXME: insert proper C++ library support
6556 _LT_TAGVAR(ld_shlibs, $1)=no
6557 ;;
6558 *)
6559 # FIXME: insert proper C++ library support
6560 _LT_TAGVAR(ld_shlibs, $1)=no
6561 ;;
6562 esac
6563 ;;
db137867 6564
7083c021
AC
6565 netbsd*)
6566 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
6567 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
6568 wlarc=
6569 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6570 _LT_TAGVAR(hardcode_direct, $1)=yes
6571 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6572 fi
6573 # Workaround some broken pre-1.5 toolchains
6574 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
6575 ;;
db137867 6576
7083c021
AC
6577 *nto* | *qnx*)
6578 _LT_TAGVAR(ld_shlibs, $1)=yes
6579 ;;
db137867 6580
7083c021
AC
6581 openbsd2*)
6582 # C++ shared libraries are fairly broken
6583 _LT_TAGVAR(ld_shlibs, $1)=no
6584 ;;
db137867 6585
7083c021
AC
6586 openbsd*)
6587 if test -f /usr/libexec/ld.so; then
6588 _LT_TAGVAR(hardcode_direct, $1)=yes
6589 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6590 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6591 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
6592 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6593 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
6594 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
6595 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
6596 _LT_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
6597 fi
b6d0720c 6598 output_verbose_link_cmd=func_echo_all
7083c021
AC
6599 else
6600 _LT_TAGVAR(ld_shlibs, $1)=no
6601 fi
6602 ;;
db137867 6603
7083c021
AC
6604 osf3* | osf4* | osf5*)
6605 case $cc_basename in
6606 KCC*)
6607 # Kuck and Associates, Inc. (KAI) C++ Compiler
6608
6609 # KCC will only create a shared library if the output file
6610 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6611 # to its proper name (with version) after linking.
6612 _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\${tempext}\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
6613
6614 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
6615 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6616
6617 # Archives containing C++ object files must be created using
6618 # the KAI C++ compiler.
6619 case $host in
6620 osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
6621 *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
6622 esac
6623 ;;
6624 RCC*)
6625 # Rational C++ 2.4.1
6626 # FIXME: insert proper C++ library support
6627 _LT_TAGVAR(ld_shlibs, $1)=no
6628 ;;
6629 cxx*)
6630 case $host in
6631 osf3*)
6632 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
b6d0720c 6633 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && func_echo_all "${wl}-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
7083c021
AC
6634 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6635 ;;
6636 *)
6637 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
b6d0720c 6638 _LT_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib'
7083c021
AC
6639 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
6640 echo "-hidden">> $lib.exp~
b6d0720c 6641 $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~
7083c021
AC
6642 $RM $lib.exp'
6643 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
6644 ;;
6645 esac
db137867 6646
7083c021 6647 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
db137867 6648
7083c021
AC
6649 # Commands to make compiler produce verbose output that lists
6650 # what "hidden" libraries, object files and flags are used when
6651 # linking a shared library.
6652 #
6653 # There doesn't appear to be a way to prevent this compiler from
6654 # explicitly linking system object files so we need to strip them
6655 # from the output so that they don't get included in the library
6656 # dependencies.
b6d0720c 6657 output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
7083c021
AC
6658 ;;
6659 *)
6660 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6661 _LT_TAGVAR(allow_undefined_flag, $1)=' ${wl}-expect_unresolved ${wl}\*'
6662 case $host in
6663 osf3*)
b6d0720c 6664 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
7083c021
AC
6665 ;;
6666 *)
b6d0720c 6667 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
7083c021
AC
6668 ;;
6669 esac
6670
6671 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
6672 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6673
6674 # Commands to make compiler produce verbose output that lists
6675 # what "hidden" libraries, object files and flags are used when
6676 # linking a shared library.
b6d0720c 6677 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7083c021
AC
6678
6679 else
6680 # FIXME: insert proper C++ library support
6681 _LT_TAGVAR(ld_shlibs, $1)=no
6682 fi
6683 ;;
6684 esac
6685 ;;
db137867 6686
7083c021
AC
6687 psos*)
6688 # FIXME: insert proper C++ library support
6689 _LT_TAGVAR(ld_shlibs, $1)=no
6690 ;;
db137867 6691
7083c021
AC
6692 sunos4*)
6693 case $cc_basename in
6694 CC*)
6695 # Sun C++ 4.x
6696 # FIXME: insert proper C++ library support
6697 _LT_TAGVAR(ld_shlibs, $1)=no
6698 ;;
6699 lcc*)
6700 # Lucid
6701 # FIXME: insert proper C++ library support
6702 _LT_TAGVAR(ld_shlibs, $1)=no
6703 ;;
6704 *)
6705 # FIXME: insert proper C++ library support
6706 _LT_TAGVAR(ld_shlibs, $1)=no
6707 ;;
6708 esac
6709 ;;
db137867 6710
7083c021
AC
6711 solaris*)
6712 case $cc_basename in
b6d0720c 6713 CC* | sunCC*)
7083c021
AC
6714 # Sun C++ 4.2, 5.x and Centerline C++
6715 _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
6716 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
6717 _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6718 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6719 $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6720
6721 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
6722 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6723 case $host_os in
6724 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6725 *)
6726 # The compiler driver will combine and reorder linker options,
6727 # but understands `-z linker_flag'.
6728 # Supported since Solaris 2.6 (maybe 2.5.1?)
6729 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
6730 ;;
6731 esac
6732 _LT_TAGVAR(link_all_deplibs, $1)=yes
db137867 6733
b6d0720c 6734 output_verbose_link_cmd='func_echo_all'
db137867 6735
7083c021
AC
6736 # Archives containing C++ object files must be created using
6737 # "CC -xar", where "CC" is the Sun C++ compiler. This is
6738 # necessary to make sure instantiated templates are included
6739 # in the archive.
6740 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
db137867 6741 ;;
7083c021 6742 gcx*)
db137867 6743 # Green Hills C++ Compiler
7083c021
AC
6744 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6745
6746 # The C++ compiler must be used to create the archive.
6747 _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
db137867 6748 ;;
7083c021
AC
6749 *)
6750 # GNU C++ compiler with Solaris linker
6751 if test "$GXX" = yes && test "$with_gnu_ld" = no; then
6752 _LT_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
6753 if $CC --version | $GREP -v '^2\.7' > /dev/null; then
b6d0720c 6754 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
7083c021 6755 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
b6d0720c 6756 $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
7083c021
AC
6757
6758 # Commands to make compiler produce verbose output that lists
6759 # what "hidden" libraries, object files and flags are used when
6760 # linking a shared library.
b6d0720c 6761 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7083c021
AC
6762 else
6763 # g++ 2.7 appears to require `-G' NOT `-shared' on this
6764 # platform.
6765 _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib'
6766 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
6767 $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
6768
6769 # Commands to make compiler produce verbose output that lists
6770 # what "hidden" libraries, object files and flags are used when
6771 # linking a shared library.
b6d0720c 6772 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7083c021
AC
6773 fi
6774
6775 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
6776 case $host_os in
6777 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
6778 *)
6779 _LT_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
6780 ;;
6781 esac
db137867
AC
6782 fi
6783 ;;
7083c021
AC
6784 esac
6785 ;;
6786
6787 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6788 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6789 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6790 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6791 runpath_var='LD_RUN_PATH'
6792
6793 case $cc_basename in
6794 CC*)
6795 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6796 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6797 ;;
6798 *)
6799 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6800 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6801 ;;
6802 esac
6803 ;;
6804
6805 sysv5* | sco3.2v5* | sco5v6*)
6806 # Note: We can NOT use -z defs as we might desire, because we do not
6807 # link with -lc, and that would cause any symbols used from libc to
6808 # always be unresolved, which means just about no library would
6809 # ever link correctly. If we're not using GNU ld we use -z text
6810 # though, which does catch some bad symbols but isn't as heavy-handed
6811 # as -z defs.
6812 _LT_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
6813 _LT_TAGVAR(allow_undefined_flag, $1)='${wl}-z,nodefs'
6814 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6815 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6816 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R,$libdir'
6817 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6818 _LT_TAGVAR(link_all_deplibs, $1)=yes
6819 _LT_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-Bexport'
6820 runpath_var='LD_RUN_PATH'
6821
db137867 6822 case $cc_basename in
7083c021
AC
6823 CC*)
6824 _LT_TAGVAR(archive_cmds, $1)='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6825 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
b6d0720c
AC
6826 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
6827 '"$_LT_TAGVAR(old_archive_cmds, $1)"
6828 _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
6829 '"$_LT_TAGVAR(reload_cmds, $1)"
db137867
AC
6830 ;;
6831 *)
7083c021
AC
6832 _LT_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6833 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
db137867
AC
6834 ;;
6835 esac
7083c021
AC
6836 ;;
6837
db137867 6838 tandem*)
7083c021
AC
6839 case $cc_basename in
6840 NCC*)
db137867 6841 # NonStop-UX NCC 3.20
7083c021
AC
6842 # FIXME: insert proper C++ library support
6843 _LT_TAGVAR(ld_shlibs, $1)=no
db137867 6844 ;;
7083c021
AC
6845 *)
6846 # FIXME: insert proper C++ library support
6847 _LT_TAGVAR(ld_shlibs, $1)=no
db137867 6848 ;;
7083c021
AC
6849 esac
6850 ;;
6851
db137867 6852 vxworks*)
7083c021
AC
6853 # FIXME: insert proper C++ library support
6854 _LT_TAGVAR(ld_shlibs, $1)=no
6855 ;;
6856
6857 *)
6858 # FIXME: insert proper C++ library support
6859 _LT_TAGVAR(ld_shlibs, $1)=no
6860 ;;
db137867 6861 esac
7083c021
AC
6862
6863 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6864 test "$_LT_TAGVAR(ld_shlibs, $1)" = no && can_build_shared=no
6865
6866 _LT_TAGVAR(GCC, $1)="$GXX"
6867 _LT_TAGVAR(LD, $1)="$LD"
6868
6869 ## CAVEAT EMPTOR:
6870 ## There is no encapsulation within the following macros, do not change
6871 ## the running order or otherwise move them around unless you know exactly
6872 ## what you are doing...
6873 _LT_SYS_HIDDEN_LIBDEPS($1)
6874 _LT_COMPILER_PIC($1)
6875 _LT_COMPILER_C_O($1)
6876 _LT_COMPILER_FILE_LOCKS($1)
6877 _LT_LINKER_SHLIBS($1)
6878 _LT_SYS_DYNAMIC_LINKER($1)
6879 _LT_LINKER_HARDCODE_LIBPATH($1)
6880
6881 _LT_CONFIG($1)
6882 fi # test -n "$compiler"
6883
6884 CC=$lt_save_CC
b6d0720c 6885 CFLAGS=$lt_save_CFLAGS
7083c021
AC
6886 LDCXX=$LD
6887 LD=$lt_save_LD
6888 GCC=$lt_save_GCC
6889 with_gnu_ld=$lt_save_with_gnu_ld
6890 lt_cv_path_LDCXX=$lt_cv_path_LD
6891 lt_cv_path_LD=$lt_save_path_LD
6892 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
6893 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
6894fi # test "$_lt_caught_CXX_error" != yes
6895
6896AC_LANG_POP
6897])# _LT_LANG_CXX_CONFIG
6898
6899
b6d0720c
AC
6900# _LT_FUNC_STRIPNAME_CNF
6901# ----------------------
6902# func_stripname_cnf prefix suffix name
6903# strip PREFIX and SUFFIX off of NAME.
6904# PREFIX and SUFFIX must not contain globbing or regex special
6905# characters, hashes, percent signs, but SUFFIX may contain a leading
6906# dot (in which case that matches only a dot).
6907#
6908# This function is identical to the (non-XSI) version of func_stripname,
6909# except this one can be used by m4 code that may be executed by configure,
6910# rather than the libtool script.
6911m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
6912AC_REQUIRE([_LT_DECL_SED])
6913AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
6914func_stripname_cnf ()
6915{
6916 case ${2} in
6917 .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;;
6918 *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;;
6919 esac
6920} # func_stripname_cnf
6921])# _LT_FUNC_STRIPNAME_CNF
6922
7083c021
AC
6923# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
6924# ---------------------------------
6925# Figure out "hidden" library dependencies from verbose
6926# compiler output when linking a shared library.
6927# Parse the compiler output and extract the necessary
6928# objects, libraries and library flags.
6929m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
6930[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
b6d0720c 6931AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
7083c021
AC
6932# Dependencies to place before and after the object being linked:
6933_LT_TAGVAR(predep_objects, $1)=
6934_LT_TAGVAR(postdep_objects, $1)=
6935_LT_TAGVAR(predeps, $1)=
6936_LT_TAGVAR(postdeps, $1)=
6937_LT_TAGVAR(compiler_lib_search_path, $1)=
6938
6939dnl we can't use the lt_simple_compile_test_code here,
6940dnl because it contains code intended for an executable,
6941dnl not a library. It's possible we should let each
6942dnl tag define a new lt_????_link_test_code variable,
6943dnl but it's only used here...
6944m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
6945int a;
6946void foo (void) { a = 0; }
6947_LT_EOF
6948], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
6949class Foo
6950{
6951public:
6952 Foo (void) { a = 0; }
6953private:
6954 int a;
6955};
6956_LT_EOF
6957], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
6958 subroutine foo
6959 implicit none
6960 integer*4 a
6961 a=0
6962 return
6963 end
6964_LT_EOF
6965], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
6966 subroutine foo
6967 implicit none
6968 integer a
6969 a=0
6970 return
6971 end
6972_LT_EOF
6973], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
6974public class foo {
6975 private int a;
6976 public void bar (void) {
6977 a = 0;
6978 }
6979};
6980_LT_EOF
a949ab1a
AC
6981], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
6982package foo
6983func foo() {
6984}
6985_LT_EOF
7083c021 6986])
b6d0720c
AC
6987
6988_lt_libdeps_save_CFLAGS=$CFLAGS
6989case "$CC $CFLAGS " in #(
6990*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
6991*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
a949ab1a 6992*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
b6d0720c
AC
6993esac
6994
7083c021
AC
6995dnl Parse the compiler output and extract the necessary
6996dnl objects, libraries and library flags.
6997if AC_TRY_EVAL(ac_compile); then
6998 # Parse the compiler output and extract the necessary
6999 # objects, libraries and library flags.
7000
7001 # Sentinel used to keep track of whether or not we are before
7002 # the conftest object file.
7003 pre_test_object_deps_done=no
7004
7005 for p in `eval "$output_verbose_link_cmd"`; do
b6d0720c 7006 case ${prev}${p} in
7083c021
AC
7007
7008 -L* | -R* | -l*)
7009 # Some compilers place space between "-{L,R}" and the path.
7010 # Remove the space.
7011 if test $p = "-L" ||
7012 test $p = "-R"; then
7013 prev=$p
7014 continue
7083c021
AC
7015 fi
7016
b6d0720c
AC
7017 # Expand the sysroot to ease extracting the directories later.
7018 if test -z "$prev"; then
7019 case $p in
7020 -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
7021 -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
7022 -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
7023 esac
7024 fi
7025 case $p in
7026 =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
7027 esac
7083c021 7028 if test "$pre_test_object_deps_done" = no; then
b6d0720c
AC
7029 case ${prev} in
7030 -L | -R)
7083c021
AC
7031 # Internal compiler library paths should come after those
7032 # provided the user. The postdeps already come after the
7033 # user supplied libs so there is no need to process them.
7034 if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
7035 _LT_TAGVAR(compiler_lib_search_path, $1)="${prev}${p}"
7036 else
7037 _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} ${prev}${p}"
7038 fi
7039 ;;
7040 # The "-l" case would never come before the object being
7041 # linked, so don't bother handling this case.
7042 esac
7043 else
7044 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
7045 _LT_TAGVAR(postdeps, $1)="${prev}${p}"
7046 else
7047 _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} ${prev}${p}"
7048 fi
7049 fi
b6d0720c 7050 prev=
7083c021
AC
7051 ;;
7052
b6d0720c 7053 *.lto.$objext) ;; # Ignore GCC LTO objects
7083c021
AC
7054 *.$objext)
7055 # This assumes that the test object file only shows up
7056 # once in the compiler output.
7057 if test "$p" = "conftest.$objext"; then
7058 pre_test_object_deps_done=yes
7059 continue
7060 fi
7061
7062 if test "$pre_test_object_deps_done" = no; then
7063 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
7064 _LT_TAGVAR(predep_objects, $1)="$p"
7065 else
7066 _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
7067 fi
7068 else
7069 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
7070 _LT_TAGVAR(postdep_objects, $1)="$p"
7071 else
7072 _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
7073 fi
7074 fi
7075 ;;
7076
7077 *) ;; # Ignore the rest.
7078
7079 esac
7080 done
7081
7082 # Clean up.
7083 rm -f a.out a.exe
7084else
7085 echo "libtool.m4: error: problem compiling $1 test program"
7086fi
7087
7088$RM -f confest.$objext
b6d0720c 7089CFLAGS=$_lt_libdeps_save_CFLAGS
7083c021
AC
7090
7091# PORTME: override above test on systems where it is broken
7092m4_if([$1], [CXX],
7093[case $host_os in
7094interix[[3-9]]*)
7095 # Interix 3.5 installs completely hosed .la files for C++, so rather than
7096 # hack all around it, let's just trust "g++" to DTRT.
7097 _LT_TAGVAR(predep_objects,$1)=
7098 _LT_TAGVAR(postdep_objects,$1)=
7099 _LT_TAGVAR(postdeps,$1)=
7100 ;;
7101
7102linux*)
7103 case `$CC -V 2>&1 | sed 5q` in
7104 *Sun\ C*)
7105 # Sun C++ 5.9
7106
7107 # The more standards-conforming stlport4 library is
7108 # incompatible with the Cstd library. Avoid specifying
7109 # it if it's in CXXFLAGS. Ignore libCrun as
7110 # -library=stlport4 depends on it.
7111 case " $CXX $CXXFLAGS " in
7112 *" -library=stlport4 "*)
7113 solaris_use_stlport4=yes
7114 ;;
7115 esac
7116
7117 if test "$solaris_use_stlport4" != yes; then
7118 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
7119 fi
7120 ;;
7121 esac
7122 ;;
7123
7124solaris*)
7125 case $cc_basename in
b6d0720c 7126 CC* | sunCC*)
7083c021
AC
7127 # The more standards-conforming stlport4 library is
7128 # incompatible with the Cstd library. Avoid specifying
7129 # it if it's in CXXFLAGS. Ignore libCrun as
7130 # -library=stlport4 depends on it.
7131 case " $CXX $CXXFLAGS " in
7132 *" -library=stlport4 "*)
7133 solaris_use_stlport4=yes
7134 ;;
7135 esac
7136
7137 # Adding this requires a known-good setup of shared libraries for
7138 # Sun compiler versions before 5.6, else PIC objects from an old
7139 # archive will be linked into the output, leading to subtle bugs.
7140 if test "$solaris_use_stlport4" != yes; then
7141 _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
7142 fi
7143 ;;
7144 esac
7145 ;;
7146esac
7147])
7148
7149case " $_LT_TAGVAR(postdeps, $1) " in
7150*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
7151esac
7152 _LT_TAGVAR(compiler_lib_search_dirs, $1)=
7153if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
7154 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | ${SED} -e 's! -L! !g' -e 's!^ !!'`
7155fi
7156_LT_TAGDECL([], [compiler_lib_search_dirs], [1],
7157 [The directories searched by this compiler when creating a shared library])
7158_LT_TAGDECL([], [predep_objects], [1],
7159 [Dependencies to place before and after the objects being linked to
7160 create a shared library])
7161_LT_TAGDECL([], [postdep_objects], [1])
7162_LT_TAGDECL([], [predeps], [1])
7163_LT_TAGDECL([], [postdeps], [1])
7164_LT_TAGDECL([], [compiler_lib_search_path], [1],
7165 [The library search path used internally by the compiler when linking
7166 a shared library])
7167])# _LT_SYS_HIDDEN_LIBDEPS
7168
7169
7083c021
AC
7170# _LT_LANG_F77_CONFIG([TAG])
7171# --------------------------
7172# Ensure that the configuration variables for a Fortran 77 compiler are
7173# suitably defined. These variables are subsequently used by _LT_CONFIG
7174# to write the compiler configuration to `libtool'.
7175m4_defun([_LT_LANG_F77_CONFIG],
b6d0720c
AC
7176[AC_LANG_PUSH(Fortran 77)
7177if test -z "$F77" || test "X$F77" = "Xno"; then
7178 _lt_disable_F77=yes
7179fi
7083c021
AC
7180
7181_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7182_LT_TAGVAR(allow_undefined_flag, $1)=
7183_LT_TAGVAR(always_export_symbols, $1)=no
7184_LT_TAGVAR(archive_expsym_cmds, $1)=
7185_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7186_LT_TAGVAR(hardcode_direct, $1)=no
7187_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7188_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7083c021
AC
7189_LT_TAGVAR(hardcode_libdir_separator, $1)=
7190_LT_TAGVAR(hardcode_minus_L, $1)=no
7191_LT_TAGVAR(hardcode_automatic, $1)=no
7192_LT_TAGVAR(inherit_rpath, $1)=no
7193_LT_TAGVAR(module_cmds, $1)=
7194_LT_TAGVAR(module_expsym_cmds, $1)=
7195_LT_TAGVAR(link_all_deplibs, $1)=unknown
7196_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
b6d0720c
AC
7197_LT_TAGVAR(reload_flag, $1)=$reload_flag
7198_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7083c021
AC
7199_LT_TAGVAR(no_undefined_flag, $1)=
7200_LT_TAGVAR(whole_archive_flag_spec, $1)=
7201_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7202
7203# Source file extension for f77 test sources.
7204ac_ext=f
7205
7206# Object file extension for compiled f77 test sources.
7207objext=o
7208_LT_TAGVAR(objext, $1)=$objext
7209
7210# No sense in running all these tests if we already determined that
7211# the F77 compiler isn't working. Some variables (like enable_shared)
7212# are currently assumed to apply to all compilers on this platform,
7213# and will be corrupted by setting them based on a non-working compiler.
7214if test "$_lt_disable_F77" != yes; then
7215 # Code to be used in simple compile tests
7216 lt_simple_compile_test_code="\
7217 subroutine t
7218 return
7219 end
7220"
7221
7222 # Code to be used in simple link tests
7223 lt_simple_link_test_code="\
7224 program t
7225 end
7226"
7227
7228 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7229 _LT_TAG_COMPILER
7230
7231 # save warnings/boilerplate of simple test code
7232 _LT_COMPILER_BOILERPLATE
7233 _LT_LINKER_BOILERPLATE
db137867 7234
7083c021
AC
7235 # Allow CC to be a program name with arguments.
7236 lt_save_CC="$CC"
7237 lt_save_GCC=$GCC
b6d0720c 7238 lt_save_CFLAGS=$CFLAGS
7083c021 7239 CC=${F77-"f77"}
b6d0720c 7240 CFLAGS=$FFLAGS
7083c021
AC
7241 compiler=$CC
7242 _LT_TAGVAR(compiler, $1)=$CC
7243 _LT_CC_BASENAME([$compiler])
7244 GCC=$G77
7245 if test -n "$compiler"; then
7246 AC_MSG_CHECKING([if libtool supports shared libraries])
7247 AC_MSG_RESULT([$can_build_shared])
7248
7249 AC_MSG_CHECKING([whether to build shared libraries])
7250 test "$can_build_shared" = "no" && enable_shared=no
7251
7252 # On AIX, shared libraries and static libraries use the same namespace, and
7253 # are all built from PIC.
db137867 7254 case $host_os in
7083c021
AC
7255 aix3*)
7256 test "$enable_shared" = yes && enable_static=no
7257 if test -n "$RANLIB"; then
7258 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7259 postinstall_cmds='$RANLIB $lib'
7260 fi
7261 ;;
7262 aix[[4-9]]*)
7263 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
7264 test "$enable_shared" = yes && enable_static=no
7265 fi
7266 ;;
7267 esac
7268 AC_MSG_RESULT([$enable_shared])
7269
7270 AC_MSG_CHECKING([whether to build static libraries])
7271 # Make sure either enable_shared or enable_static is yes.
7272 test "$enable_shared" = yes || enable_static=yes
7273 AC_MSG_RESULT([$enable_static])
7274
7275 _LT_TAGVAR(GCC, $1)="$G77"
7276 _LT_TAGVAR(LD, $1)="$LD"
7277
7278 ## CAVEAT EMPTOR:
7279 ## There is no encapsulation within the following macros, do not change
7280 ## the running order or otherwise move them around unless you know exactly
7281 ## what you are doing...
7282 _LT_COMPILER_PIC($1)
7283 _LT_COMPILER_C_O($1)
7284 _LT_COMPILER_FILE_LOCKS($1)
7285 _LT_LINKER_SHLIBS($1)
7286 _LT_SYS_DYNAMIC_LINKER($1)
7287 _LT_LINKER_HARDCODE_LIBPATH($1)
7288
7289 _LT_CONFIG($1)
7290 fi # test -n "$compiler"
7291
7292 GCC=$lt_save_GCC
7293 CC="$lt_save_CC"
b6d0720c 7294 CFLAGS="$lt_save_CFLAGS"
7083c021
AC
7295fi # test "$_lt_disable_F77" != yes
7296
7297AC_LANG_POP
7298])# _LT_LANG_F77_CONFIG
7299
7300
7083c021
AC
7301# _LT_LANG_FC_CONFIG([TAG])
7302# -------------------------
7303# Ensure that the configuration variables for a Fortran compiler are
7304# suitably defined. These variables are subsequently used by _LT_CONFIG
7305# to write the compiler configuration to `libtool'.
7306m4_defun([_LT_LANG_FC_CONFIG],
b6d0720c
AC
7307[AC_LANG_PUSH(Fortran)
7308
7309if test -z "$FC" || test "X$FC" = "Xno"; then
7310 _lt_disable_FC=yes
7311fi
7083c021
AC
7312
7313_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7314_LT_TAGVAR(allow_undefined_flag, $1)=
7315_LT_TAGVAR(always_export_symbols, $1)=no
7316_LT_TAGVAR(archive_expsym_cmds, $1)=
7317_LT_TAGVAR(export_dynamic_flag_spec, $1)=
7318_LT_TAGVAR(hardcode_direct, $1)=no
7319_LT_TAGVAR(hardcode_direct_absolute, $1)=no
7320_LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7083c021
AC
7321_LT_TAGVAR(hardcode_libdir_separator, $1)=
7322_LT_TAGVAR(hardcode_minus_L, $1)=no
7323_LT_TAGVAR(hardcode_automatic, $1)=no
7324_LT_TAGVAR(inherit_rpath, $1)=no
7325_LT_TAGVAR(module_cmds, $1)=
7326_LT_TAGVAR(module_expsym_cmds, $1)=
7327_LT_TAGVAR(link_all_deplibs, $1)=unknown
7328_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
b6d0720c
AC
7329_LT_TAGVAR(reload_flag, $1)=$reload_flag
7330_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7083c021
AC
7331_LT_TAGVAR(no_undefined_flag, $1)=
7332_LT_TAGVAR(whole_archive_flag_spec, $1)=
7333_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7334
7335# Source file extension for fc test sources.
7336ac_ext=${ac_fc_srcext-f}
7337
7338# Object file extension for compiled fc test sources.
7339objext=o
7340_LT_TAGVAR(objext, $1)=$objext
7341
7342# No sense in running all these tests if we already determined that
7343# the FC compiler isn't working. Some variables (like enable_shared)
7344# are currently assumed to apply to all compilers on this platform,
7345# and will be corrupted by setting them based on a non-working compiler.
7346if test "$_lt_disable_FC" != yes; then
7347 # Code to be used in simple compile tests
7348 lt_simple_compile_test_code="\
7349 subroutine t
7350 return
7351 end
7352"
7353
7354 # Code to be used in simple link tests
7355 lt_simple_link_test_code="\
7356 program t
7357 end
7358"
7359
7360 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7361 _LT_TAG_COMPILER
7362
7363 # save warnings/boilerplate of simple test code
7364 _LT_COMPILER_BOILERPLATE
7365 _LT_LINKER_BOILERPLATE
7366
7367 # Allow CC to be a program name with arguments.
7368 lt_save_CC="$CC"
7369 lt_save_GCC=$GCC
b6d0720c 7370 lt_save_CFLAGS=$CFLAGS
7083c021 7371 CC=${FC-"f95"}
b6d0720c 7372 CFLAGS=$FCFLAGS
7083c021
AC
7373 compiler=$CC
7374 GCC=$ac_cv_fc_compiler_gnu
7375
7376 _LT_TAGVAR(compiler, $1)=$CC
7377 _LT_CC_BASENAME([$compiler])
7378
7379 if test -n "$compiler"; then
7380 AC_MSG_CHECKING([if libtool supports shared libraries])
7381 AC_MSG_RESULT([$can_build_shared])
7382
7383 AC_MSG_CHECKING([whether to build shared libraries])
7384 test "$can_build_shared" = "no" && enable_shared=no
7385
7386 # On AIX, shared libraries and static libraries use the same namespace, and
7387 # are all built from PIC.
7388 case $host_os in
7389 aix3*)
7390 test "$enable_shared" = yes && enable_static=no
7391 if test -n "$RANLIB"; then
7392 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7393 postinstall_cmds='$RANLIB $lib'
7394 fi
7395 ;;
7396 aix[[4-9]]*)
7397 if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
7398 test "$enable_shared" = yes && enable_static=no
7399 fi
7400 ;;
7401 esac
7402 AC_MSG_RESULT([$enable_shared])
7403
7404 AC_MSG_CHECKING([whether to build static libraries])
7405 # Make sure either enable_shared or enable_static is yes.
7406 test "$enable_shared" = yes || enable_static=yes
7407 AC_MSG_RESULT([$enable_static])
7408
7409 _LT_TAGVAR(GCC, $1)="$ac_cv_fc_compiler_gnu"
7410 _LT_TAGVAR(LD, $1)="$LD"
7411
7412 ## CAVEAT EMPTOR:
7413 ## There is no encapsulation within the following macros, do not change
7414 ## the running order or otherwise move them around unless you know exactly
7415 ## what you are doing...
7416 _LT_SYS_HIDDEN_LIBDEPS($1)
7417 _LT_COMPILER_PIC($1)
7418 _LT_COMPILER_C_O($1)
7419 _LT_COMPILER_FILE_LOCKS($1)
7420 _LT_LINKER_SHLIBS($1)
7421 _LT_SYS_DYNAMIC_LINKER($1)
7422 _LT_LINKER_HARDCODE_LIBPATH($1)
7423
7424 _LT_CONFIG($1)
7425 fi # test -n "$compiler"
7426
7427 GCC=$lt_save_GCC
b6d0720c
AC
7428 CC=$lt_save_CC
7429 CFLAGS=$lt_save_CFLAGS
7083c021
AC
7430fi # test "$_lt_disable_FC" != yes
7431
7432AC_LANG_POP
7433])# _LT_LANG_FC_CONFIG
7434
7435
7436# _LT_LANG_GCJ_CONFIG([TAG])
7437# --------------------------
7438# Ensure that the configuration variables for the GNU Java Compiler compiler
7439# are suitably defined. These variables are subsequently used by _LT_CONFIG
7440# to write the compiler configuration to `libtool'.
7441m4_defun([_LT_LANG_GCJ_CONFIG],
7442[AC_REQUIRE([LT_PROG_GCJ])dnl
7443AC_LANG_SAVE
7444
7445# Source file extension for Java test sources.
7446ac_ext=java
7447
7448# Object file extension for compiled Java test sources.
7449objext=o
7450_LT_TAGVAR(objext, $1)=$objext
7451
7452# Code to be used in simple compile tests
7453lt_simple_compile_test_code="class foo {}"
7454
7455# Code to be used in simple link tests
7456lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
7457
7458# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7459_LT_TAG_COMPILER
7460
7461# save warnings/boilerplate of simple test code
7462_LT_COMPILER_BOILERPLATE
7463_LT_LINKER_BOILERPLATE
7464
7465# Allow CC to be a program name with arguments.
b6d0720c
AC
7466lt_save_CC=$CC
7467lt_save_CFLAGS=$CFLAGS
7083c021
AC
7468lt_save_GCC=$GCC
7469GCC=yes
7470CC=${GCJ-"gcj"}
b6d0720c 7471CFLAGS=$GCJFLAGS
7083c021
AC
7472compiler=$CC
7473_LT_TAGVAR(compiler, $1)=$CC
7474_LT_TAGVAR(LD, $1)="$LD"
7475_LT_CC_BASENAME([$compiler])
7476
7477# GCJ did not exist at the time GCC didn't implicitly link libc in.
7478_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7479
7480_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
b6d0720c
AC
7481_LT_TAGVAR(reload_flag, $1)=$reload_flag
7482_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7083c021
AC
7483
7484if test -n "$compiler"; then
7485 _LT_COMPILER_NO_RTTI($1)
7486 _LT_COMPILER_PIC($1)
7487 _LT_COMPILER_C_O($1)
7488 _LT_COMPILER_FILE_LOCKS($1)
7489 _LT_LINKER_SHLIBS($1)
7490 _LT_LINKER_HARDCODE_LIBPATH($1)
7491
7492 _LT_CONFIG($1)
7493fi
7494
7495AC_LANG_RESTORE
7496
7497GCC=$lt_save_GCC
b6d0720c
AC
7498CC=$lt_save_CC
7499CFLAGS=$lt_save_CFLAGS
7083c021 7500])# _LT_LANG_GCJ_CONFIG
db137867 7501
db137867 7502
a949ab1a
AC
7503# _LT_LANG_GO_CONFIG([TAG])
7504# --------------------------
7505# Ensure that the configuration variables for the GNU Go compiler
7506# are suitably defined. These variables are subsequently used by _LT_CONFIG
7507# to write the compiler configuration to `libtool'.
7508m4_defun([_LT_LANG_GO_CONFIG],
7509[AC_REQUIRE([LT_PROG_GO])dnl
7510AC_LANG_SAVE
7511
7512# Source file extension for Go test sources.
7513ac_ext=go
7514
7515# Object file extension for compiled Go test sources.
7516objext=o
7517_LT_TAGVAR(objext, $1)=$objext
7518
7519# Code to be used in simple compile tests
7520lt_simple_compile_test_code="package main; func main() { }"
7521
7522# Code to be used in simple link tests
7523lt_simple_link_test_code='package main; func main() { }'
7524
7525# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7526_LT_TAG_COMPILER
7527
7528# save warnings/boilerplate of simple test code
7529_LT_COMPILER_BOILERPLATE
7530_LT_LINKER_BOILERPLATE
7531
7532# Allow CC to be a program name with arguments.
7533lt_save_CC=$CC
7534lt_save_CFLAGS=$CFLAGS
7535lt_save_GCC=$GCC
7536GCC=yes
7537CC=${GOC-"gccgo"}
7538CFLAGS=$GOFLAGS
7539compiler=$CC
7540_LT_TAGVAR(compiler, $1)=$CC
7541_LT_TAGVAR(LD, $1)="$LD"
7542_LT_CC_BASENAME([$compiler])
7543
7544# Go did not exist at the time GCC didn't implicitly link libc in.
7545_LT_TAGVAR(archive_cmds_need_lc, $1)=no
7546
7547_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7548_LT_TAGVAR(reload_flag, $1)=$reload_flag
7549_LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7550
7551if test -n "$compiler"; then
7552 _LT_COMPILER_NO_RTTI($1)
7553 _LT_COMPILER_PIC($1)
7554 _LT_COMPILER_C_O($1)
7555 _LT_COMPILER_FILE_LOCKS($1)
7556 _LT_LINKER_SHLIBS($1)
7557 _LT_LINKER_HARDCODE_LIBPATH($1)
7558
7559 _LT_CONFIG($1)
7560fi
7561
7562AC_LANG_RESTORE
7563
7564GCC=$lt_save_GCC
7565CC=$lt_save_CC
7566CFLAGS=$lt_save_CFLAGS
7567])# _LT_LANG_GO_CONFIG
7568
7569
7083c021
AC
7570# _LT_LANG_RC_CONFIG([TAG])
7571# -------------------------
7572# Ensure that the configuration variables for the Windows resource compiler
7573# are suitably defined. These variables are subsequently used by _LT_CONFIG
7574# to write the compiler configuration to `libtool'.
7575m4_defun([_LT_LANG_RC_CONFIG],
7576[AC_REQUIRE([LT_PROG_RC])dnl
7577AC_LANG_SAVE
db137867 7578
7083c021
AC
7579# Source file extension for RC test sources.
7580ac_ext=rc
db137867 7581
7083c021
AC
7582# Object file extension for compiled RC test sources.
7583objext=o
7584_LT_TAGVAR(objext, $1)=$objext
db137867 7585
7083c021
AC
7586# Code to be used in simple compile tests
7587lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
db137867 7588
7083c021
AC
7589# Code to be used in simple link tests
7590lt_simple_link_test_code="$lt_simple_compile_test_code"
db137867 7591
7083c021
AC
7592# ltmain only uses $CC for tagged configurations so make sure $CC is set.
7593_LT_TAG_COMPILER
db137867 7594
7083c021
AC
7595# save warnings/boilerplate of simple test code
7596_LT_COMPILER_BOILERPLATE
7597_LT_LINKER_BOILERPLATE
db137867 7598
7083c021
AC
7599# Allow CC to be a program name with arguments.
7600lt_save_CC="$CC"
b6d0720c 7601lt_save_CFLAGS=$CFLAGS
7083c021
AC
7602lt_save_GCC=$GCC
7603GCC=
7604CC=${RC-"windres"}
b6d0720c 7605CFLAGS=
7083c021
AC
7606compiler=$CC
7607_LT_TAGVAR(compiler, $1)=$CC
7608_LT_CC_BASENAME([$compiler])
7609_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
db137867 7610
7083c021
AC
7611if test -n "$compiler"; then
7612 :
7613 _LT_CONFIG($1)
7614fi
db137867 7615
7083c021
AC
7616GCC=$lt_save_GCC
7617AC_LANG_RESTORE
b6d0720c
AC
7618CC=$lt_save_CC
7619CFLAGS=$lt_save_CFLAGS
7083c021 7620])# _LT_LANG_RC_CONFIG
db137867 7621
db137867 7622
7083c021
AC
7623# LT_PROG_GCJ
7624# -----------
7625AC_DEFUN([LT_PROG_GCJ],
7626[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
7627 [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
7628 [AC_CHECK_TOOL(GCJ, gcj,)
7629 test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
7630 AC_SUBST(GCJFLAGS)])])[]dnl
7631])
db137867 7632
7083c021
AC
7633# Old name:
7634AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
7635dnl aclocal-1.4 backwards compatibility:
7636dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
db137867 7637
db137867 7638
a949ab1a
AC
7639# LT_PROG_GO
7640# ----------
7641AC_DEFUN([LT_PROG_GO],
7642[AC_CHECK_TOOL(GOC, gccgo,)
7643])
7644
7645
7083c021
AC
7646# LT_PROG_RC
7647# ----------
7648AC_DEFUN([LT_PROG_RC],
7649[AC_CHECK_TOOL(RC, windres,)
7650])
db137867 7651
7083c021
AC
7652# Old name:
7653AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
7654dnl aclocal-1.4 backwards compatibility:
7655dnl AC_DEFUN([LT_AC_PROG_RC], [])
db137867 7656
db137867 7657
7083c021
AC
7658# _LT_DECL_EGREP
7659# --------------
7660# If we don't have a new enough Autoconf to choose the best grep
7661# available, choose the one first in the user's PATH.
7662m4_defun([_LT_DECL_EGREP],
7663[AC_REQUIRE([AC_PROG_EGREP])dnl
7664AC_REQUIRE([AC_PROG_FGREP])dnl
7665test -z "$GREP" && GREP=grep
7666_LT_DECL([], [GREP], [1], [A grep program that handles long lines])
7667_LT_DECL([], [EGREP], [1], [An ERE matcher])
7668_LT_DECL([], [FGREP], [1], [A literal string matcher])
7669dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
7670AC_SUBST([GREP])
7671])
db137867 7672
db137867 7673
7083c021
AC
7674# _LT_DECL_OBJDUMP
7675# --------------
7676# If we don't have a new enough Autoconf to choose the best objdump
7677# available, choose the one first in the user's PATH.
7678m4_defun([_LT_DECL_OBJDUMP],
7679[AC_CHECK_TOOL(OBJDUMP, objdump, false)
7680test -z "$OBJDUMP" && OBJDUMP=objdump
7681_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
7682AC_SUBST([OBJDUMP])
7683])
db137867 7684
b6d0720c
AC
7685# _LT_DECL_DLLTOOL
7686# ----------------
7687# Ensure DLLTOOL variable is set.
7688m4_defun([_LT_DECL_DLLTOOL],
7689[AC_CHECK_TOOL(DLLTOOL, dlltool, false)
7690test -z "$DLLTOOL" && DLLTOOL=dlltool
7691_LT_DECL([], [DLLTOOL], [1], [DLL creation program])
7692AC_SUBST([DLLTOOL])
7693])
db137867 7694
7083c021
AC
7695# _LT_DECL_SED
7696# ------------
7697# Check for a fully-functional sed program, that truncates
7698# as few characters as possible. Prefer GNU sed if found.
7699m4_defun([_LT_DECL_SED],
7700[AC_PROG_SED
7701test -z "$SED" && SED=sed
7702Xsed="$SED -e 1s/^X//"
7703_LT_DECL([], [SED], [1], [A sed program that does not truncate output])
7704_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
7705 [Sed that helps us avoid accidentally triggering echo(1) options like -n])
7706])# _LT_DECL_SED
db137867 7707
7083c021
AC
7708m4_ifndef([AC_PROG_SED], [
7709# NOTE: This macro has been submitted for inclusion into #
7710# GNU Autoconf as AC_PROG_SED. When it is available in #
7711# a released version of Autoconf we should remove this #
7712# macro and use it instead. #
7713
7714m4_defun([AC_PROG_SED],
7715[AC_MSG_CHECKING([for a sed that does not truncate output])
7716AC_CACHE_VAL(lt_cv_path_SED,
7717[# Loop through the user's path and test for sed and gsed.
7718# Then use that list of sed's as ones to test for truncation.
7719as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7720for as_dir in $PATH
7721do
7722 IFS=$as_save_IFS
7723 test -z "$as_dir" && as_dir=.
7724 for lt_ac_prog in sed gsed; do
7725 for ac_exec_ext in '' $ac_executable_extensions; do
7726 if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
7727 lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
7728 fi
7729 done
7730 done
7731done
7732IFS=$as_save_IFS
7733lt_ac_max=0
7734lt_ac_count=0
7735# Add /usr/xpg4/bin/sed as it is typically found on Solaris
7736# along with /bin/sed that truncates output.
7737for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
7738 test ! -f $lt_ac_sed && continue
7739 cat /dev/null > conftest.in
7740 lt_ac_count=0
7741 echo $ECHO_N "0123456789$ECHO_C" >conftest.in
7742 # Check for GNU sed and select it if it is found.
7743 if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
7744 lt_cv_path_SED=$lt_ac_sed
7745 break
db137867 7746 fi
7083c021
AC
7747 while true; do
7748 cat conftest.in conftest.in >conftest.tmp
7749 mv conftest.tmp conftest.in
7750 cp conftest.in conftest.nl
7751 echo >>conftest.nl
7752 $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
7753 cmp -s conftest.out conftest.nl || break
7754 # 10000 chars as input seems more than enough
7755 test $lt_ac_count -gt 10 && break
7756 lt_ac_count=`expr $lt_ac_count + 1`
7757 if test $lt_ac_count -gt $lt_ac_max; then
7758 lt_ac_max=$lt_ac_count
7759 lt_cv_path_SED=$lt_ac_sed
7760 fi
7761 done
7762done
db137867 7763])
7083c021
AC
7764SED=$lt_cv_path_SED
7765AC_SUBST([SED])
7766AC_MSG_RESULT([$SED])
7767])#AC_PROG_SED
7768])#m4_ifndef
7769
7770# Old name:
7771AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
7772dnl aclocal-1.4 backwards compatibility:
7773dnl AC_DEFUN([LT_AC_PROG_SED], [])
7774
7775
7776# _LT_CHECK_SHELL_FEATURES
7777# ------------------------
7778# Find out whether the shell is Bourne or XSI compatible,
7779# or has some other useful features.
7780m4_defun([_LT_CHECK_SHELL_FEATURES],
7781[AC_MSG_CHECKING([whether the shell understands some XSI constructs])
7782# Try some XSI features
7783xsi_shell=no
7784( _lt_dummy="a/b/c"
b6d0720c
AC
7785 test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \
7786 = c,a/b,b/c, \
7083c021
AC
7787 && eval 'test $(( 1 + 1 )) -eq 2 \
7788 && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \
7789 && xsi_shell=yes
7790AC_MSG_RESULT([$xsi_shell])
7791_LT_CONFIG_LIBTOOL_INIT([xsi_shell='$xsi_shell'])
7792
7793AC_MSG_CHECKING([whether the shell understands "+="])
7794lt_shell_append=no
7795( foo=bar; set foo baz; eval "$[1]+=\$[2]" && test "$foo" = barbaz ) \
7796 >/dev/null 2>&1 \
7797 && lt_shell_append=yes
7798AC_MSG_RESULT([$lt_shell_append])
7799_LT_CONFIG_LIBTOOL_INIT([lt_shell_append='$lt_shell_append'])
7800
7801if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
7802 lt_unset=unset
7803else
7804 lt_unset=false
7805fi
7806_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
7807
7808# test EBCDIC or ASCII
7809case `echo X|tr X '\101'` in
7810 A) # ASCII based system
7811 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
7812 lt_SP2NL='tr \040 \012'
7813 lt_NL2SP='tr \015\012 \040\040'
7814 ;;
7815 *) # EBCDIC based system
7816 lt_SP2NL='tr \100 \n'
7817 lt_NL2SP='tr \r\n \100\100'
7818 ;;
7819esac
7820_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
7821_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
7822])# _LT_CHECK_SHELL_FEATURES
7823
7824
b6d0720c
AC
7825# _LT_PROG_FUNCTION_REPLACE (FUNCNAME, REPLACEMENT-BODY)
7826# ------------------------------------------------------
7827# In `$cfgfile', look for function FUNCNAME delimited by `^FUNCNAME ()$' and
7828# '^} FUNCNAME ', and replace its body with REPLACEMENT-BODY.
7829m4_defun([_LT_PROG_FUNCTION_REPLACE],
7830[dnl {
7831sed -e '/^$1 ()$/,/^} # $1 /c\
7832$1 ()\
7833{\
7834m4_bpatsubsts([$2], [$], [\\], [^\([ ]\)], [\\\1])
7835} # Extended-shell $1 implementation' "$cfgfile" > $cfgfile.tmp \
7836 && mv -f "$cfgfile.tmp" "$cfgfile" \
7837 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7838test 0 -eq $? || _lt_function_replace_fail=:
7839])
db137867 7840
db137867 7841
b6d0720c
AC
7842# _LT_PROG_REPLACE_SHELLFNS
7843# -------------------------
7844# Replace existing portable implementations of several shell functions with
7845# equivalent extended shell implementations where those features are available..
7846m4_defun([_LT_PROG_REPLACE_SHELLFNS],
7847[if test x"$xsi_shell" = xyes; then
7848 _LT_PROG_FUNCTION_REPLACE([func_dirname], [dnl
7849 case ${1} in
7850 */*) func_dirname_result="${1%/*}${2}" ;;
7851 * ) func_dirname_result="${3}" ;;
7852 esac])
7853
7854 _LT_PROG_FUNCTION_REPLACE([func_basename], [dnl
7855 func_basename_result="${1##*/}"])
7856
7857 _LT_PROG_FUNCTION_REPLACE([func_dirname_and_basename], [dnl
7858 case ${1} in
7859 */*) func_dirname_result="${1%/*}${2}" ;;
7860 * ) func_dirname_result="${3}" ;;
7861 esac
7862 func_basename_result="${1##*/}"])
db137867 7863
b6d0720c
AC
7864 _LT_PROG_FUNCTION_REPLACE([func_stripname], [dnl
7865 # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
7866 # positional parameters, so assign one to ordinary parameter first.
7867 func_stripname_result=${3}
7868 func_stripname_result=${func_stripname_result#"${1}"}
7869 func_stripname_result=${func_stripname_result%"${2}"}])
db137867 7870
b6d0720c
AC
7871 _LT_PROG_FUNCTION_REPLACE([func_split_long_opt], [dnl
7872 func_split_long_opt_name=${1%%=*}
7873 func_split_long_opt_arg=${1#*=}])
7083c021 7874
b6d0720c
AC
7875 _LT_PROG_FUNCTION_REPLACE([func_split_short_opt], [dnl
7876 func_split_short_opt_arg=${1#??}
7877 func_split_short_opt_name=${1%"$func_split_short_opt_arg"}])
db137867 7878
b6d0720c
AC
7879 _LT_PROG_FUNCTION_REPLACE([func_lo2o], [dnl
7880 case ${1} in
7881 *.lo) func_lo2o_result=${1%.lo}.${objext} ;;
7882 *) func_lo2o_result=${1} ;;
7883 esac])
db137867 7884
b6d0720c 7885 _LT_PROG_FUNCTION_REPLACE([func_xform], [ func_xform_result=${1%.*}.lo])
db137867 7886
b6d0720c 7887 _LT_PROG_FUNCTION_REPLACE([func_arith], [ func_arith_result=$(( $[*] ))])
db137867 7888
b6d0720c
AC
7889 _LT_PROG_FUNCTION_REPLACE([func_len], [ func_len_result=${#1}])
7890fi
db137867 7891
b6d0720c
AC
7892if test x"$lt_shell_append" = xyes; then
7893 _LT_PROG_FUNCTION_REPLACE([func_append], [ eval "${1}+=\\${2}"])
db137867 7894
b6d0720c
AC
7895 _LT_PROG_FUNCTION_REPLACE([func_append_quoted], [dnl
7896 func_quote_for_eval "${2}"
7897dnl m4 expansion turns \\\\ into \\, and then the shell eval turns that into \
7898 eval "${1}+=\\\\ \\$func_quote_for_eval_result"])
db137867 7899
b6d0720c
AC
7900 # Save a `func_append' function call where possible by direct use of '+='
7901 sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \
7902 && mv -f "$cfgfile.tmp" "$cfgfile" \
7903 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7904 test 0 -eq $? || _lt_function_replace_fail=:
7905else
7906 # Save a `func_append' function call even when '+=' is not available
7907 sed -e 's%func_append \([[a-zA-Z_]]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \
7908 && mv -f "$cfgfile.tmp" "$cfgfile" \
7909 || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp")
7910 test 0 -eq $? || _lt_function_replace_fail=:
7911fi
db137867 7912
b6d0720c
AC
7913if test x"$_lt_function_replace_fail" = x":"; then
7914 AC_MSG_WARN([Unable to substitute extended shell functions in $ofile])
7915fi
7916])
db137867 7917
b6d0720c
AC
7918# _LT_PATH_CONVERSION_FUNCTIONS
7919# -----------------------------
7920# Determine which file name conversion functions should be used by
7921# func_to_host_file (and, implicitly, by func_to_host_path). These are needed
7922# for certain cross-compile configurations and native mingw.
7923m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
7924[AC_REQUIRE([AC_CANONICAL_HOST])dnl
7925AC_REQUIRE([AC_CANONICAL_BUILD])dnl
7926AC_MSG_CHECKING([how to convert $build file names to $host format])
7927AC_CACHE_VAL(lt_cv_to_host_file_cmd,
7928[case $host in
7929 *-*-mingw* )
7930 case $build in
7931 *-*-mingw* ) # actually msys
7932 lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
7933 ;;
7934 *-*-cygwin* )
7935 lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
7936 ;;
7937 * ) # otherwise, assume *nix
7938 lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
7939 ;;
7940 esac
7083c021 7941 ;;
b6d0720c
AC
7942 *-*-cygwin* )
7943 case $build in
7944 *-*-mingw* ) # actually msys
7945 lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
7946 ;;
7947 *-*-cygwin* )
7948 lt_cv_to_host_file_cmd=func_convert_file_noop
7949 ;;
7950 * ) # otherwise, assume *nix
7951 lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
7952 ;;
7953 esac
7083c021 7954 ;;
b6d0720c
AC
7955 * ) # unhandled hosts (and "normal" native builds)
7956 lt_cv_to_host_file_cmd=func_convert_file_noop
7957 ;;
7958esac
7959])
7960to_host_file_cmd=$lt_cv_to_host_file_cmd
7961AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
7962_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
7963 [0], [convert $build file names to $host format])dnl
7964
7965AC_MSG_CHECKING([how to convert $build file names to toolchain format])
7966AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
7967[#assume ordinary cross tools, or native build.
7968lt_cv_to_tool_file_cmd=func_convert_file_noop
7969case $host in
7970 *-*-mingw* )
7971 case $build in
7972 *-*-mingw* ) # actually msys
7973 lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
7974 ;;
7975 esac
7976 ;;
7977esac
7083c021 7978])
b6d0720c
AC
7979to_tool_file_cmd=$lt_cv_to_tool_file_cmd
7980AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
7981_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
7982 [0], [convert $build files to toolchain format])dnl
7983])# _LT_PATH_CONVERSION_FUNCTIONS
db137867 7984
7083c021
AC
7985# Helper functions for option handling. -*- Autoconf -*-
7986#
b6d0720c
AC
7987# Copyright (C) 2004, 2005, 2007, 2008, 2009 Free Software Foundation,
7988# Inc.
7083c021
AC
7989# Written by Gary V. Vaughan, 2004
7990#
7991# This file is free software; the Free Software Foundation gives
7992# unlimited permission to copy and/or distribute it, with or without
7993# modifications, as long as this notice is preserved.
db137867 7994
b6d0720c 7995# serial 7 ltoptions.m4
db137867 7996
7083c021
AC
7997# This is to help aclocal find these macros, as it can't see m4_define.
7998AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
db137867 7999
db137867 8000
7083c021
AC
8001# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
8002# ------------------------------------------
8003m4_define([_LT_MANGLE_OPTION],
8004[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
db137867 8005
db137867 8006
7083c021
AC
8007# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
8008# ---------------------------------------
8009# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
8010# matching handler defined, dispatch to it. Other OPTION-NAMEs are
8011# saved as a flag.
8012m4_define([_LT_SET_OPTION],
8013[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
8014m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
8015 _LT_MANGLE_DEFUN([$1], [$2]),
8016 [m4_warning([Unknown $1 option `$2'])])[]dnl
8017])
db137867 8018
db137867 8019
7083c021
AC
8020# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
8021# ------------------------------------------------------------
8022# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
8023m4_define([_LT_IF_OPTION],
8024[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
8025
8026
8027# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
8028# -------------------------------------------------------
8029# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
8030# are set.
8031m4_define([_LT_UNLESS_OPTIONS],
8032[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8033 [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
8034 [m4_define([$0_found])])])[]dnl
8035m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
8036])[]dnl
8037])
db137867 8038
db137867 8039
7083c021
AC
8040# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
8041# ----------------------------------------
8042# OPTION-LIST is a space-separated list of Libtool options associated
8043# with MACRO-NAME. If any OPTION has a matching handler declared with
8044# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
8045# the unknown option and exit.
8046m4_defun([_LT_SET_OPTIONS],
8047[# Set options
8048m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8049 [_LT_SET_OPTION([$1], _LT_Option)])
8050
8051m4_if([$1],[LT_INIT],[
8052 dnl
8053 dnl Simply set some default values (i.e off) if boolean options were not
8054 dnl specified:
8055 _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
8056 ])
8057 _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
8058 ])
8059 dnl
8060 dnl If no reference was made to various pairs of opposing options, then
8061 dnl we run the default mode handler for the pair. For example, if neither
8062 dnl `shared' nor `disable-shared' was passed, we enable building of shared
8063 dnl archives by default:
8064 _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
8065 _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
8066 _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
8067 _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
8068 [_LT_ENABLE_FAST_INSTALL])
8069 ])
8070])# _LT_SET_OPTIONS
db137867 8071
db137867 8072
db137867 8073
7083c021
AC
8074# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
8075# -----------------------------------------
8076m4_define([_LT_MANGLE_DEFUN],
8077[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
db137867 8078
db137867 8079
7083c021
AC
8080# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
8081# -----------------------------------------------
8082m4_define([LT_OPTION_DEFINE],
8083[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
8084])# LT_OPTION_DEFINE
db137867 8085
db137867 8086
7083c021
AC
8087# dlopen
8088# ------
8089LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
8090])
db137867 8091
7083c021
AC
8092AU_DEFUN([AC_LIBTOOL_DLOPEN],
8093[_LT_SET_OPTION([LT_INIT], [dlopen])
8094AC_DIAGNOSE([obsolete],
8095[$0: Remove this warning and the call to _LT_SET_OPTION when you
8096put the `dlopen' option into LT_INIT's first parameter.])
8097])
db137867 8098
7083c021
AC
8099dnl aclocal-1.4 backwards compatibility:
8100dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
db137867 8101
db137867 8102
7083c021
AC
8103# win32-dll
8104# ---------
8105# Declare package support for building win32 dll's.
8106LT_OPTION_DEFINE([LT_INIT], [win32-dll],
8107[enable_win32_dll=yes
db137867 8108
7083c021 8109case $host in
b6d0720c 8110*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
7083c021
AC
8111 AC_CHECK_TOOL(AS, as, false)
8112 AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8113 AC_CHECK_TOOL(OBJDUMP, objdump, false)
8114 ;;
8115esac
db137867 8116
7083c021 8117test -z "$AS" && AS=as
b6d0720c 8118_LT_DECL([], [AS], [1], [Assembler program])dnl
db137867 8119
7083c021 8120test -z "$DLLTOOL" && DLLTOOL=dlltool
b6d0720c 8121_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
db137867 8122
7083c021 8123test -z "$OBJDUMP" && OBJDUMP=objdump
b6d0720c 8124_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
7083c021 8125])# win32-dll
db137867 8126
7083c021
AC
8127AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
8128[AC_REQUIRE([AC_CANONICAL_HOST])dnl
8129_LT_SET_OPTION([LT_INIT], [win32-dll])
8130AC_DIAGNOSE([obsolete],
8131[$0: Remove this warning and the call to _LT_SET_OPTION when you
8132put the `win32-dll' option into LT_INIT's first parameter.])
8133])
db137867 8134
7083c021
AC
8135dnl aclocal-1.4 backwards compatibility:
8136dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
8137
8138
8139# _LT_ENABLE_SHARED([DEFAULT])
8140# ----------------------------
8141# implement the --enable-shared flag, and supports the `shared' and
8142# `disable-shared' LT_INIT options.
8143# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8144m4_define([_LT_ENABLE_SHARED],
8145[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
8146AC_ARG_ENABLE([shared],
8147 [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
8148 [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
8149 [p=${PACKAGE-default}
8150 case $enableval in
8151 yes) enable_shared=yes ;;
8152 no) enable_shared=no ;;
8153 *)
8154 enable_shared=no
8155 # Look at the argument we got. We use all the common list separators.
8156 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8157 for pkg in $enableval; do
8158 IFS="$lt_save_ifs"
8159 if test "X$pkg" = "X$p"; then
8160 enable_shared=yes
8161 fi
8162 done
8163 IFS="$lt_save_ifs"
db137867 8164 ;;
7083c021
AC
8165 esac],
8166 [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
db137867 8167
7083c021
AC
8168 _LT_DECL([build_libtool_libs], [enable_shared], [0],
8169 [Whether or not to build shared libraries])
8170])# _LT_ENABLE_SHARED
db137867 8171
7083c021
AC
8172LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
8173LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
db137867 8174
7083c021
AC
8175# Old names:
8176AC_DEFUN([AC_ENABLE_SHARED],
8177[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
8178])
db137867 8179
7083c021
AC
8180AC_DEFUN([AC_DISABLE_SHARED],
8181[_LT_SET_OPTION([LT_INIT], [disable-shared])
8182])
db137867 8183
7083c021
AC
8184AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
8185AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
db137867 8186
7083c021
AC
8187dnl aclocal-1.4 backwards compatibility:
8188dnl AC_DEFUN([AM_ENABLE_SHARED], [])
8189dnl AC_DEFUN([AM_DISABLE_SHARED], [])
db137867 8190
db137867 8191
db137867 8192
7083c021
AC
8193# _LT_ENABLE_STATIC([DEFAULT])
8194# ----------------------------
8195# implement the --enable-static flag, and support the `static' and
8196# `disable-static' LT_INIT options.
8197# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8198m4_define([_LT_ENABLE_STATIC],
8199[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
8200AC_ARG_ENABLE([static],
8201 [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
8202 [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
8203 [p=${PACKAGE-default}
8204 case $enableval in
8205 yes) enable_static=yes ;;
8206 no) enable_static=no ;;
8207 *)
8208 enable_static=no
8209 # Look at the argument we got. We use all the common list separators.
8210 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8211 for pkg in $enableval; do
8212 IFS="$lt_save_ifs"
8213 if test "X$pkg" = "X$p"; then
8214 enable_static=yes
8215 fi
8216 done
8217 IFS="$lt_save_ifs"
db137867 8218 ;;
7083c021
AC
8219 esac],
8220 [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
db137867 8221
7083c021
AC
8222 _LT_DECL([build_old_libs], [enable_static], [0],
8223 [Whether or not to build static libraries])
8224])# _LT_ENABLE_STATIC
db137867 8225
7083c021
AC
8226LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
8227LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
db137867 8228
7083c021
AC
8229# Old names:
8230AC_DEFUN([AC_ENABLE_STATIC],
8231[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
8232])
db137867 8233
7083c021
AC
8234AC_DEFUN([AC_DISABLE_STATIC],
8235[_LT_SET_OPTION([LT_INIT], [disable-static])
8236])
db137867 8237
7083c021
AC
8238AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
8239AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
db137867 8240
7083c021
AC
8241dnl aclocal-1.4 backwards compatibility:
8242dnl AC_DEFUN([AM_ENABLE_STATIC], [])
8243dnl AC_DEFUN([AM_DISABLE_STATIC], [])
8244
8245
8246
8247# _LT_ENABLE_FAST_INSTALL([DEFAULT])
8248# ----------------------------------
8249# implement the --enable-fast-install flag, and support the `fast-install'
8250# and `disable-fast-install' LT_INIT options.
8251# DEFAULT is either `yes' or `no'. If omitted, it defaults to `yes'.
8252m4_define([_LT_ENABLE_FAST_INSTALL],
8253[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
8254AC_ARG_ENABLE([fast-install],
8255 [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
8256 [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
8257 [p=${PACKAGE-default}
8258 case $enableval in
8259 yes) enable_fast_install=yes ;;
8260 no) enable_fast_install=no ;;
8261 *)
8262 enable_fast_install=no
8263 # Look at the argument we got. We use all the common list separators.
8264 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8265 for pkg in $enableval; do
8266 IFS="$lt_save_ifs"
8267 if test "X$pkg" = "X$p"; then
8268 enable_fast_install=yes
db137867 8269 fi
7083c021
AC
8270 done
8271 IFS="$lt_save_ifs"
db137867 8272 ;;
7083c021
AC
8273 esac],
8274 [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
db137867 8275
7083c021
AC
8276_LT_DECL([fast_install], [enable_fast_install], [0],
8277 [Whether or not to optimize for fast installation])dnl
8278])# _LT_ENABLE_FAST_INSTALL
db137867 8279
7083c021
AC
8280LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
8281LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
db137867 8282
7083c021
AC
8283# Old names:
8284AU_DEFUN([AC_ENABLE_FAST_INSTALL],
8285[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
8286AC_DIAGNOSE([obsolete],
8287[$0: Remove this warning and the call to _LT_SET_OPTION when you put
8288the `fast-install' option into LT_INIT's first parameter.])
8289])
db137867 8290
7083c021
AC
8291AU_DEFUN([AC_DISABLE_FAST_INSTALL],
8292[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
8293AC_DIAGNOSE([obsolete],
8294[$0: Remove this warning and the call to _LT_SET_OPTION when you put
8295the `disable-fast-install' option into LT_INIT's first parameter.])
8296])
db137867 8297
7083c021
AC
8298dnl aclocal-1.4 backwards compatibility:
8299dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
8300dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
db137867 8301
db137867 8302
7083c021
AC
8303# _LT_WITH_PIC([MODE])
8304# --------------------
8305# implement the --with-pic flag, and support the `pic-only' and `no-pic'
8306# LT_INIT options.
8307# MODE is either `yes' or `no'. If omitted, it defaults to `both'.
8308m4_define([_LT_WITH_PIC],
8309[AC_ARG_WITH([pic],
a949ab1a 8310 [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
7083c021 8311 [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
a949ab1a
AC
8312 [lt_p=${PACKAGE-default}
8313 case $withval in
8314 yes|no) pic_mode=$withval ;;
8315 *)
8316 pic_mode=default
8317 # Look at the argument we got. We use all the common list separators.
8318 lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR,"
8319 for lt_pkg in $withval; do
8320 IFS="$lt_save_ifs"
8321 if test "X$lt_pkg" = "X$lt_p"; then
8322 pic_mode=yes
8323 fi
8324 done
8325 IFS="$lt_save_ifs"
8326 ;;
8327 esac],
7083c021 8328 [pic_mode=default])
db137867 8329
7083c021 8330test -z "$pic_mode" && pic_mode=m4_default([$1], [default])
db137867 8331
7083c021
AC
8332_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
8333])# _LT_WITH_PIC
db137867 8334
7083c021
AC
8335LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
8336LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
8337
8338# Old name:
8339AU_DEFUN([AC_LIBTOOL_PICMODE],
8340[_LT_SET_OPTION([LT_INIT], [pic-only])
8341AC_DIAGNOSE([obsolete],
8342[$0: Remove this warning and the call to _LT_SET_OPTION when you
8343put the `pic-only' option into LT_INIT's first parameter.])
db137867 8344])
db137867 8345
7083c021
AC
8346dnl aclocal-1.4 backwards compatibility:
8347dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
db137867 8348
db137867 8349
7083c021
AC
8350m4_define([_LTDL_MODE], [])
8351LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
8352 [m4_define([_LTDL_MODE], [nonrecursive])])
8353LT_OPTION_DEFINE([LTDL_INIT], [recursive],
8354 [m4_define([_LTDL_MODE], [recursive])])
8355LT_OPTION_DEFINE([LTDL_INIT], [subproject],
8356 [m4_define([_LTDL_MODE], [subproject])])
db137867 8357
7083c021
AC
8358m4_define([_LTDL_TYPE], [])
8359LT_OPTION_DEFINE([LTDL_INIT], [installable],
8360 [m4_define([_LTDL_TYPE], [installable])])
8361LT_OPTION_DEFINE([LTDL_INIT], [convenience],
8362 [m4_define([_LTDL_TYPE], [convenience])])
db137867 8363
7083c021 8364# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
db137867 8365#
7083c021
AC
8366# Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
8367# Written by Gary V. Vaughan, 2004
db137867 8368#
7083c021
AC
8369# This file is free software; the Free Software Foundation gives
8370# unlimited permission to copy and/or distribute it, with or without
8371# modifications, as long as this notice is preserved.
8372
8373# serial 6 ltsugar.m4
8374
8375# This is to help aclocal find these macros, as it can't see m4_define.
8376AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
8377
8378
8379# lt_join(SEP, ARG1, [ARG2...])
8380# -----------------------------
8381# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
8382# associated separator.
8383# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
8384# versions in m4sugar had bugs.
8385m4_define([lt_join],
8386[m4_if([$#], [1], [],
8387 [$#], [2], [[$2]],
8388 [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
8389m4_define([_lt_join],
8390[m4_if([$#$2], [2], [],
8391 [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
8392
8393
8394# lt_car(LIST)
8395# lt_cdr(LIST)
8396# ------------
8397# Manipulate m4 lists.
8398# These macros are necessary as long as will still need to support
8399# Autoconf-2.59 which quotes differently.
8400m4_define([lt_car], [[$1]])
8401m4_define([lt_cdr],
8402[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
8403 [$#], 1, [],
8404 [m4_dquote(m4_shift($@))])])
8405m4_define([lt_unquote], $1)
8406
8407
8408# lt_append(MACRO-NAME, STRING, [SEPARATOR])
8409# ------------------------------------------
8410# Redefine MACRO-NAME to hold its former content plus `SEPARATOR'`STRING'.
8411# Note that neither SEPARATOR nor STRING are expanded; they are appended
8412# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
8413# No SEPARATOR is output if MACRO-NAME was previously undefined (different
8414# than defined and empty).
db137867 8415#
7083c021
AC
8416# This macro is needed until we can rely on Autoconf 2.62, since earlier
8417# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
8418m4_define([lt_append],
8419[m4_define([$1],
8420 m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
8421
8422
8423
8424# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
8425# ----------------------------------------------------------
8426# Produce a SEP delimited list of all paired combinations of elements of
8427# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
8428# has the form PREFIXmINFIXSUFFIXn.
8429# Needed until we can rely on m4_combine added in Autoconf 2.62.
8430m4_define([lt_combine],
8431[m4_if(m4_eval([$# > 3]), [1],
8432 [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
8433[[m4_foreach([_Lt_prefix], [$2],
8434 [m4_foreach([_Lt_suffix],
8435 ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
8436 [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
8437
8438
8439# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
8440# -----------------------------------------------------------------------
8441# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
8442# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
8443m4_define([lt_if_append_uniq],
8444[m4_ifdef([$1],
8445 [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
8446 [lt_append([$1], [$2], [$3])$4],
8447 [$5])],
8448 [lt_append([$1], [$2], [$3])$4])])
8449
8450
8451# lt_dict_add(DICT, KEY, VALUE)
8452# -----------------------------
8453m4_define([lt_dict_add],
8454[m4_define([$1($2)], [$3])])
db137867
AC
8455
8456
7083c021
AC
8457# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
8458# --------------------------------------------
8459m4_define([lt_dict_add_subkey],
8460[m4_define([$1($2:$3)], [$4])])
db137867
AC
8461
8462
7083c021
AC
8463# lt_dict_fetch(DICT, KEY, [SUBKEY])
8464# ----------------------------------
8465m4_define([lt_dict_fetch],
8466[m4_ifval([$3],
8467 m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
8468 m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
db137867 8469
db137867 8470
7083c021
AC
8471# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
8472# -----------------------------------------------------------------
8473m4_define([lt_if_dict_fetch],
8474[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
8475 [$5],
8476 [$6])])
db137867 8477
7083c021
AC
8478
8479# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
8480# --------------------------------------------------------------
8481m4_define([lt_dict_filter],
8482[m4_if([$5], [], [],
8483 [lt_join(m4_quote(m4_default([$4], [[, ]])),
8484 lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
8485 [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
db137867
AC
8486])
8487
7083c021
AC
8488# ltversion.m4 -- version numbers -*- Autoconf -*-
8489#
8490# Copyright (C) 2004 Free Software Foundation, Inc.
8491# Written by Scott James Remnant, 2004
8492#
8493# This file is free software; the Free Software Foundation gives
8494# unlimited permission to copy and/or distribute it, with or without
8495# modifications, as long as this notice is preserved.
db137867 8496
b6d0720c 8497# @configure_input@
db137867 8498
a949ab1a 8499# serial 3337 ltversion.m4
7083c021 8500# This file is part of GNU Libtool
db137867 8501
a949ab1a
AC
8502m4_define([LT_PACKAGE_VERSION], [2.4.2])
8503m4_define([LT_PACKAGE_REVISION], [1.3337])
db137867 8504
7083c021 8505AC_DEFUN([LTVERSION_VERSION],
a949ab1a
AC
8506[macro_version='2.4.2'
8507macro_revision='1.3337'
7083c021
AC
8508_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
8509_LT_DECL(, macro_revision, 0)
db137867
AC
8510])
8511
7083c021
AC
8512# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
8513#
b6d0720c 8514# Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
7083c021
AC
8515# Written by Scott James Remnant, 2004.
8516#
8517# This file is free software; the Free Software Foundation gives
8518# unlimited permission to copy and/or distribute it, with or without
8519# modifications, as long as this notice is preserved.
8520
b6d0720c 8521# serial 5 lt~obsolete.m4
7083c021
AC
8522
8523# These exist entirely to fool aclocal when bootstrapping libtool.
8524#
8525# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN)
8526# which have later been changed to m4_define as they aren't part of the
8527# exported API, or moved to Autoconf or Automake where they belong.
8528#
8529# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
8530# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
8531# using a macro with the same name in our local m4/libtool.m4 it'll
8532# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
8533# and doesn't know about Autoconf macros at all.)
8534#
8535# So we provide this file, which has a silly filename so it's always
8536# included after everything else. This provides aclocal with the
8537# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
8538# because those macros already exist, or will be overwritten later.
8539# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
8540#
8541# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
8542# Yes, that means every name once taken will need to remain here until
8543# we give up compatibility with versions before 1.7, at which point
8544# we need to keep only those names which we still refer to.
8545
8546# This is to help aclocal find these macros, as it can't see m4_define.
8547AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
8548
8549m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
8550m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
8551m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
8552m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
8553m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
8554m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
8555m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
8556m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
8557m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
8558m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
8559m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
8560m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
8561m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
8562m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
8563m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
8564m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
8565m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
8566m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
8567m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
8568m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
8569m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
8570m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
8571m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
8572m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
8573m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
8574m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
8575m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
8576m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
8577m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
8578m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
8579m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
8580m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
8581m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
8582m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
8583m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
8584m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
8585m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
8586m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
8587m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
8588m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
8589m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
8590m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
7083c021
AC
8591m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
8592m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
8593m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
8594m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
8595m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
8596m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
8597m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
8598m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
8599m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
8600m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
8601m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
8602m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
b6d0720c
AC
8603m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
8604m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
8605m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
8606m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
8607m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
8608m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
8609m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
7083c021 8610
e4cf89d4
AB
8611# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
8612# serial 1 (pkg-config-0.24)
8613#
8614# Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
8615#
8616# This program is free software; you can redistribute it and/or modify
8617# it under the terms of the GNU General Public License as published by
8618# the Free Software Foundation; either version 2 of the License, or
8619# (at your option) any later version.
8620#
8621# This program is distributed in the hope that it will be useful, but
8622# WITHOUT ANY WARRANTY; without even the implied warranty of
8623# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
8624# General Public License for more details.
8625#
8626# You should have received a copy of the GNU General Public License
8627# along with this program; if not, write to the Free Software
8628# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
8629#
8630# As a special exception to the GNU General Public License, if you
8631# distribute this file as part of a program that contains a
8632# configuration script generated by Autoconf, you may include it under
8633# the same distribution terms that you use for the rest of that program.
8634
8635# PKG_PROG_PKG_CONFIG([MIN-VERSION])
8636# ----------------------------------
8637AC_DEFUN([PKG_PROG_PKG_CONFIG],
8638[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
8639m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
8640m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
8641AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
8642AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
8643AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
8644
8645if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
8646 AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
8647fi
8648if test -n "$PKG_CONFIG"; then
8649 _pkg_min_version=m4_default([$1], [0.9.0])
8650 AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
8651 if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
8652 AC_MSG_RESULT([yes])
8653 else
8654 AC_MSG_RESULT([no])
8655 PKG_CONFIG=""
8656 fi
8657fi[]dnl
8658])# PKG_PROG_PKG_CONFIG
8659
8660# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
8661#
8662# Check to see whether a particular set of modules exists. Similar
8663# to PKG_CHECK_MODULES(), but does not set variables or print errors.
8664#
8665# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
8666# only at the first occurence in configure.ac, so if the first place
8667# it's called might be skipped (such as if it is within an "if", you
8668# have to call PKG_CHECK_EXISTS manually
8669# --------------------------------------------------------------
8670AC_DEFUN([PKG_CHECK_EXISTS],
8671[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
8672if test -n "$PKG_CONFIG" && \
8673 AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
8674 m4_default([$2], [:])
8675m4_ifvaln([$3], [else
8676 $3])dnl
8677fi])
8678
8679# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
8680# ---------------------------------------------
8681m4_define([_PKG_CONFIG],
8682[if test -n "$$1"; then
8683 pkg_cv_[]$1="$$1"
8684 elif test -n "$PKG_CONFIG"; then
8685 PKG_CHECK_EXISTS([$3],
8686 [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`
8687 test "x$?" != "x0" && pkg_failed=yes ],
8688 [pkg_failed=yes])
8689 else
8690 pkg_failed=untried
8691fi[]dnl
8692])# _PKG_CONFIG
8693
8694# _PKG_SHORT_ERRORS_SUPPORTED
8695# -----------------------------
8696AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
8697[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
8698if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
8699 _pkg_short_errors_supported=yes
8700else
8701 _pkg_short_errors_supported=no
8702fi[]dnl
8703])# _PKG_SHORT_ERRORS_SUPPORTED
8704
8705
8706# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
8707# [ACTION-IF-NOT-FOUND])
8708#
8709#
8710# Note that if there is a possibility the first call to
8711# PKG_CHECK_MODULES might not happen, you should be sure to include an
8712# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
8713#
8714#
8715# --------------------------------------------------------------
8716AC_DEFUN([PKG_CHECK_MODULES],
8717[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
8718AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
8719AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
8720
8721pkg_failed=no
8722AC_MSG_CHECKING([for $1])
8723
8724_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
8725_PKG_CONFIG([$1][_LIBS], [libs], [$2])
8726
8727m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
8728and $1[]_LIBS to avoid the need to call pkg-config.
8729See the pkg-config man page for more details.])
8730
8731if test $pkg_failed = yes; then
8732 AC_MSG_RESULT([no])
8733 _PKG_SHORT_ERRORS_SUPPORTED
8734 if test $_pkg_short_errors_supported = yes; then
8735 $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
8736 else
8737 $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
8738 fi
8739 # Put the nasty error message in config.log where it belongs
8740 echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
8741
8742 m4_default([$4], [AC_MSG_ERROR(
8743[Package requirements ($2) were not met:
8744
8745$$1_PKG_ERRORS
8746
8747Consider adjusting the PKG_CONFIG_PATH environment variable if you
8748installed software in a non-standard prefix.
8749
8750_PKG_TEXT])[]dnl
8751 ])
8752elif test $pkg_failed = untried; then
8753 AC_MSG_RESULT([no])
8754 m4_default([$4], [AC_MSG_FAILURE(
8755[The pkg-config script could not be found or is too old. Make sure it
8756is in your PATH or set the PKG_CONFIG environment variable to the full
8757path to pkg-config.
8758
8759_PKG_TEXT
8760
8761To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
8762 ])
8763else
8764 $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
8765 $1[]_LIBS=$pkg_cv_[]$1[]_LIBS
8766 AC_MSG_RESULT([yes])
8767 $3
8768fi[]dnl
8769])# PKG_CHECK_MODULES
8770
8771# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008, 2011 Free Software
8772# Foundation, Inc.
db137867
AC
8773#
8774# This file is free software; the Free Software Foundation
8775# gives unlimited permission to copy and/or distribute it,
8776# with or without modifications, as long as this notice is preserved.
8777
e4cf89d4
AB
8778# serial 1
8779
db137867
AC
8780# AM_AUTOMAKE_VERSION(VERSION)
8781# ----------------------------
8782# Automake X.Y traces this macro to ensure aclocal.m4 has been
8783# generated from the m4 files accompanying Automake X.Y.
8784# (This private macro should not be called outside this file.)
8785AC_DEFUN([AM_AUTOMAKE_VERSION],
7083c021 8786[am__api_version='1.11'
db137867
AC
8787dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
8788dnl require some minimum version. Point them to the right macro.
e4cf89d4 8789m4_if([$1], [1.11.6], [],
db137867
AC
8790 [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
8791])
8792
8793# _AM_AUTOCONF_VERSION(VERSION)
8794# -----------------------------
8795# aclocal traces this macro to find the Autoconf version.
8796# This is a private macro too. Using m4_define simplifies
8797# the logic in aclocal, which can simply ignore this definition.
8798m4_define([_AM_AUTOCONF_VERSION], [])
8799
8800# AM_SET_CURRENT_AUTOMAKE_VERSION
8801# -------------------------------
8802# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
030272f3 8803# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
db137867 8804AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
e4cf89d4 8805[AM_AUTOMAKE_VERSION([1.11.6])dnl
b676ea3b
AC
8806m4_ifndef([AC_AUTOCONF_VERSION],
8807 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
030272f3 8808_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
db137867
AC
8809
8810# AM_AUX_DIR_EXPAND -*- Autoconf -*-
8811
e4cf89d4 8812# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc.
db137867
AC
8813#
8814# This file is free software; the Free Software Foundation
8815# gives unlimited permission to copy and/or distribute it,
8816# with or without modifications, as long as this notice is preserved.
8817
e4cf89d4
AB
8818# serial 1
8819
db137867
AC
8820# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
8821# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to
8822# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
8823#
8824# Of course, Automake must honor this variable whenever it calls a
8825# tool from the auxiliary directory. The problem is that $srcdir (and
8826# therefore $ac_aux_dir as well) can be either absolute or relative,
8827# depending on how configure is run. This is pretty annoying, since
8828# it makes $ac_aux_dir quite unusable in subdirectories: in the top
8829# source directory, any form will work fine, but in subdirectories a
8830# relative path needs to be adjusted first.
8831#
8832# $ac_aux_dir/missing
8833# fails when called from a subdirectory if $ac_aux_dir is relative
8834# $top_srcdir/$ac_aux_dir/missing
8835# fails if $ac_aux_dir is absolute,
8836# fails when called from a subdirectory in a VPATH build with
8837# a relative $ac_aux_dir
8838#
8839# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
8840# are both prefixed by $srcdir. In an in-source build this is usually
8841# harmless because $srcdir is `.', but things will broke when you
8842# start a VPATH build or use an absolute $srcdir.
8843#
8844# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
8845# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
8846# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
8847# and then we would define $MISSING as
8848# MISSING="\${SHELL} $am_aux_dir/missing"
8849# This will work as long as MISSING is not called from configure, because
8850# unfortunately $(top_srcdir) has no meaning in configure.
8851# However there are other variables, like CC, which are often used in
8852# configure, and could therefore not use this "fixed" $ac_aux_dir.
8853#
8854# Another solution, used here, is to always expand $ac_aux_dir to an
8855# absolute PATH. The drawback is that using absolute paths prevent a
8856# configured tree to be moved without reconfiguration.
8857
8858AC_DEFUN([AM_AUX_DIR_EXPAND],
8859[dnl Rely on autoconf to set up CDPATH properly.
8860AC_PREREQ([2.50])dnl
8861# expand $ac_aux_dir to an absolute path
8862am_aux_dir=`cd $ac_aux_dir && pwd`
8863])
8864
8865# AM_CONDITIONAL -*- Autoconf -*-
8866
7083c021 8867# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008
db137867
AC
8868# Free Software Foundation, Inc.
8869#
8870# This file is free software; the Free Software Foundation
8871# gives unlimited permission to copy and/or distribute it,
8872# with or without modifications, as long as this notice is preserved.
8873
7083c021 8874# serial 9
db137867
AC
8875
8876# AM_CONDITIONAL(NAME, SHELL-CONDITION)
8877# -------------------------------------
8878# Define a conditional.
8879AC_DEFUN([AM_CONDITIONAL],
8880[AC_PREREQ(2.52)dnl
8881 ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
8882 [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
8883AC_SUBST([$1_TRUE])dnl
8884AC_SUBST([$1_FALSE])dnl
8885_AM_SUBST_NOTMAKE([$1_TRUE])dnl
8886_AM_SUBST_NOTMAKE([$1_FALSE])dnl
7083c021 8887m4_define([_AM_COND_VALUE_$1], [$2])dnl
db137867
AC
8888if $2; then
8889 $1_TRUE=
8890 $1_FALSE='#'
8891else
8892 $1_TRUE='#'
8893 $1_FALSE=
8894fi
8895AC_CONFIG_COMMANDS_PRE(
8896[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
8897 AC_MSG_ERROR([[conditional "$1" was never defined.
8898Usually this means the macro was only invoked conditionally.]])
8899fi])])
8900
e4cf89d4
AB
8901# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009,
8902# 2010, 2011 Free Software Foundation, Inc.
db137867
AC
8903#
8904# This file is free software; the Free Software Foundation
8905# gives unlimited permission to copy and/or distribute it,
8906# with or without modifications, as long as this notice is preserved.
8907
e4cf89d4 8908# serial 12
db137867
AC
8909
8910# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
8911# written in clear, in which case automake, when reading aclocal.m4,
8912# will think it sees a *use*, and therefore will trigger all it's
8913# C support machinery. Also note that it means that autoscan, seeing
8914# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
8915
8916
8917# _AM_DEPENDENCIES(NAME)
8918# ----------------------
8919# See how the compiler implements dependency checking.
8920# NAME is "CC", "CXX", "GCJ", or "OBJC".
8921# We try a few techniques and use that to set a single cache variable.
8922#
8923# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
8924# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
8925# dependency, and given that the user is not expected to run this macro,
8926# just rely on AC_PROG_CC.
8927AC_DEFUN([_AM_DEPENDENCIES],
8928[AC_REQUIRE([AM_SET_DEPDIR])dnl
8929AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
8930AC_REQUIRE([AM_MAKE_INCLUDE])dnl
8931AC_REQUIRE([AM_DEP_TRACK])dnl
8932
8933ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
8934 [$1], CXX, [depcc="$CXX" am_compiler_list=],
8935 [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
8936 [$1], UPC, [depcc="$UPC" am_compiler_list=],
8937 [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
8938 [depcc="$$1" am_compiler_list=])
8939
8940AC_CACHE_CHECK([dependency style of $depcc],
8941 [am_cv_$1_dependencies_compiler_type],
8942[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
8943 # We make a subdir and do the tests there. Otherwise we can end up
8944 # making bogus files that we don't know about and never remove. For
8945 # instance it was reported that on HP-UX the gcc test will end up
8946 # making a dummy file named `D' -- because `-MD' means `put the output
8947 # in D'.
e4cf89d4 8948 rm -rf conftest.dir
db137867
AC
8949 mkdir conftest.dir
8950 # Copy depcomp to subdir because otherwise we won't find it if we're
8951 # using a relative directory.
8952 cp "$am_depcomp" conftest.dir
8953 cd conftest.dir
8954 # We will build objects and dependencies in a subdirectory because
8955 # it helps to detect inapplicable dependency modes. For instance
8956 # both Tru64's cc and ICC support -MD to output dependencies as a
8957 # side effect of compilation, but ICC will put the dependencies in
8958 # the current directory while Tru64 will put them in the object
8959 # directory.
8960 mkdir sub
8961
8962 am_cv_$1_dependencies_compiler_type=none
8963 if test "$am_compiler_list" = ""; then
8964 am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
8965 fi
7083c021
AC
8966 am__universal=false
8967 m4_case([$1], [CC],
8968 [case " $depcc " in #(
8969 *\ -arch\ *\ -arch\ *) am__universal=true ;;
8970 esac],
8971 [CXX],
8972 [case " $depcc " in #(
8973 *\ -arch\ *\ -arch\ *) am__universal=true ;;
8974 esac])
8975
db137867
AC
8976 for depmode in $am_compiler_list; do
8977 # Setup a source with many dependencies, because some compilers
8978 # like to wrap large dependency lists on column 80 (with \), and
8979 # we should not choose a depcomp mode which is confused by this.
8980 #
8981 # We need to recreate these files for each test, as the compiler may
8982 # overwrite some of them when testing with obscure command lines.
8983 # This happens at least with the AIX C compiler.
8984 : > sub/conftest.c
8985 for i in 1 2 3 4 5 6; do
8986 echo '#include "conftst'$i'.h"' >> sub/conftest.c
8987 # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
8988 # Solaris 8's {/usr,}/bin/sh.
8989 touch sub/conftst$i.h
8990 done
8991 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
8992
7083c021
AC
8993 # We check with `-c' and `-o' for the sake of the "dashmstdout"
8994 # mode. It turns out that the SunPro C++ compiler does not properly
8995 # handle `-M -o', and we need to detect this. Also, some Intel
8996 # versions had trouble with output in subdirs
8997 am__obj=sub/conftest.${OBJEXT-o}
8998 am__minus_obj="-o $am__obj"
db137867 8999 case $depmode in
7083c021
AC
9000 gcc)
9001 # This depmode causes a compiler race in universal mode.
9002 test "$am__universal" = false || continue
9003 ;;
db137867
AC
9004 nosideeffect)
9005 # after this tag, mechanisms are not by side-effect, so they'll
9006 # only be used when explicitly requested
9007 if test "x$enable_dependency_tracking" = xyes; then
9008 continue
9009 else
9010 break
9011 fi
9012 ;;
e4cf89d4 9013 msvc7 | msvc7msys | msvisualcpp | msvcmsys)
7083c021
AC
9014 # This compiler won't grok `-c -o', but also, the minuso test has
9015 # not run yet. These depmodes are late enough in the game, and
9016 # so weak that their functioning should not be impacted.
9017 am__obj=conftest.${OBJEXT-o}
9018 am__minus_obj=
9019 ;;
db137867
AC
9020 none) break ;;
9021 esac
db137867 9022 if depmode=$depmode \
7083c021 9023 source=sub/conftest.c object=$am__obj \
db137867 9024 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
7083c021 9025 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
db137867
AC
9026 >/dev/null 2>conftest.err &&
9027 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
9028 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
7083c021 9029 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
db137867
AC
9030 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
9031 # icc doesn't choke on unknown options, it will just issue warnings
9032 # or remarks (even with -Werror). So we grep stderr for any message
9033 # that says an option was ignored or not supported.
9034 # When given -MP, icc 7.0 and 7.1 complain thusly:
9035 # icc: Command line warning: ignoring option '-M'; no argument required
9036 # The diagnosis changed in icc 8.0:
9037 # icc: Command line remark: option '-MP' not supported
9038 if (grep 'ignoring option' conftest.err ||
9039 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
9040 am_cv_$1_dependencies_compiler_type=$depmode
9041 break
9042 fi
9043 fi
9044 done
9045
9046 cd ..
9047 rm -rf conftest.dir
9048else
9049 am_cv_$1_dependencies_compiler_type=none
9050fi
9051])
9052AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
9053AM_CONDITIONAL([am__fastdep$1], [
9054 test "x$enable_dependency_tracking" != xno \
9055 && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
9056])
9057
9058
9059# AM_SET_DEPDIR
9060# -------------
9061# Choose a directory name for dependency files.
9062# This macro is AC_REQUIREd in _AM_DEPENDENCIES
9063AC_DEFUN([AM_SET_DEPDIR],
9064[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
9065AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
9066])
9067
9068
9069# AM_DEP_TRACK
9070# ------------
9071AC_DEFUN([AM_DEP_TRACK],
9072[AC_ARG_ENABLE(dependency-tracking,
9073[ --disable-dependency-tracking speeds up one-time build
9074 --enable-dependency-tracking do not reject slow dependency extractors])
9075if test "x$enable_dependency_tracking" != xno; then
9076 am_depcomp="$ac_aux_dir/depcomp"
9077 AMDEPBACKSLASH='\'
e4cf89d4 9078 am__nodep='_no'
db137867
AC
9079fi
9080AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
9081AC_SUBST([AMDEPBACKSLASH])dnl
9082_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
e4cf89d4
AB
9083AC_SUBST([am__nodep])dnl
9084_AM_SUBST_NOTMAKE([am__nodep])dnl
db137867
AC
9085])
9086
9087# Generate code to set up dependency tracking. -*- Autoconf -*-
9088
030272f3 9089# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008
db137867
AC
9090# Free Software Foundation, Inc.
9091#
9092# This file is free software; the Free Software Foundation
9093# gives unlimited permission to copy and/or distribute it,
9094# with or without modifications, as long as this notice is preserved.
9095
7083c021 9096#serial 5
db137867
AC
9097
9098# _AM_OUTPUT_DEPENDENCY_COMMANDS
9099# ------------------------------
9100AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
7083c021
AC
9101[{
9102 # Autoconf 2.62 quotes --file arguments for eval, but not when files
9103 # are listed without --file. Let's play safe and only enable the eval
9104 # if we detect the quoting.
9105 case $CONFIG_FILES in
9106 *\'*) eval set x "$CONFIG_FILES" ;;
9107 *) set x $CONFIG_FILES ;;
9108 esac
9109 shift
9110 for mf
9111 do
9112 # Strip MF so we end up with the name of the file.
9113 mf=`echo "$mf" | sed -e 's/:.*$//'`
9114 # Check whether this is an Automake generated Makefile or not.
9115 # We used to match only the files named `Makefile.in', but
9116 # some people rename them; so instead we look at the file content.
9117 # Grep'ing the first line is not enough: some people post-process
9118 # each Makefile.in and add a new line on top of each file to say so.
9119 # Grep'ing the whole file is not good either: AIX grep has a line
9120 # limit of 2048, but all sed's we know have understand at least 4000.
9121 if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
9122 dirpart=`AS_DIRNAME("$mf")`
9123 else
9124 continue
9125 fi
9126 # Extract the definition of DEPDIR, am__include, and am__quote
9127 # from the Makefile without running `make'.
9128 DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
9129 test -z "$DEPDIR" && continue
9130 am__include=`sed -n 's/^am__include = //p' < "$mf"`
9131 test -z "am__include" && continue
9132 am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
9133 # When using ansi2knr, U may be empty or an underscore; expand it
9134 U=`sed -n 's/^U = //p' < "$mf"`
9135 # Find all dependency output files, they are included files with
9136 # $(DEPDIR) in their names. We invoke sed twice because it is the
9137 # simplest approach to changing $(DEPDIR) to its actual value in the
9138 # expansion.
9139 for file in `sed -n "
9140 s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
9141 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
9142 # Make sure the directory exists.
9143 test -f "$dirpart/$file" && continue
9144 fdir=`AS_DIRNAME(["$file"])`
9145 AS_MKDIR_P([$dirpart/$fdir])
9146 # echo "creating $dirpart/$file"
9147 echo '# dummy' > "$dirpart/$file"
9148 done
db137867 9149 done
7083c021 9150}
db137867
AC
9151])# _AM_OUTPUT_DEPENDENCY_COMMANDS
9152
9153
9154# AM_OUTPUT_DEPENDENCY_COMMANDS
9155# -----------------------------
9156# This macro should only be invoked once -- use via AC_REQUIRE.
9157#
9158# This code is only required when automatic dependency tracking
9159# is enabled. FIXME. This creates each `.P' file that we will
9160# need in order to bootstrap the dependency handling code.
9161AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
9162[AC_CONFIG_COMMANDS([depfiles],
9163 [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
9164 [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
9165])
9166
9167# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
9168# Free Software Foundation, Inc.
9169#
9170# This file is free software; the Free Software Foundation
9171# gives unlimited permission to copy and/or distribute it,
9172# with or without modifications, as long as this notice is preserved.
9173
9174# serial 8
9175
9176# AM_CONFIG_HEADER is obsolete. It has been replaced by AC_CONFIG_HEADERS.
9177AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)])
9178
9179# Do all the work for Automake. -*- Autoconf -*-
9180
9181# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
7083c021 9182# 2005, 2006, 2008, 2009 Free Software Foundation, Inc.
db137867
AC
9183#
9184# This file is free software; the Free Software Foundation
9185# gives unlimited permission to copy and/or distribute it,
9186# with or without modifications, as long as this notice is preserved.
9187
7083c021 9188# serial 16
db137867
AC
9189
9190# This macro actually does too much. Some checks are only needed if
9191# your package does certain things. But this isn't really a big deal.
9192
9193# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
9194# AM_INIT_AUTOMAKE([OPTIONS])
9195# -----------------------------------------------
9196# The call with PACKAGE and VERSION arguments is the old style
9197# call (pre autoconf-2.50), which is being phased out. PACKAGE
9198# and VERSION should now be passed to AC_INIT and removed from
9199# the call to AM_INIT_AUTOMAKE.
9200# We support both call styles for the transition. After
9201# the next Automake release, Autoconf can make the AC_INIT
9202# arguments mandatory, and then we can depend on a new Autoconf
9203# release and drop the old call support.
9204AC_DEFUN([AM_INIT_AUTOMAKE],
7083c021 9205[AC_PREREQ([2.62])dnl
db137867
AC
9206dnl Autoconf wants to disallow AM_ names. We explicitly allow
9207dnl the ones we care about.
9208m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
9209AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
9210AC_REQUIRE([AC_PROG_INSTALL])dnl
9211if test "`cd $srcdir && pwd`" != "`pwd`"; then
9212 # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
9213 # is not polluted with repeated "-I."
9214 AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
9215 # test to see if srcdir already configured
9216 if test -f $srcdir/config.status; then
9217 AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
9218 fi
9219fi
9220
9221# test whether we have cygpath
9222if test -z "$CYGPATH_W"; then
9223 if (cygpath --version) >/dev/null 2>/dev/null; then
9224 CYGPATH_W='cygpath -w'
9225 else
9226 CYGPATH_W=echo
9227 fi
9228fi
9229AC_SUBST([CYGPATH_W])
9230
9231# Define the identity of the package.
9232dnl Distinguish between old-style and new-style calls.
9233m4_ifval([$2],
9234[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
9235 AC_SUBST([PACKAGE], [$1])dnl
9236 AC_SUBST([VERSION], [$2])],
9237[_AM_SET_OPTIONS([$1])dnl
9238dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
9239m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,,
9240 [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
9241 AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
9242 AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
9243
9244_AM_IF_OPTION([no-define],,
9245[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
9246 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
9247
9248# Some tools Automake needs.
9249AC_REQUIRE([AM_SANITY_CHECK])dnl
9250AC_REQUIRE([AC_ARG_PROGRAM])dnl
9251AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
9252AM_MISSING_PROG(AUTOCONF, autoconf)
9253AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
9254AM_MISSING_PROG(AUTOHEADER, autoheader)
9255AM_MISSING_PROG(MAKEINFO, makeinfo)
7083c021
AC
9256AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
9257AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
db137867
AC
9258AC_REQUIRE([AM_PROG_MKDIR_P])dnl
9259# We need awk for the "check" target. The system "awk" is bad on
9260# some platforms.
9261AC_REQUIRE([AC_PROG_AWK])dnl
9262AC_REQUIRE([AC_PROG_MAKE_SET])dnl
9263AC_REQUIRE([AM_SET_LEADING_DOT])dnl
9264_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
7083c021
AC
9265 [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
9266 [_AM_PROG_TAR([v7])])])
db137867
AC
9267_AM_IF_OPTION([no-dependencies],,
9268[AC_PROVIDE_IFELSE([AC_PROG_CC],
7083c021
AC
9269 [_AM_DEPENDENCIES(CC)],
9270 [define([AC_PROG_CC],
9271 defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
db137867 9272AC_PROVIDE_IFELSE([AC_PROG_CXX],
7083c021
AC
9273 [_AM_DEPENDENCIES(CXX)],
9274 [define([AC_PROG_CXX],
9275 defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
db137867 9276AC_PROVIDE_IFELSE([AC_PROG_OBJC],
7083c021
AC
9277 [_AM_DEPENDENCIES(OBJC)],
9278 [define([AC_PROG_OBJC],
9279 defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
db137867 9280])
7083c021
AC
9281_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
9282dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
9283dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This macro
9284dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
9285AC_CONFIG_COMMANDS_PRE(dnl
9286[m4_provide_if([_AM_COMPILER_EXEEXT],
9287 [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
db137867
AC
9288])
9289
7083c021
AC
9290dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
9291dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
9292dnl mangled by Autoconf and run in a shell conditional statement.
9293m4_define([_AC_COMPILER_EXEEXT],
9294m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
9295
db137867
AC
9296
9297# When config.status generates a header, we must update the stamp-h file.
9298# This file resides in the same directory as the config header
9299# that is generated. The stamp files are numbered to have different names.
9300
9301# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
9302# loop where config.status creates the headers, so we can generate
9303# our stamp files there.
9304AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
9305[# Compute $1's index in $config_headers.
b676ea3b 9306_am_arg=$1
db137867
AC
9307_am_stamp_count=1
9308for _am_header in $config_headers :; do
9309 case $_am_header in
b676ea3b 9310 $_am_arg | $_am_arg:* )
db137867
AC
9311 break ;;
9312 * )
9313 _am_stamp_count=`expr $_am_stamp_count + 1` ;;
9314 esac
9315done
b676ea3b 9316echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
db137867 9317
e4cf89d4
AB
9318# Copyright (C) 2001, 2003, 2005, 2008, 2011 Free Software Foundation,
9319# Inc.
db137867
AC
9320#
9321# This file is free software; the Free Software Foundation
9322# gives unlimited permission to copy and/or distribute it,
9323# with or without modifications, as long as this notice is preserved.
9324
e4cf89d4
AB
9325# serial 1
9326
db137867
AC
9327# AM_PROG_INSTALL_SH
9328# ------------------
9329# Define $install_sh.
9330AC_DEFUN([AM_PROG_INSTALL_SH],
9331[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
7083c021
AC
9332if test x"${install_sh}" != xset; then
9333 case $am_aux_dir in
9334 *\ * | *\ *)
9335 install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
9336 *)
9337 install_sh="\${SHELL} $am_aux_dir/install-sh"
9338 esac
9339fi
db137867
AC
9340AC_SUBST(install_sh)])
9341
9342# Copyright (C) 2003, 2005 Free Software Foundation, Inc.
9343#
9344# This file is free software; the Free Software Foundation
9345# gives unlimited permission to copy and/or distribute it,
9346# with or without modifications, as long as this notice is preserved.
9347
9348# serial 2
9349
9350# Check whether the underlying file-system supports filenames
9351# with a leading dot. For instance MS-DOS doesn't.
9352AC_DEFUN([AM_SET_LEADING_DOT],
9353[rm -rf .tst 2>/dev/null
9354mkdir .tst 2>/dev/null
9355if test -d .tst; then
9356 am__leading_dot=.
9357else
9358 am__leading_dot=_
9359fi
9360rmdir .tst 2>/dev/null
9361AC_SUBST([am__leading_dot])])
9362
9363# Add --enable-maintainer-mode option to configure. -*- Autoconf -*-
9364# From Jim Meyering
9365
e4cf89d4
AB
9366# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008,
9367# 2011 Free Software Foundation, Inc.
db137867
AC
9368#
9369# This file is free software; the Free Software Foundation
9370# gives unlimited permission to copy and/or distribute it,
9371# with or without modifications, as long as this notice is preserved.
9372
7083c021 9373# serial 5
db137867 9374
7083c021
AC
9375# AM_MAINTAINER_MODE([DEFAULT-MODE])
9376# ----------------------------------
9377# Control maintainer-specific portions of Makefiles.
9378# Default is to disable them, unless `enable' is passed literally.
9379# For symmetry, `disable' may be passed as well. Anyway, the user
9380# can override the default with the --enable/--disable switch.
db137867 9381AC_DEFUN([AM_MAINTAINER_MODE],
7083c021
AC
9382[m4_case(m4_default([$1], [disable]),
9383 [enable], [m4_define([am_maintainer_other], [disable])],
9384 [disable], [m4_define([am_maintainer_other], [enable])],
9385 [m4_define([am_maintainer_other], [enable])
9386 m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])])
e4cf89d4 9387AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
7083c021
AC
9388 dnl maintainer-mode's default is 'disable' unless 'enable' is passed
9389 AC_ARG_ENABLE([maintainer-mode],
9390[ --][am_maintainer_other][-maintainer-mode am_maintainer_other make rules and dependencies not useful
db137867 9391 (and sometimes confusing) to the casual installer],
7083c021
AC
9392 [USE_MAINTAINER_MODE=$enableval],
9393 [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
db137867 9394 AC_MSG_RESULT([$USE_MAINTAINER_MODE])
7083c021 9395 AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
db137867 9396 MAINT=$MAINTAINER_MODE_TRUE
7083c021 9397 AC_SUBST([MAINT])dnl
db137867
AC
9398]
9399)
9400
9401AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
9402
9403# Check to see how 'make' treats includes. -*- Autoconf -*-
9404
7083c021 9405# Copyright (C) 2001, 2002, 2003, 2005, 2009 Free Software Foundation, Inc.
db137867
AC
9406#
9407# This file is free software; the Free Software Foundation
9408# gives unlimited permission to copy and/or distribute it,
9409# with or without modifications, as long as this notice is preserved.
9410
7083c021 9411# serial 4
db137867
AC
9412
9413# AM_MAKE_INCLUDE()
9414# -----------------
9415# Check to see how make treats includes.
9416AC_DEFUN([AM_MAKE_INCLUDE],
9417[am_make=${MAKE-make}
9418cat > confinc << 'END'
9419am__doit:
7083c021 9420 @echo this is the am__doit target
db137867
AC
9421.PHONY: am__doit
9422END
9423# If we don't find an include directive, just comment out the code.
9424AC_MSG_CHECKING([for style of include used by $am_make])
9425am__include="#"
9426am__quote=
9427_am_result=none
9428# First try GNU make style include.
9429echo "include confinc" > confmf
7083c021
AC
9430# Ignore all kinds of additional output from `make'.
9431case `$am_make -s -f confmf 2> /dev/null` in #(
9432*the\ am__doit\ target*)
9433 am__include=include
9434 am__quote=
9435 _am_result=GNU
9436 ;;
9437esac
db137867
AC
9438# Now try BSD make style include.
9439if test "$am__include" = "#"; then
9440 echo '.include "confinc"' > confmf
7083c021
AC
9441 case `$am_make -s -f confmf 2> /dev/null` in #(
9442 *the\ am__doit\ target*)
9443 am__include=.include
9444 am__quote="\""
9445 _am_result=BSD
9446 ;;
9447 esac
db137867
AC
9448fi
9449AC_SUBST([am__include])
9450AC_SUBST([am__quote])
9451AC_MSG_RESULT([$_am_result])
9452rm -f confinc confmf
9453])
9454
9455# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
9456
7083c021 9457# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008
db137867
AC
9458# Free Software Foundation, Inc.
9459#
9460# This file is free software; the Free Software Foundation
9461# gives unlimited permission to copy and/or distribute it,
9462# with or without modifications, as long as this notice is preserved.
9463
7083c021 9464# serial 6
db137867
AC
9465
9466# AM_MISSING_PROG(NAME, PROGRAM)
9467# ------------------------------
9468AC_DEFUN([AM_MISSING_PROG],
9469[AC_REQUIRE([AM_MISSING_HAS_RUN])
9470$1=${$1-"${am_missing_run}$2"}
9471AC_SUBST($1)])
9472
9473
9474# AM_MISSING_HAS_RUN
9475# ------------------
9476# Define MISSING if not defined so far and test if it supports --run.
9477# If it does, set am_missing_run to use it, otherwise, to nothing.
9478AC_DEFUN([AM_MISSING_HAS_RUN],
9479[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
9480AC_REQUIRE_AUX_FILE([missing])dnl
7083c021
AC
9481if test x"${MISSING+set}" != xset; then
9482 case $am_aux_dir in
9483 *\ * | *\ *)
9484 MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
9485 *)
9486 MISSING="\${SHELL} $am_aux_dir/missing" ;;
9487 esac
9488fi
db137867
AC
9489# Use eval to expand $SHELL
9490if eval "$MISSING --run true"; then
9491 am_missing_run="$MISSING --run "
9492else
9493 am_missing_run=
9494 AC_MSG_WARN([`missing' script is too old or missing])
9495fi
9496])
9497
e4cf89d4
AB
9498# Copyright (C) 2003, 2004, 2005, 2006, 2011 Free Software Foundation,
9499# Inc.
db137867
AC
9500#
9501# This file is free software; the Free Software Foundation
9502# gives unlimited permission to copy and/or distribute it,
9503# with or without modifications, as long as this notice is preserved.
9504
e4cf89d4
AB
9505# serial 1
9506
db137867
AC
9507# AM_PROG_MKDIR_P
9508# ---------------
9509# Check for `mkdir -p'.
9510AC_DEFUN([AM_PROG_MKDIR_P],
9511[AC_PREREQ([2.60])dnl
9512AC_REQUIRE([AC_PROG_MKDIR_P])dnl
9513dnl Automake 1.8 to 1.9.6 used to define mkdir_p. We now use MKDIR_P,
9514dnl while keeping a definition of mkdir_p for backward compatibility.
9515dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
9516dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of
9517dnl Makefile.ins that do not define MKDIR_P, so we do our own
9518dnl adjustment using top_builddir (which is defined more often than
9519dnl MKDIR_P).
9520AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl
9521case $mkdir_p in
9522 [[\\/$]]* | ?:[[\\/]]*) ;;
9523 */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
9524esac
9525])
9526
9527# Helper functions for option handling. -*- Autoconf -*-
9528
e4cf89d4
AB
9529# Copyright (C) 2001, 2002, 2003, 2005, 2008, 2010 Free Software
9530# Foundation, Inc.
db137867
AC
9531#
9532# This file is free software; the Free Software Foundation
9533# gives unlimited permission to copy and/or distribute it,
9534# with or without modifications, as long as this notice is preserved.
9535
e4cf89d4 9536# serial 5
db137867
AC
9537
9538# _AM_MANGLE_OPTION(NAME)
9539# -----------------------
9540AC_DEFUN([_AM_MANGLE_OPTION],
9541[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
9542
9543# _AM_SET_OPTION(NAME)
e4cf89d4 9544# --------------------
db137867
AC
9545# Set option NAME. Presently that only means defining a flag for this option.
9546AC_DEFUN([_AM_SET_OPTION],
9547[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
9548
9549# _AM_SET_OPTIONS(OPTIONS)
e4cf89d4 9550# ------------------------
db137867
AC
9551# OPTIONS is a space-separated list of Automake options.
9552AC_DEFUN([_AM_SET_OPTIONS],
030272f3 9553[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
db137867
AC
9554
9555# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
9556# -------------------------------------------
9557# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
9558AC_DEFUN([_AM_IF_OPTION],
9559[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
9560
9561# Check to make sure that the build environment is sane. -*- Autoconf -*-
9562
7083c021 9563# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
db137867
AC
9564# Free Software Foundation, Inc.
9565#
9566# This file is free software; the Free Software Foundation
9567# gives unlimited permission to copy and/or distribute it,
9568# with or without modifications, as long as this notice is preserved.
9569
7083c021 9570# serial 5
db137867
AC
9571
9572# AM_SANITY_CHECK
9573# ---------------
9574AC_DEFUN([AM_SANITY_CHECK],
9575[AC_MSG_CHECKING([whether build environment is sane])
9576# Just in case
9577sleep 1
9578echo timestamp > conftest.file
7083c021
AC
9579# Reject unsafe characters in $srcdir or the absolute working directory
9580# name. Accept space and tab only in the latter.
9581am_lf='
9582'
9583case `pwd` in
9584 *[[\\\"\#\$\&\'\`$am_lf]]*)
9585 AC_MSG_ERROR([unsafe absolute working directory name]);;
9586esac
9587case $srcdir in
9588 *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
9589 AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
9590esac
9591
db137867
AC
9592# Do `set' in a subshell so we don't clobber the current shell's
9593# arguments. Must try -L first in case configure is actually a
9594# symlink; some systems play weird games with the mod time of symlinks
9595# (eg FreeBSD returns the mod time of the symlink's containing
9596# directory).
9597if (
7083c021 9598 set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
db137867
AC
9599 if test "$[*]" = "X"; then
9600 # -L didn't work.
7083c021 9601 set X `ls -t "$srcdir/configure" conftest.file`
db137867
AC
9602 fi
9603 rm -f conftest.file
9604 if test "$[*]" != "X $srcdir/configure conftest.file" \
9605 && test "$[*]" != "X conftest.file $srcdir/configure"; then
9606
9607 # If neither matched, then we have a broken ls. This can happen
9608 # if, for instance, CONFIG_SHELL is bash and it inherits a
9609 # broken ls alias from the environment. This has actually
9610 # happened. Such a system could not be considered "sane".
9611 AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
9612alias in your environment])
9613 fi
9614
9615 test "$[2]" = conftest.file
9616 )
9617then
9618 # Ok.
9619 :
9620else
9621 AC_MSG_ERROR([newly created file is older than distributed files!
9622Check your system clock])
9623fi
9624AC_MSG_RESULT(yes)])
9625
e4cf89d4 9626# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc.
db137867
AC
9627#
9628# This file is free software; the Free Software Foundation
9629# gives unlimited permission to copy and/or distribute it,
9630# with or without modifications, as long as this notice is preserved.
9631
e4cf89d4
AB
9632# serial 1
9633
db137867
AC
9634# AM_PROG_INSTALL_STRIP
9635# ---------------------
9636# One issue with vendor `install' (even GNU) is that you can't
9637# specify the program used to strip binaries. This is especially
9638# annoying in cross-compiling environments, where the build's strip
9639# is unlikely to handle the host's binaries.
9640# Fortunately install-sh will honor a STRIPPROG variable, so we
9641# always use install-sh in `make install-strip', and initialize
9642# STRIPPROG with the value of the STRIP variable (set by the user).
9643AC_DEFUN([AM_PROG_INSTALL_STRIP],
9644[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
9645# Installed binaries are usually stripped using `strip' when the user
9646# run `make install-strip'. However `strip' might not be the right
9647# tool to use in cross-compilation environments, therefore Automake
9648# will honor the `STRIP' environment variable to overrule this program.
9649dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
9650if test "$cross_compiling" != no; then
9651 AC_CHECK_TOOL([STRIP], [strip], :)
9652fi
9653INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
9654AC_SUBST([INSTALL_STRIP_PROGRAM])])
9655
e4cf89d4 9656# Copyright (C) 2006, 2008, 2010 Free Software Foundation, Inc.
db137867
AC
9657#
9658# This file is free software; the Free Software Foundation
9659# gives unlimited permission to copy and/or distribute it,
9660# with or without modifications, as long as this notice is preserved.
9661
e4cf89d4 9662# serial 3
7083c021 9663
db137867
AC
9664# _AM_SUBST_NOTMAKE(VARIABLE)
9665# ---------------------------
b676ea3b 9666# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
db137867
AC
9667# This macro is traced by Automake.
9668AC_DEFUN([_AM_SUBST_NOTMAKE])
9669
7083c021 9670# AM_SUBST_NOTMAKE(VARIABLE)
e4cf89d4 9671# --------------------------
7083c021
AC
9672# Public sister of _AM_SUBST_NOTMAKE.
9673AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
9674
db137867
AC
9675# Check how to create a tarball. -*- Autoconf -*-
9676
e4cf89d4 9677# Copyright (C) 2004, 2005, 2012 Free Software Foundation, Inc.
db137867
AC
9678#
9679# This file is free software; the Free Software Foundation
9680# gives unlimited permission to copy and/or distribute it,
9681# with or without modifications, as long as this notice is preserved.
9682
9683# serial 2
9684
9685# _AM_PROG_TAR(FORMAT)
9686# --------------------
9687# Check how to create a tarball in format FORMAT.
9688# FORMAT should be one of `v7', `ustar', or `pax'.
9689#
9690# Substitute a variable $(am__tar) that is a command
9691# writing to stdout a FORMAT-tarball containing the directory
9692# $tardir.
9693# tardir=directory && $(am__tar) > result.tar
9694#
9695# Substitute a variable $(am__untar) that extract such
9696# a tarball read from stdin.
9697# $(am__untar) < result.tar
9698AC_DEFUN([_AM_PROG_TAR],
e4cf89d4
AB
9699[# Always define AMTAR for backward compatibility. Yes, it's still used
9700# in the wild :-( We should find a proper way to deprecate it ...
9701AC_SUBST([AMTAR], ['$${TAR-tar}'])
db137867 9702m4_if([$1], [v7],
e4cf89d4 9703 [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
db137867
AC
9704 [m4_case([$1], [ustar],, [pax],,
9705 [m4_fatal([Unknown tar format])])
9706AC_MSG_CHECKING([how to create a $1 tar archive])
9707# Loop over all known methods to create a tar archive until one works.
9708_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
9709_am_tools=${am_cv_prog_tar_$1-$_am_tools}
9710# Do not fold the above two line into one, because Tru64 sh and
9711# Solaris sh will not grok spaces in the rhs of `-'.
9712for _am_tool in $_am_tools
9713do
9714 case $_am_tool in
9715 gnutar)
9716 for _am_tar in tar gnutar gtar;
9717 do
9718 AM_RUN_LOG([$_am_tar --version]) && break
9719 done
9720 am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
9721 am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
9722 am__untar="$_am_tar -xf -"
9723 ;;
9724 plaintar)
9725 # Must skip GNU tar: if it does not support --format= it doesn't create
9726 # ustar tarball either.
9727 (tar --version) >/dev/null 2>&1 && continue
9728 am__tar='tar chf - "$$tardir"'
9729 am__tar_='tar chf - "$tardir"'
9730 am__untar='tar xf -'
9731 ;;
9732 pax)
9733 am__tar='pax -L -x $1 -w "$$tardir"'
9734 am__tar_='pax -L -x $1 -w "$tardir"'
9735 am__untar='pax -r'
9736 ;;
9737 cpio)
9738 am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
9739 am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
9740 am__untar='cpio -i -H $1 -d'
9741 ;;
9742 none)
9743 am__tar=false
9744 am__tar_=false
9745 am__untar=false
9746 ;;
9747 esac
9748
9749 # If the value was cached, stop now. We just wanted to have am__tar
9750 # and am__untar set.
9751 test -n "${am_cv_prog_tar_$1}" && break
9752
9753 # tar/untar a dummy directory, and stop if the command works
9754 rm -rf conftest.dir
9755 mkdir conftest.dir
9756 echo GrepMe > conftest.dir/file
9757 AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
9758 rm -rf conftest.dir
9759 if test -s conftest.tar; then
9760 AM_RUN_LOG([$am__untar <conftest.tar])
9761 grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
9762 fi
9763done
9764rm -rf conftest.dir
9765
9766AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
9767AC_MSG_RESULT([$am_cv_prog_tar_$1])])
9768AC_SUBST([am__tar])
9769AC_SUBST([am__untar])
9770]) # _AM_PROG_TAR
9771
9772m4_include([acinclude.m4])