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