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