e41549e47eb4817ffb12245e94c01129710de519
[libffi.git] / aclocal.m4
1 # generated automatically by aclocal 1.12.2 -*- Autoconf -*-
2
3 # Copyright (C) 1996-2012 Free Software Foundation, Inc.
4
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 m4_ifndef([AC_AUTOCONF_VERSION],
15   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
16 m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
17 [m4_warning([this file was generated for autoconf 2.69.
18 You have another version of autoconf.  It may work, but is not guaranteed to.
19 If you have problems, you may need to regenerate the build system entirely.
20 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
21
22 # ===========================================================================
23 #      http://www.gnu.org/software/autoconf-archive/ax_append_flag.html
24 # ===========================================================================
25 #
26 # SYNOPSIS
27 #
28 #   AX_APPEND_FLAG(FLAG, [FLAGS-VARIABLE])
29 #
30 # DESCRIPTION
31 #
32 #   FLAG is appended to the FLAGS-VARIABLE shell variable, with a space
33 #   added in between.
34 #
35 #   If FLAGS-VARIABLE is not specified, the current language's flags (e.g.
36 #   CFLAGS) is used.  FLAGS-VARIABLE is not changed if it already contains
37 #   FLAG.  If FLAGS-VARIABLE is unset in the shell, it is set to exactly
38 #   FLAG.
39 #
40 #   NOTE: Implementation based on AX_CFLAGS_GCC_OPTION.
41 #
42 # LICENSE
43 #
44 #   Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
45 #   Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
46 #
47 #   This program is free software: you can redistribute it and/or modify it
48 #   under the terms of the GNU General Public License as published by the
49 #   Free Software Foundation, either version 3 of the License, or (at your
50 #   option) any later version.
51 #
52 #   This program is distributed in the hope that it will be useful, but
53 #   WITHOUT ANY WARRANTY; without even the implied warranty of
54 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
55 #   Public License for more details.
56 #
57 #   You should have received a copy of the GNU General Public License along
58 #   with this program. If not, see <http://www.gnu.org/licenses/>.
59 #
60 #   As a special exception, the respective Autoconf Macro's copyright owner
61 #   gives unlimited permission to copy, distribute and modify the configure
62 #   scripts that are the output of Autoconf when processing the Macro. You
63 #   need not follow the terms of the GNU General Public License when using
64 #   or distributing such scripts, even though portions of the text of the
65 #   Macro appear in them. The GNU General Public License (GPL) does govern
66 #   all other use of the material that constitutes the Autoconf Macro.
67 #
68 #   This special exception to the GPL applies to versions of the Autoconf
69 #   Macro released by the Autoconf Archive. When you make and distribute a
70 #   modified version of the Autoconf Macro, you may extend this special
71 #   exception to the GPL to apply to your modified version as well.
72
73 #serial 2
74
75 AC_DEFUN([AX_APPEND_FLAG],
76 [AC_PREREQ(2.59)dnl for _AC_LANG_PREFIX
77 AS_VAR_PUSHDEF([FLAGS], [m4_default($2,_AC_LANG_PREFIX[FLAGS])])dnl
78 AS_VAR_SET_IF(FLAGS,
79   [case " AS_VAR_GET(FLAGS) " in
80     *" $1 "*)
81       AC_RUN_LOG([: FLAGS already contains $1])
82       ;;
83     *)
84       AC_RUN_LOG([: FLAGS="$FLAGS $1"])
85       AS_VAR_SET(FLAGS, ["AS_VAR_GET(FLAGS) $1"])
86       ;;
87    esac],
88   [AS_VAR_SET(FLAGS,["$1"])])
89 AS_VAR_POPDEF([FLAGS])dnl
90 ])dnl AX_APPEND_FLAG
91
92 # ===========================================================================
93 #       http://www.gnu.org/software/autoconf-archive/ax_cc_maxopt.html
94 # ===========================================================================
95 #
96 # SYNOPSIS
97 #
98 #   AX_CC_MAXOPT
99 #
100 # DESCRIPTION
101 #
102 #   Try to turn on "good" C optimization flags for various compilers and
103 #   architectures, for some definition of "good". (In our case, good for
104 #   FFTW and hopefully for other scientific codes. Modify as needed.)
105 #
106 #   The user can override the flags by setting the CFLAGS environment
107 #   variable. The user can also specify --enable-portable-binary in order to
108 #   disable any optimization flags that might result in a binary that only
109 #   runs on the host architecture.
110 #
111 #   Note also that the flags assume that ANSI C aliasing rules are followed
112 #   by the code (e.g. for gcc's -fstrict-aliasing), and that floating-point
113 #   computations can be re-ordered as needed.
114 #
115 #   Requires macros: AX_CHECK_COMPILE_FLAG, AX_COMPILER_VENDOR,
116 #   AX_GCC_ARCHFLAG, AX_GCC_X86_CPUID.
117 #
118 # LICENSE
119 #
120 #   Copyright (c) 2008 Steven G. Johnson <stevenj@alum.mit.edu>
121 #   Copyright (c) 2008 Matteo Frigo
122 #
123 #   This program is free software: you can redistribute it and/or modify it
124 #   under the terms of the GNU General Public License as published by the
125 #   Free Software Foundation, either version 3 of the License, or (at your
126 #   option) any later version.
127 #
128 #   This program is distributed in the hope that it will be useful, but
129 #   WITHOUT ANY WARRANTY; without even the implied warranty of
130 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
131 #   Public License for more details.
132 #
133 #   You should have received a copy of the GNU General Public License along
134 #   with this program. If not, see <http://www.gnu.org/licenses/>.
135 #
136 #   As a special exception, the respective Autoconf Macro's copyright owner
137 #   gives unlimited permission to copy, distribute and modify the configure
138 #   scripts that are the output of Autoconf when processing the Macro. You
139 #   need not follow the terms of the GNU General Public License when using
140 #   or distributing such scripts, even though portions of the text of the
141 #   Macro appear in them. The GNU General Public License (GPL) does govern
142 #   all other use of the material that constitutes the Autoconf Macro.
143 #
144 #   This special exception to the GPL applies to versions of the Autoconf
145 #   Macro released by the Autoconf Archive. When you make and distribute a
146 #   modified version of the Autoconf Macro, you may extend this special
147 #   exception to the GPL to apply to your modified version as well.
148
149 #serial 13
150
151 AC_DEFUN([AX_CC_MAXOPT],
152 [
153 AC_REQUIRE([AC_PROG_CC])
154 AC_REQUIRE([AX_COMPILER_VENDOR])
155 AC_REQUIRE([AC_CANONICAL_HOST])
156
157 AC_ARG_ENABLE(portable-binary, [AS_HELP_STRING([--enable-portable-binary], [disable compiler optimizations that would produce unportable binaries])],
158         acx_maxopt_portable=$enableval, acx_maxopt_portable=no)
159
160 # Try to determine "good" native compiler flags if none specified via CFLAGS
161 if test "$ac_test_CFLAGS" != "set"; then
162   CFLAGS=""
163   case $ax_cv_c_compiler_vendor in
164     dec) CFLAGS="-newc -w0 -O5 -ansi_alias -ansi_args -fp_reorder -tune host"
165          if test "x$acx_maxopt_portable" = xno; then
166            CFLAGS="$CFLAGS -arch host"
167          fi;;
168
169     sun) CFLAGS="-native -fast -xO5 -dalign"
170          if test "x$acx_maxopt_portable" = xyes; then
171            CFLAGS="$CFLAGS -xarch=generic"
172          fi;;
173
174     hp)  CFLAGS="+Oall +Optrs_ansi +DSnative"
175          if test "x$acx_maxopt_portable" = xyes; then
176            CFLAGS="$CFLAGS +DAportable"
177          fi;;
178
179     ibm) if test "x$acx_maxopt_portable" = xno; then
180            xlc_opt="-qarch=auto -qtune=auto"
181          else
182            xlc_opt="-qtune=auto"
183          fi
184          AX_CHECK_COMPILE_FLAG($xlc_opt,
185                 CFLAGS="-O3 -qansialias -w $xlc_opt",
186                [CFLAGS="-O3 -qansialias -w"
187                 echo "******************************************************"
188                 echo "*  You seem to have the IBM  C compiler.  It is      *"
189                 echo "*  recommended for best performance that you use:    *"
190                 echo "*                                                    *"
191                 echo "*    CFLAGS=-O3 -qarch=xxx -qtune=xxx -qansialias -w *"
192                 echo "*                      ^^^        ^^^                *"
193                 echo "*  where xxx is pwr2, pwr3, 604, or whatever kind of *"
194                 echo "*  CPU you have.  (Set the CFLAGS environment var.   *"
195                 echo "*  and re-run configure.)  For more info, man cc.    *"
196                 echo "******************************************************"])
197          ;;
198
199     intel) CFLAGS="-O3 -ansi_alias"
200         if test "x$acx_maxopt_portable" = xno; then
201           icc_archflag=unknown
202           icc_flags=""
203           case $host_cpu in
204             i686*|x86_64*)
205               # icc accepts gcc assembly syntax, so these should work:
206               AX_GCC_X86_CPUID(0)
207               AX_GCC_X86_CPUID(1)
208               case $ax_cv_gcc_x86_cpuid_0 in # see AX_GCC_ARCHFLAG
209                 *:756e6547:*:*) # Intel
210                   case $ax_cv_gcc_x86_cpuid_1 in
211                     *6a?:*[[234]]:*:*|*6[[789b]]?:*:*:*) icc_flags="-xK";;
212                     *f3[[347]]:*:*:*|*f4[1347]:*:*:*) icc_flags="-xP -xN -xW -xK";;
213                     *f??:*:*:*) icc_flags="-xN -xW -xK";;
214                   esac ;;
215               esac ;;
216           esac
217           if test "x$icc_flags" != x; then
218             for flag in $icc_flags; do
219               AX_CHECK_COMPILE_FLAG($flag, [icc_archflag=$flag; break])
220             done
221           fi
222           AC_MSG_CHECKING([for icc architecture flag])
223           AC_MSG_RESULT($icc_archflag)
224           if test "x$icc_archflag" != xunknown; then
225             CFLAGS="$CFLAGS $icc_archflag"
226           fi
227         fi
228         ;;
229
230     gnu)
231      # default optimization flags for gcc on all systems
232      CFLAGS="-O3 -fomit-frame-pointer"
233
234      # -malign-double for x86 systems
235      AX_CHECK_COMPILE_FLAG(-malign-double, CFLAGS="$CFLAGS -malign-double")
236
237      #  -fstrict-aliasing for gcc-2.95+
238      AX_CHECK_COMPILE_FLAG(-fstrict-aliasing,
239         CFLAGS="$CFLAGS -fstrict-aliasing")
240
241      # note that we enable "unsafe" fp optimization with other compilers, too
242      AX_CHECK_COMPILE_FLAG(-ffast-math, CFLAGS="$CFLAGS -ffast-math")
243
244      AX_GCC_ARCHFLAG($acx_maxopt_portable)
245      ;;
246   esac
247
248   if test -z "$CFLAGS"; then
249         echo ""
250         echo "********************************************************"
251         echo "* WARNING: Don't know the best CFLAGS for this system  *"
252         echo "* Use ./configure CFLAGS=... to specify your own flags *"
253         echo "* (otherwise, a default of CFLAGS=-O3 will be used)    *"
254         echo "********************************************************"
255         echo ""
256         CFLAGS="-O3"
257   fi
258
259   AX_CHECK_COMPILE_FLAG($CFLAGS, [], [
260         echo ""
261         echo "********************************************************"
262         echo "* WARNING: The guessed CFLAGS don't seem to work with  *"
263         echo "* your compiler.                                       *"
264         echo "* Use ./configure CFLAGS=... to specify your own flags *"
265         echo "********************************************************"
266         echo ""
267         CFLAGS=""
268   ])
269
270 fi
271 ])
272
273 # ===========================================================================
274 #    http://www.gnu.org/software/autoconf-archive/ax_cflags_warn_all.html
275 # ===========================================================================
276 #
277 # SYNOPSIS
278 #
279 #   AX_CFLAGS_WARN_ALL   [(shellvar [,default, [A/NA]])]
280 #   AX_CXXFLAGS_WARN_ALL [(shellvar [,default, [A/NA]])]
281 #   AX_FCFLAGS_WARN_ALL  [(shellvar [,default, [A/NA]])]
282 #
283 # DESCRIPTION
284 #
285 #   Try to find a compiler option that enables most reasonable warnings.
286 #
287 #   For the GNU compiler it will be -Wall (and -ansi -pedantic) The result
288 #   is added to the shellvar being CFLAGS, CXXFLAGS, or FCFLAGS by default.
289 #
290 #   Currently this macro knows about the GCC, Solaris, Digital Unix, AIX,
291 #   HP-UX, IRIX, NEC SX-5 (Super-UX 10), Cray J90 (Unicos 10.0.0.8), and
292 #   Intel compilers.  For a given compiler, the Fortran flags are much more
293 #   experimental than their C equivalents.
294 #
295 #    - $1 shell-variable-to-add-to : CFLAGS, CXXFLAGS, or FCFLAGS
296 #    - $2 add-value-if-not-found : nothing
297 #    - $3 action-if-found : add value to shellvariable
298 #    - $4 action-if-not-found : nothing
299 #
300 #   NOTE: These macros depend on AX_APPEND_FLAG.
301 #
302 # LICENSE
303 #
304 #   Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
305 #   Copyright (c) 2010 Rhys Ulerich <rhys.ulerich@gmail.com>
306 #
307 #   This program is free software; you can redistribute it and/or modify it
308 #   under the terms of the GNU General Public License as published by the
309 #   Free Software Foundation; either version 3 of the License, or (at your
310 #   option) any later version.
311 #
312 #   This program is distributed in the hope that it will be useful, but
313 #   WITHOUT ANY WARRANTY; without even the implied warranty of
314 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
315 #   Public License for more details.
316 #
317 #   You should have received a copy of the GNU General Public License along
318 #   with this program. If not, see <http://www.gnu.org/licenses/>.
319 #
320 #   As a special exception, the respective Autoconf Macro's copyright owner
321 #   gives unlimited permission to copy, distribute and modify the configure
322 #   scripts that are the output of Autoconf when processing the Macro. You
323 #   need not follow the terms of the GNU General Public License when using
324 #   or distributing such scripts, even though portions of the text of the
325 #   Macro appear in them. The GNU General Public License (GPL) does govern
326 #   all other use of the material that constitutes the Autoconf Macro.
327 #
328 #   This special exception to the GPL applies to versions of the Autoconf
329 #   Macro released by the Autoconf Archive. When you make and distribute a
330 #   modified version of the Autoconf Macro, you may extend this special
331 #   exception to the GPL to apply to your modified version as well.
332
333 #serial 14
334
335 AC_DEFUN([AX_FLAGS_WARN_ALL],[dnl
336 AS_VAR_PUSHDEF([FLAGS],[_AC_LANG_PREFIX[]FLAGS])dnl
337 AS_VAR_PUSHDEF([VAR],[ac_cv_[]_AC_LANG_ABBREV[]flags_warn_all])dnl
338 AC_CACHE_CHECK([m4_ifval($1,$1,FLAGS) for maximum warnings],
339 VAR,[VAR="no, unknown"
340 ac_save_[]FLAGS="$[]FLAGS"
341 for ac_arg dnl
342 in "-warn all  % -warn all"   dnl Intel
343    "-pedantic  % -Wall"       dnl GCC
344    "-xstrconst % -v"          dnl Solaris C
345    "-std1      % -verbose -w0 -warnprotos" dnl Digital Unix
346    "-qlanglvl=ansi % -qsrcmsg -qinfo=all:noppt:noppc:noobs:nocnd" dnl AIX
347    "-ansi -ansiE % -fullwarn" dnl IRIX
348    "+ESlit     % +w1"         dnl HP-UX C
349    "-Xc        % -pvctl[,]fullmsg" dnl NEC SX-5 (Super-UX 10)
350    "-h conform % -h msglevel 2" dnl Cray C (Unicos)
351    #
352 do FLAGS="$ac_save_[]FLAGS "`echo $ac_arg | sed -e 's,%%.*,,' -e 's,%,,'`
353    AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
354                      [VAR=`echo $ac_arg | sed -e 's,.*% *,,'` ; break])
355 done
356 FLAGS="$ac_save_[]FLAGS"
357 ])
358 AS_VAR_POPDEF([FLAGS])dnl
359 AC_REQUIRE([AX_APPEND_FLAG])
360 case ".$VAR" in
361      .ok|.ok,*) m4_ifvaln($3,$3) ;;
362    .|.no|.no,*) m4_default($4,[m4_ifval($2,[AX_APPEND_FLAG([$2], [$1])])]) ;;
363    *) m4_default($3,[AX_APPEND_FLAG([$VAR], [$1])]) ;;
364 esac
365 AS_VAR_POPDEF([VAR])dnl
366 ])dnl AX_FLAGS_WARN_ALL
367 dnl  implementation tactics:
368 dnl   the for-argument contains a list of options. The first part of
369 dnl   these does only exist to detect the compiler - usually it is
370 dnl   a global option to enable -ansi or -extrawarnings. All other
371 dnl   compilers will fail about it. That was needed since a lot of
372 dnl   compilers will give false positives for some option-syntax
373 dnl   like -Woption or -Xoption as they think of it is a pass-through
374 dnl   to later compile stages or something. The "%" is used as a
375 dnl   delimiter. A non-option comment can be given after "%%" marks
376 dnl   which will be shown but not added to the respective C/CXXFLAGS.
377
378 AC_DEFUN([AX_CFLAGS_WARN_ALL],[dnl
379 AC_LANG_PUSH([C])
380 AX_FLAGS_WARN_ALL([$1], [$2], [$3], [$4])
381 AC_LANG_POP([C])
382 ])
383
384 AC_DEFUN([AX_CXXFLAGS_WARN_ALL],[dnl
385 AC_LANG_PUSH([C++])
386 AX_FLAGS_WARN_ALL([$1], [$2], [$3], [$4])
387 AC_LANG_POP([C++])
388 ])
389
390 AC_DEFUN([AX_FCFLAGS_WARN_ALL],[dnl
391 AC_LANG_PUSH([Fortran])
392 AX_FLAGS_WARN_ALL([$1], [$2], [$3], [$4])
393 AC_LANG_POP([Fortran])
394 ])
395
396 # ===========================================================================
397 #   http://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html
398 # ===========================================================================
399 #
400 # SYNOPSIS
401 #
402 #   AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS])
403 #
404 # DESCRIPTION
405 #
406 #   Check whether the given FLAG works with the current language's compiler
407 #   or gives an error.  (Warnings, however, are ignored)
408 #
409 #   ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
410 #   success/failure.
411 #
412 #   If EXTRA-FLAGS is defined, it is added to the current language's default
413 #   flags (e.g. CFLAGS) when the check is done.  The check is thus made with
414 #   the flags: "CFLAGS EXTRA-FLAGS FLAG".  This can for example be used to
415 #   force the compiler to issue an error when a bad flag is given.
416 #
417 #   NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this
418 #   macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG.
419 #
420 # LICENSE
421 #
422 #   Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
423 #   Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
424 #
425 #   This program is free software: you can redistribute it and/or modify it
426 #   under the terms of the GNU General Public License as published by the
427 #   Free Software Foundation, either version 3 of the License, or (at your
428 #   option) any later version.
429 #
430 #   This program is distributed in the hope that it will be useful, but
431 #   WITHOUT ANY WARRANTY; without even the implied warranty of
432 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
433 #   Public License for more details.
434 #
435 #   You should have received a copy of the GNU General Public License along
436 #   with this program. If not, see <http://www.gnu.org/licenses/>.
437 #
438 #   As a special exception, the respective Autoconf Macro's copyright owner
439 #   gives unlimited permission to copy, distribute and modify the configure
440 #   scripts that are the output of Autoconf when processing the Macro. You
441 #   need not follow the terms of the GNU General Public License when using
442 #   or distributing such scripts, even though portions of the text of the
443 #   Macro appear in them. The GNU General Public License (GPL) does govern
444 #   all other use of the material that constitutes the Autoconf Macro.
445 #
446 #   This special exception to the GPL applies to versions of the Autoconf
447 #   Macro released by the Autoconf Archive. When you make and distribute a
448 #   modified version of the Autoconf Macro, you may extend this special
449 #   exception to the GPL to apply to your modified version as well.
450
451 #serial 2
452
453 AC_DEFUN([AX_CHECK_COMPILE_FLAG],
454 [AC_PREREQ(2.59)dnl for _AC_LANG_PREFIX
455 AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl
456 AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [
457   ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS
458   _AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1"
459   AC_COMPILE_IFELSE([AC_LANG_PROGRAM()],
460     [AS_VAR_SET(CACHEVAR,[yes])],
461     [AS_VAR_SET(CACHEVAR,[no])])
462   _AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags])
463 AS_IF([test x"AS_VAR_GET(CACHEVAR)" = xyes],
464   [m4_default([$2], :)],
465   [m4_default([$3], :)])
466 AS_VAR_POPDEF([CACHEVAR])dnl
467 ])dnl AX_CHECK_COMPILE_FLAGS
468
469 # ===========================================================================
470 #    http://www.gnu.org/software/autoconf-archive/ax_compiler_vendor.html
471 # ===========================================================================
472 #
473 # SYNOPSIS
474 #
475 #   AX_COMPILER_VENDOR
476 #
477 # DESCRIPTION
478 #
479 #   Determine the vendor of the C/C++ compiler, e.g., gnu, intel, ibm, sun,
480 #   hp, borland, comeau, dec, cray, kai, lcc, metrowerks, sgi, microsoft,
481 #   watcom, etc. The vendor is returned in the cache variable
482 #   $ax_cv_c_compiler_vendor for C and $ax_cv_cxx_compiler_vendor for C++.
483 #
484 # LICENSE
485 #
486 #   Copyright (c) 2008 Steven G. Johnson <stevenj@alum.mit.edu>
487 #   Copyright (c) 2008 Matteo Frigo
488 #
489 #   This program is free software: you can redistribute it and/or modify it
490 #   under the terms of the GNU General Public License as published by the
491 #   Free Software Foundation, either version 3 of the License, or (at your
492 #   option) any later version.
493 #
494 #   This program is distributed in the hope that it will be useful, but
495 #   WITHOUT ANY WARRANTY; without even the implied warranty of
496 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
497 #   Public License for more details.
498 #
499 #   You should have received a copy of the GNU General Public License along
500 #   with this program. If not, see <http://www.gnu.org/licenses/>.
501 #
502 #   As a special exception, the respective Autoconf Macro's copyright owner
503 #   gives unlimited permission to copy, distribute and modify the configure
504 #   scripts that are the output of Autoconf when processing the Macro. You
505 #   need not follow the terms of the GNU General Public License when using
506 #   or distributing such scripts, even though portions of the text of the
507 #   Macro appear in them. The GNU General Public License (GPL) does govern
508 #   all other use of the material that constitutes the Autoconf Macro.
509 #
510 #   This special exception to the GPL applies to versions of the Autoconf
511 #   Macro released by the Autoconf Archive. When you make and distribute a
512 #   modified version of the Autoconf Macro, you may extend this special
513 #   exception to the GPL to apply to your modified version as well.
514
515 #serial 11
516
517 AC_DEFUN([AX_COMPILER_VENDOR],
518 [AC_CACHE_CHECK([for _AC_LANG compiler vendor], ax_cv_[]_AC_LANG_ABBREV[]_compiler_vendor,
519   [# note: don't check for gcc first since some other compilers define __GNUC__
520   vendors="intel:     __ICC,__ECC,__INTEL_COMPILER
521            ibm:       __xlc__,__xlC__,__IBMC__,__IBMCPP__
522            pathscale: __PATHCC__,__PATHSCALE__
523            clang:     __clang__
524            gnu:       __GNUC__
525            sun:       __SUNPRO_C,__SUNPRO_CC
526            hp:        __HP_cc,__HP_aCC
527            dec:       __DECC,__DECCXX,__DECC_VER,__DECCXX_VER
528            borland:   __BORLANDC__,__TURBOC__
529            comeau:    __COMO__
530            cray:      _CRAYC
531            kai:       __KCC
532            lcc:       __LCC__
533            sgi:       __sgi,sgi
534            microsoft: _MSC_VER
535            metrowerks: __MWERKS__
536            watcom:    __WATCOMC__
537            portland:  __PGI
538            unknown:   UNKNOWN"
539   for ventest in $vendors; do
540     case $ventest in
541       *:) vendor=$ventest; continue ;;
542       *)  vencpp="defined("`echo $ventest | sed 's/,/) || defined(/g'`")" ;;
543     esac
544     AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[
545       #if !($vencpp)
546         thisisanerror;
547       #endif
548     ])], [break])
549   done
550   ax_cv_[]_AC_LANG_ABBREV[]_compiler_vendor=`echo $vendor | cut -d: -f1`
551  ])
552 ])
553
554 # ===========================================================================
555 #     http://www.gnu.org/software/autoconf-archive/ax_configure_args.html
556 # ===========================================================================
557 #
558 # SYNOPSIS
559 #
560 #   AX_CONFIGURE_ARGS
561 #
562 # DESCRIPTION
563 #
564 #   Helper macro for AX_ENABLE_BUILDDIR.
565 #
566 #   The traditional way of starting a subdir-configure is running the script
567 #   with ${1+"$@"} but since autoconf 2.60 this is broken. Instead we have
568 #   to rely on eval'ing $ac_configure_args however some old autoconf
569 #   versions do not provide that. To ensure maximum portability of autoconf
570 #   extension macros this helper can be AC_REQUIRE'd so that
571 #   $ac_configure_args will alsways be present.
572 #
573 #   Sadly, the traditional "exec $SHELL" of the enable_builddir macros is
574 #   spoiled now and must be replaced by "eval + exit $?".
575 #
576 #   Example:
577 #
578 #     AC_DEFUN([AX_ENABLE_SUBDIR],[dnl
579 #       AC_REQUIRE([AX_CONFIGURE_ARGS])dnl
580 #       eval $SHELL $ac_configure_args || exit $?
581 #       ...])
582 #
583 # LICENSE
584 #
585 #   Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
586 #
587 #   This program is free software; you can redistribute it and/or modify it
588 #   under the terms of the GNU General Public License as published by the
589 #   Free Software Foundation; either version 3 of the License, or (at your
590 #   option) any later version.
591 #
592 #   This program is distributed in the hope that it will be useful, but
593 #   WITHOUT ANY WARRANTY; without even the implied warranty of
594 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
595 #   Public License for more details.
596 #
597 #   You should have received a copy of the GNU General Public License along
598 #   with this program. If not, see <http://www.gnu.org/licenses/>.
599 #
600 #   As a special exception, the respective Autoconf Macro's copyright owner
601 #   gives unlimited permission to copy, distribute and modify the configure
602 #   scripts that are the output of Autoconf when processing the Macro. You
603 #   need not follow the terms of the GNU General Public License when using
604 #   or distributing such scripts, even though portions of the text of the
605 #   Macro appear in them. The GNU General Public License (GPL) does govern
606 #   all other use of the material that constitutes the Autoconf Macro.
607 #
608 #   This special exception to the GPL applies to versions of the Autoconf
609 #   Macro released by the Autoconf Archive. When you make and distribute a
610 #   modified version of the Autoconf Macro, you may extend this special
611 #   exception to the GPL to apply to your modified version as well.
612
613 #serial 9
614
615 AC_DEFUN([AX_CONFIGURE_ARGS],[
616    # [$]@ is unsable in 2.60+ but earlier autoconf had no ac_configure_args
617    if test "${ac_configure_args+set}" != "set" ; then
618       ac_configure_args=
619       for ac_arg in ${1+"[$]@"}; do
620          ac_configure_args="$ac_configure_args '$ac_arg'"
621       done
622    fi
623 ])
624
625 # ===========================================================================
626 #    http://www.gnu.org/software/autoconf-archive/ax_enable_builddir.html
627 # ===========================================================================
628 #
629 # SYNOPSIS
630 #
631 #   AX_ENABLE_BUILDDIR [(dirstring-or-command [,Makefile.mk [,-all]])]
632 #
633 # DESCRIPTION
634 #
635 #   If the current configure was run within the srcdir then we move all
636 #   configure-files into a subdir and let the configure steps continue
637 #   there. We provide an option --disable-builddir to suppress the move into
638 #   a separate builddir.
639 #
640 #   Defaults:
641 #
642 #     $1 = $host (overridden with $HOST)
643 #     $2 = Makefile.mk
644 #     $3 = -all
645 #
646 #   This macro must be called before AM_INIT_AUTOMAKE. It creates a default
647 #   toplevel srcdir Makefile from the information found in the created
648 #   toplevel builddir Makefile. It just copies the variables and
649 #   rule-targets, each extended with a default rule-execution that recurses
650 #   into the build directory of the current "HOST". You can override the
651 #   auto-dection through `config.guess` and build-time of course, as in
652 #
653 #     make HOST=i386-mingw-cross
654 #
655 #   which can of course set at configure time as well using
656 #
657 #     configure --host=i386-mingw-cross
658 #
659 #   After the default has been created, additional rules can be appended
660 #   that will not just recurse into the subdirectories and only ever exist
661 #   in the srcdir toplevel makefile - these parts are read from the $2 =
662 #   Makefile.mk file
663 #
664 #   The automatic rules are usually scanning the toplevel Makefile for lines
665 #   like '#### $host |$builddir' to recognize the place where to recurse
666 #   into. Usually, the last one is the only one used. However, almost all
667 #   targets have an additional "*-all" rule which makes the script to
668 #   recurse into _all_ variants of the current HOST (!!) setting. The "-all"
669 #   suffix can be overriden for the macro as well.
670 #
671 #   a special rule is only given for things like "dist" that will copy the
672 #   tarball from the builddir to the sourcedir (or $(PUB)) for reason of
673 #   convenience.
674 #
675 # LICENSE
676 #
677 #   Copyright (c) 2009 Guido U. Draheim <guidod@gmx.de>
678 #   Copyright (c) 2009 Alan Jenkins <alan-jenkins@tuffmail.co.uk>
679 #
680 #   This program is free software; you can redistribute it and/or modify it
681 #   under the terms of the GNU General Public License as published by the
682 #   Free Software Foundation; either version 3 of the License, or (at your
683 #   option) any later version.
684 #
685 #   This program is distributed in the hope that it will be useful, but
686 #   WITHOUT ANY WARRANTY; without even the implied warranty of
687 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
688 #   Public License for more details.
689 #
690 #   You should have received a copy of the GNU General Public License along
691 #   with this program. If not, see <http://www.gnu.org/licenses/>.
692 #
693 #   As a special exception, the respective Autoconf Macro's copyright owner
694 #   gives unlimited permission to copy, distribute and modify the configure
695 #   scripts that are the output of Autoconf when processing the Macro. You
696 #   need not follow the terms of the GNU General Public License when using
697 #   or distributing such scripts, even though portions of the text of the
698 #   Macro appear in them. The GNU General Public License (GPL) does govern
699 #   all other use of the material that constitutes the Autoconf Macro.
700 #
701 #   This special exception to the GPL applies to versions of the Autoconf
702 #   Macro released by the Autoconf Archive. When you make and distribute a
703 #   modified version of the Autoconf Macro, you may extend this special
704 #   exception to the GPL to apply to your modified version as well.
705
706 #serial 23
707
708 AC_DEFUN([AX_ENABLE_BUILDDIR],[
709 AC_REQUIRE([AC_CANONICAL_HOST])[]dnl
710 AC_REQUIRE([AX_CONFIGURE_ARGS])[]dnl
711 AC_REQUIRE([AM_AUX_DIR_EXPAND])[]dnl
712 AC_BEFORE([$0],[AM_INIT_AUTOMAKE])dnl
713 AS_VAR_PUSHDEF([SUB],[ax_enable_builddir])dnl
714 AS_VAR_PUSHDEF([AUX],[ax_enable_builddir_auxdir])dnl
715 AS_VAR_PUSHDEF([SED],[ax_enable_builddir_sed])dnl
716 SUB="."
717 AC_ARG_ENABLE([builddir], AS_HELP_STRING(
718   [--disable-builddir],[disable automatic build in subdir of sources])
719   ,[SUB="$enableval"], [SUB="auto"])
720 if test ".$ac_srcdir_defaulted" != ".no" ; then
721 if test ".$srcdir" = ".." ; then
722   if test -f config.status ; then
723     AC_MSG_NOTICE(toplevel srcdir already configured... skipping subdir build)
724   else
725     test ".$SUB" = "."  && SUB="."
726     test ".$SUB" = ".no"  && SUB="."
727     test ".$TARGET" = "." && TARGET="$target"
728     test ".$SUB" = ".auto" && SUB="m4_ifval([$1], [$1],[$TARGET])"
729     if test ".$SUB" != ".." ; then    # we know where to go and
730       AS_MKDIR_P([$SUB])
731       echo __.$SUB.__ > $SUB/conftest.tmp
732       cd $SUB
733       if grep __.$SUB.__ conftest.tmp >/dev/null 2>/dev/null ; then
734         rm conftest.tmp
735         AC_MSG_RESULT([continue configure in default builddir "./$SUB"])
736       else
737         AC_MSG_ERROR([could not change to default builddir "./$SUB"])
738       fi
739       srcdir=`echo "$SUB" |
740               sed -e 's,^\./,,;s,[[^/]]$,&/,;s,[[^/]]*/,../,g;s,[[/]]$,,;'`
741       # going to restart from subdirectory location
742       test -f $srcdir/config.log   && mv $srcdir/config.log   .
743       test -f $srcdir/confdefs.h   && mv $srcdir/confdefs.h   .
744       test -f $srcdir/conftest.log && mv $srcdir/conftest.log .
745       test -f $srcdir/$cache_file  && mv $srcdir/$cache_file  .
746       AC_MSG_RESULT(....exec $SHELL $srcdir/[$]0 "--srcdir=$srcdir" "--enable-builddir=$SUB" ${1+"[$]@"})
747       case "[$]0" in # restart
748        [/\\]*) eval $SHELL "'[$]0'" "'--srcdir=$srcdir'" "'--enable-builddir=$SUB'" $ac_configure_args ;;
749        *) eval $SHELL "'$srcdir/[$]0'" "'--srcdir=$srcdir'" "'--enable-builddir=$SUB'" $ac_configure_args ;;
750       esac ; exit $?
751     fi
752   fi
753 fi fi
754 test ".$SUB" = ".auto" && SUB="."
755 dnl ac_path_prog uses "set dummy" to override $@ which would defeat the "exec"
756 AC_PATH_PROG(SED,gsed sed, sed)
757 AUX="$am_aux_dir"
758 AS_VAR_POPDEF([SED])dnl
759 AS_VAR_POPDEF([AUX])dnl
760 AS_VAR_POPDEF([SUB])dnl
761 AC_CONFIG_COMMANDS([buildir],[dnl .............. config.status ..............
762 AS_VAR_PUSHDEF([SUB],[ax_enable_builddir])dnl
763 AS_VAR_PUSHDEF([TOP],[top_srcdir])dnl
764 AS_VAR_PUSHDEF([SRC],[ac_top_srcdir])dnl
765 AS_VAR_PUSHDEF([AUX],[ax_enable_builddir_auxdir])dnl
766 AS_VAR_PUSHDEF([SED],[ax_enable_builddir_sed])dnl
767 pushdef([END],[Makefile.mk])dnl
768 pushdef([_ALL],[ifelse([$3],,[-all],[$3])])dnl
769   SRC="$ax_enable_builddir_srcdir"
770   if test ".$SUB" = ".." ; then
771     if test -f "$TOP/Makefile" ; then
772       AC_MSG_NOTICE([skipping TOP/Makefile - left untouched])
773     else
774       AC_MSG_NOTICE([skipping TOP/Makefile - not created])
775     fi
776   else
777     if test -f "$SRC/Makefile" ; then
778       a=`grep "^VERSION " "$SRC/Makefile"` ; b=`grep "^VERSION " Makefile`
779       test "$a" != "$b" && rm "$SRC/Makefile"
780     fi
781     if test -f "$SRC/Makefile" ; then
782         echo "$SRC/Makefile : $SRC/Makefile.in" > $tmp/conftemp.mk
783         echo "  []@ echo 'REMOVED,,,' >\$[]@" >> $tmp/conftemp.mk
784       eval "${MAKE-make} -f $tmp/conftemp.mk 2>/dev/null >/dev/null"
785       if grep '^REMOVED,,,' "$SRC/Makefile" >/dev/null
786       then rm $SRC/Makefile ; fi
787       cp $tmp/conftemp.mk $SRC/makefiles.mk~      ## DEBUGGING
788     fi
789     if test ! -f "$SRC/Makefile" ; then
790       AC_MSG_NOTICE([create TOP/Makefile guessed from local Makefile])
791       x='`' ; cat >$tmp/conftemp.sed <<_EOF
792 /^\$/n
793 x
794 /^\$/bS
795 x
796 /\\\\\$/{H;d;}
797 {H;s/.*//;x;}
798 bM
799 :S
800 x
801 /\\\\\$/{h;d;}
802 {h;s/.*//;x;}
803 :M
804 s/\\(\\n\\)     /\\1 /g
805 /^      /d
806 /^[[     ]]*[[\\#]]/d
807 /^VPATH *=/d
808 s/^srcdir *=.*/srcdir = ./
809 s/^top_srcdir *=.*/top_srcdir = ./
810 /[[:=]]/!d
811 /^\\./d
812 dnl Now handle rules (i.e. lines containing ":" but not " = ").
813 / = /b
814 / .= /b
815 /:/!b
816 s/:.*/:/
817 s/ /  /g
818 s/ \\([[a-z]][[a-z-]]*[[a-zA-Z0-9]]\\)\\([[ :]]\\)/ \\1 \\1[]_ALL\\2/g
819 s/^\\([[a-z]][[a-z-]]*[[a-zA-Z0-9]]\\)\\([[ :]]\\)/\\1 \\1[]_ALL\\2/
820 s/  / /g
821 /^all all[]_ALL[[ :]]/i\\
822 all-configured : all[]_ALL
823 dnl dist-all exists... and would make for dist-all-all
824 s/ [[a-zA-Z0-9-]]*[]_ALL [[a-zA-Z0-9-]]*[]_ALL[]_ALL//g
825 /[]_ALL[]_ALL/d
826 a\\
827         @ HOST="\$(HOST)\" \\\\\\
828         ; test ".\$\$HOST" = "." && HOST=$x sh $AUX/config.guess $x \\\\\\
829         ; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\
830         ; use=$x basename "\$\@" _ALL $x; n=$x echo \$\$BUILD | wc -w $x \\\\\\
831         ; echo "MAKE \$\$HOST : \$\$n * \$\@"; if test "\$\$n" -eq "0" ; then : \\\\\\
832         ; BUILD=$x grep "^####.*|" Makefile |tail -1| sed -e 's/.*|//' $x ; fi \\\\\\
833         ; test ".\$\$BUILD" = "." && BUILD="." \\\\\\
834         ; test "\$\$use" = "\$\@" && BUILD=$x echo "\$\$BUILD" | tail -1 $x \\\\\\
835         ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\
836         ; (cd "\$\$i" && test ! -f configure && \$(MAKE) \$\$use) || exit; done
837 dnl special rule add-on: "dist" copies the tarball to $(PUB). (source tree)
838 /dist[]_ALL *:/a\\
839         @ HOST="\$(HOST)\" \\\\\\
840         ; test ".\$\$HOST" = "." && HOST=$x sh $AUX/config.guess $x \\\\\\
841         ; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\
842         ; found=$x echo \$\$BUILD | wc -w $x \\\\\\
843         ; echo "MAKE \$\$HOST : \$\$found \$(PACKAGE)-\$(VERSION).tar.*" \\\\\\
844         ; if test "\$\$found" -eq "0" ; then : \\\\\\
845         ; BUILD=$x grep "^#### .*|" Makefile |tail -1| sed -e 's/.*|//' $x \\\\\\
846         ; fi ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\
847         ; for f in \$\$i/\$(PACKAGE)-\$(VERSION).tar.* \\\\\\
848         ; do test -f "\$\$f" && mv "\$\$f" \$(PUB). ; done ; break ; done
849 dnl special rule add-on: "dist-foo" copies all the archives to $(PUB). (source tree)
850 /dist-[[a-zA-Z0-9]]*[]_ALL *:/a\\
851         @ HOST="\$(HOST)\" \\\\\\
852         ; test ".\$\$HOST" = "." && HOST=$x sh ./config.guess $x \\\\\\
853         ; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\
854         ; found=$x echo \$\$BUILD | wc -w $x \\\\\\
855         ; echo "MAKE \$\$HOST : \$\$found \$(PACKAGE)-\$(VERSION).*" \\\\\\
856         ; if test "\$\$found" -eq "0" ; then : \\\\\\
857         ; BUILD=$x grep "^#### .*|" Makefile |tail -1| sed -e 's/.*|//' $x \\\\\\
858         ; fi ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\
859         ; for f in \$\$i/\$(PACKAGE)-\$(VERSION).* \\\\\\
860         ; do test -f "\$\$f" && mv "\$\$f" \$(PUB). ; done ; break ; done
861 dnl special rule add-on: "distclean" removes all local builddirs completely
862 /distclean[]_ALL *:/a\\
863         @ HOST="\$(HOST)\" \\\\\\
864         ; test ".\$\$HOST" = "." && HOST=$x sh $AUX/config.guess $x \\\\\\
865         ; BUILD=$x grep "^#### .*|" Makefile | sed -e 's/.*|//' $x \\\\\\
866         ; use=$x basename "\$\@" _ALL $x; n=$x echo \$\$BUILD | wc -w $x \\\\\\
867         ; echo "MAKE \$\$HOST : \$\$n * \$\@ (all local builds)" \\\\\\
868         ; test ".\$\$BUILD" = "." && BUILD="." \\\\\\
869         ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\
870         ; echo "# rm -r \$\$i"; done ; echo "# (sleep 3)" ; sleep 3 \\\\\\
871         ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\
872         ; echo "\$\$i" | grep "^/" > /dev/null && continue \\\\\\
873         ; echo "\$\$i" | grep "^../" > /dev/null && continue \\\\\\
874         ; echo "rm -r \$\$i"; (rm -r "\$\$i") ; done ; rm Makefile
875 _EOF
876       cp "$tmp/conftemp.sed" "$SRC/makefile.sed~"            ## DEBUGGING
877       $SED -f $tmp/conftemp.sed Makefile >$SRC/Makefile
878       if test -f "$SRC/m4_ifval([$2],[$2],[END])" ; then
879         AC_MSG_NOTICE([extend TOP/Makefile with TOP/m4_ifval([$2],[$2],[END])])
880         cat $SRC/END >>$SRC/Makefile
881       fi ; xxxx="####"
882       echo "$xxxx CONFIGURATIONS FOR TOPLEVEL MAKEFILE: " >>$SRC/Makefile
883       # sanity check
884       if grep '^; echo "MAKE ' $SRC/Makefile >/dev/null ; then
885         AC_MSG_NOTICE([buggy sed found - it deletes tab in "a" text parts])
886         $SED -e '/^@ HOST=/s/^/ /' -e '/^; /s/^/        /' $SRC/Makefile \
887           >$SRC/Makefile~
888         (test -s $SRC/Makefile~ && mv $SRC/Makefile~ $SRC/Makefile) 2>/dev/null
889       fi
890     else
891       xxxx="\\#\\#\\#\\#"
892       # echo "/^$xxxx *$ax_enable_builddir_host /d" >$tmp/conftemp.sed
893       echo "s!^$xxxx [[^|]]* | *$SUB *\$!$xxxx ...... $SUB!" >$tmp/conftemp.sed
894       $SED -f "$tmp/conftemp.sed" "$SRC/Makefile" >$tmp/mkfile.tmp
895         cp "$tmp/conftemp.sed" "$SRC/makefiles.sed~"         ## DEBUGGING
896         cp "$tmp/mkfile.tmp"   "$SRC/makefiles.out~"         ## DEBUGGING
897       if cmp -s "$SRC/Makefile" "$tmp/mkfile.tmp" 2>/dev/null ; then
898         AC_MSG_NOTICE([keeping TOP/Makefile from earlier configure])
899         rm "$tmp/mkfile.tmp"
900       else
901         AC_MSG_NOTICE([reusing TOP/Makefile from earlier configure])
902         mv "$tmp/mkfile.tmp" "$SRC/Makefile"
903       fi
904     fi
905     AC_MSG_NOTICE([build in $SUB (HOST=$ax_enable_builddir_host)])
906     xxxx="####"
907     echo "$xxxx" "$ax_enable_builddir_host" "|$SUB" >>$SRC/Makefile
908   fi
909 popdef([END])dnl
910 AS_VAR_POPDEF([SED])dnl
911 AS_VAR_POPDEF([AUX])dnl
912 AS_VAR_POPDEF([SRC])dnl
913 AS_VAR_POPDEF([TOP])dnl
914 AS_VAR_POPDEF([SUB])dnl
915 ],[dnl
916 ax_enable_builddir_srcdir="$srcdir"                    # $srcdir
917 ax_enable_builddir_host="$HOST"                        # $HOST / $host
918 ax_enable_builddir_version="$VERSION"                  # $VERSION
919 ax_enable_builddir_package="$PACKAGE"                  # $PACKAGE
920 ax_enable_builddir_auxdir="$ax_enable_builddir_auxdir" # $AUX
921 ax_enable_builddir_sed="$ax_enable_builddir_sed"       # $SED
922 ax_enable_builddir="$ax_enable_builddir"               # $SUB
923 ])dnl
924 ])
925
926 # ===========================================================================
927 #      http://www.gnu.org/software/autoconf-archive/ax_gcc_archflag.html
928 # ===========================================================================
929 #
930 # SYNOPSIS
931 #
932 #   AX_GCC_ARCHFLAG([PORTABLE?], [ACTION-SUCCESS], [ACTION-FAILURE])
933 #
934 # DESCRIPTION
935 #
936 #   This macro tries to guess the "native" arch corresponding to the target
937 #   architecture for use with gcc's -march=arch or -mtune=arch flags. If
938 #   found, the cache variable $ax_cv_gcc_archflag is set to this flag and
939 #   ACTION-SUCCESS is executed; otherwise $ax_cv_gcc_archflag is set to
940 #   "unknown" and ACTION-FAILURE is executed. The default ACTION-SUCCESS is
941 #   to add $ax_cv_gcc_archflag to the end of $CFLAGS.
942 #
943 #   PORTABLE? should be either [yes] (default) or [no]. In the former case,
944 #   the flag is set to -mtune (or equivalent) so that the architecture is
945 #   only used for tuning, but the instruction set used is still portable. In
946 #   the latter case, the flag is set to -march (or equivalent) so that
947 #   architecture-specific instructions are enabled.
948 #
949 #   The user can specify --with-gcc-arch=<arch> in order to override the
950 #   macro's choice of architecture, or --without-gcc-arch to disable this.
951 #
952 #   When cross-compiling, or if $CC is not gcc, then ACTION-FAILURE is
953 #   called unless the user specified --with-gcc-arch manually.
954 #
955 #   Requires macros: AX_CHECK_COMPILE_FLAG, AX_GCC_X86_CPUID
956 #
957 #   (The main emphasis here is on recent CPUs, on the principle that doing
958 #   high-performance computing on old hardware is uncommon.)
959 #
960 # LICENSE
961 #
962 #   Copyright (c) 2008 Steven G. Johnson <stevenj@alum.mit.edu>
963 #   Copyright (c) 2008 Matteo Frigo
964 #   Copyright (c) 2012 Tsukasa Oi
965 #
966 #   This program is free software: you can redistribute it and/or modify it
967 #   under the terms of the GNU General Public License as published by the
968 #   Free Software Foundation, either version 3 of the License, or (at your
969 #   option) any later version.
970 #
971 #   This program is distributed in the hope that it will be useful, but
972 #   WITHOUT ANY WARRANTY; without even the implied warranty of
973 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
974 #   Public License for more details.
975 #
976 #   You should have received a copy of the GNU General Public License along
977 #   with this program. If not, see <http://www.gnu.org/licenses/>.
978 #
979 #   As a special exception, the respective Autoconf Macro's copyright owner
980 #   gives unlimited permission to copy, distribute and modify the configure
981 #   scripts that are the output of Autoconf when processing the Macro. You
982 #   need not follow the terms of the GNU General Public License when using
983 #   or distributing such scripts, even though portions of the text of the
984 #   Macro appear in them. The GNU General Public License (GPL) does govern
985 #   all other use of the material that constitutes the Autoconf Macro.
986 #
987 #   This special exception to the GPL applies to versions of the Autoconf
988 #   Macro released by the Autoconf Archive. When you make and distribute a
989 #   modified version of the Autoconf Macro, you may extend this special
990 #   exception to the GPL to apply to your modified version as well.
991
992 #serial 11
993
994 AC_DEFUN([AX_GCC_ARCHFLAG],
995 [AC_REQUIRE([AC_PROG_CC])
996 AC_REQUIRE([AC_CANONICAL_HOST])
997
998 AC_ARG_WITH(gcc-arch, [AS_HELP_STRING([--with-gcc-arch=<arch>], [use architecture <arch> for gcc -march/-mtune, instead of guessing])],
999         ax_gcc_arch=$withval, ax_gcc_arch=yes)
1000
1001 AC_MSG_CHECKING([for gcc architecture flag])
1002 AC_MSG_RESULT([])
1003 AC_CACHE_VAL(ax_cv_gcc_archflag,
1004 [
1005 ax_cv_gcc_archflag="unknown"
1006
1007 if test "$GCC" = yes; then
1008
1009 if test "x$ax_gcc_arch" = xyes; then
1010 ax_gcc_arch=""
1011 if test "$cross_compiling" = no; then
1012 case $host_cpu in
1013   i[[3456]]86*|x86_64*) # use cpuid codes
1014      AX_GCC_X86_CPUID(0)
1015      AX_GCC_X86_CPUID(1)
1016      case $ax_cv_gcc_x86_cpuid_0 in
1017        *:756e6547:*:*) # Intel
1018           case $ax_cv_gcc_x86_cpuid_1 in
1019             *5[[48]]?:*:*:*) ax_gcc_arch="pentium-mmx pentium" ;;
1020             *5??:*:*:*) ax_gcc_arch=pentium ;;
1021             *0?6[[3456]]?:*:*:*) ax_gcc_arch="pentium2 pentiumpro" ;;
1022             *0?6a?:*[[01]]:*:*) ax_gcc_arch="pentium2 pentiumpro" ;;
1023             *0?6a?:*[[234]]:*:*) ax_gcc_arch="pentium3 pentiumpro" ;;
1024             *0?6[[9de]]?:*:*:*) ax_gcc_arch="pentium-m pentium3 pentiumpro" ;;
1025             *0?6[[78b]]?:*:*:*) ax_gcc_arch="pentium3 pentiumpro" ;;
1026             *0?6f?:*:*:*|*1?66?:*:*:*) ax_gcc_arch="core2 pentium-m pentium3 pentiumpro" ;;
1027             *1?6[[7d]]?:*:*:*) ax_gcc_arch="penryn core2 pentium-m pentium3 pentiumpro" ;;
1028             *1?6[[aef]]?:*:*:*|*2?6[[5cef]]?:*:*:*) ax_gcc_arch="corei7 core2 pentium-m pentium3 pentiumpro" ;;
1029             *1?6c?:*:*:*|*[[23]]?66?:*:*:*) ax_gcc_arch="atom core2 pentium-m pentium3 pentiumpro" ;;
1030             *2?6[[ad]]?:*:*:*) ax_gcc_arch="corei7-avx corei7 core2 pentium-m pentium3 pentiumpro" ;;
1031             *0?6??:*:*:*) ax_gcc_arch=pentiumpro ;;
1032             *6??:*:*:*) ax_gcc_arch="core2 pentiumpro" ;;
1033             ?000?f3[[347]]:*:*:*|?000?f4[1347]:*:*:*|?000?f6?:*:*:*)
1034                 case $host_cpu in
1035                   x86_64*) ax_gcc_arch="nocona pentium4 pentiumpro" ;;
1036                   *) ax_gcc_arch="prescott pentium4 pentiumpro" ;;
1037                 esac ;;
1038             ?000?f??:*:*:*) ax_gcc_arch="pentium4 pentiumpro";;
1039           esac ;;
1040        *:68747541:*:*) # AMD
1041           case $ax_cv_gcc_x86_cpuid_1 in
1042             *5[[67]]?:*:*:*) ax_gcc_arch=k6 ;;
1043             *5[[8d]]?:*:*:*) ax_gcc_arch="k6-2 k6" ;;
1044             *5[[9]]?:*:*:*) ax_gcc_arch="k6-3 k6" ;;
1045             *60?:*:*:*) ax_gcc_arch=k7 ;;
1046             *6[[12]]?:*:*:*) ax_gcc_arch="athlon k7" ;;
1047             *6[[34]]?:*:*:*) ax_gcc_arch="athlon-tbird k7" ;;
1048             *67?:*:*:*) ax_gcc_arch="athlon-4 athlon k7" ;;
1049             *6[[68a]]?:*:*:*)
1050                AX_GCC_X86_CPUID(0x80000006) # L2 cache size
1051                case $ax_cv_gcc_x86_cpuid_0x80000006 in
1052                  *:*:*[[1-9a-f]]??????:*) # (L2 = ecx >> 16) >= 256
1053                         ax_gcc_arch="athlon-xp athlon-4 athlon k7" ;;
1054                  *) ax_gcc_arch="athlon-4 athlon k7" ;;
1055                esac ;;
1056             ?00??f[[4cef8b]]?:*:*:*) ax_gcc_arch="athlon64 k8" ;;
1057             ?00??f5?:*:*:*) ax_gcc_arch="opteron k8" ;;
1058             ?00??f7?:*:*:*) ax_gcc_arch="athlon-fx opteron k8" ;;
1059             ?00??f??:*:*:*) ax_gcc_arch="k8" ;;
1060             ?05??f??:*:*:*) ax_gcc_arch="btver1 amdfam10 k8" ;;
1061             ?06??f??:*:*:*) ax_gcc_arch="bdver1 amdfam10 k8" ;;
1062             *f??:*:*:*) ax_gcc_arch="amdfam10 k8" ;;
1063           esac ;;
1064         *:746e6543:*:*) # IDT
1065            case $ax_cv_gcc_x86_cpuid_1 in
1066              *54?:*:*:*) ax_gcc_arch=winchip-c6 ;;
1067              *58?:*:*:*) ax_gcc_arch=winchip2 ;;
1068              *6[[78]]?:*:*:*) ax_gcc_arch=c3 ;;
1069              *69?:*:*:*) ax_gcc_arch="c3-2 c3" ;;
1070            esac ;;
1071      esac
1072      if test x"$ax_gcc_arch" = x; then # fallback
1073         case $host_cpu in
1074           i586*) ax_gcc_arch=pentium ;;
1075           i686*) ax_gcc_arch=pentiumpro ;;
1076         esac
1077      fi
1078      ;;
1079
1080   sparc*)
1081      AC_PATH_PROG([PRTDIAG], [prtdiag], [prtdiag], [$PATH:/usr/platform/`uname -i`/sbin/:/usr/platform/`uname -m`/sbin/])
1082      cputype=`(((grep cpu /proc/cpuinfo | cut -d: -f2) ; ($PRTDIAG -v |grep -i sparc) ; grep -i cpu /var/run/dmesg.boot ) | head -n 1) 2> /dev/null`
1083      cputype=`echo "$cputype" | tr -d ' -' |tr $as_cr_LETTERS $as_cr_letters`
1084      case $cputype in
1085          *ultrasparciv*) ax_gcc_arch="ultrasparc4 ultrasparc3 ultrasparc v9" ;;
1086          *ultrasparciii*) ax_gcc_arch="ultrasparc3 ultrasparc v9" ;;
1087          *ultrasparc*) ax_gcc_arch="ultrasparc v9" ;;
1088          *supersparc*|*tms390z5[[05]]*) ax_gcc_arch="supersparc v8" ;;
1089          *hypersparc*|*rt62[[056]]*) ax_gcc_arch="hypersparc v8" ;;
1090          *cypress*) ax_gcc_arch=cypress ;;
1091      esac ;;
1092
1093   alphaev5) ax_gcc_arch=ev5 ;;
1094   alphaev56) ax_gcc_arch=ev56 ;;
1095   alphapca56) ax_gcc_arch="pca56 ev56" ;;
1096   alphapca57) ax_gcc_arch="pca57 pca56 ev56" ;;
1097   alphaev6) ax_gcc_arch=ev6 ;;
1098   alphaev67) ax_gcc_arch=ev67 ;;
1099   alphaev68) ax_gcc_arch="ev68 ev67" ;;
1100   alphaev69) ax_gcc_arch="ev69 ev68 ev67" ;;
1101   alphaev7) ax_gcc_arch="ev7 ev69 ev68 ev67" ;;
1102   alphaev79) ax_gcc_arch="ev79 ev7 ev69 ev68 ev67" ;;
1103
1104   powerpc*)
1105      cputype=`((grep cpu /proc/cpuinfo | head -n 1 | cut -d: -f2 | cut -d, -f1 | sed 's/ //g') ; /usr/bin/machine ; /bin/machine; grep CPU /var/run/dmesg.boot | head -n 1 | cut -d" " -f2) 2> /dev/null`
1106      cputype=`echo $cputype | sed -e 's/ppc//g;s/ *//g'`
1107      case $cputype in
1108        *750*) ax_gcc_arch="750 G3" ;;
1109        *740[[0-9]]*) ax_gcc_arch="$cputype 7400 G4" ;;
1110        *74[[4-5]][[0-9]]*) ax_gcc_arch="$cputype 7450 G4" ;;
1111        *74[[0-9]][[0-9]]*) ax_gcc_arch="$cputype G4" ;;
1112        *970*) ax_gcc_arch="970 G5 power4";;
1113        *POWER4*|*power4*|*gq*) ax_gcc_arch="power4 970";;
1114        *POWER5*|*power5*|*gr*|*gs*) ax_gcc_arch="power5 power4 970";;
1115        603ev|8240) ax_gcc_arch="$cputype 603e 603";;
1116        *) ax_gcc_arch=$cputype ;;
1117      esac
1118      ax_gcc_arch="$ax_gcc_arch powerpc"
1119      ;;
1120 esac
1121 fi # not cross-compiling
1122 fi # guess arch
1123
1124 if test "x$ax_gcc_arch" != x -a "x$ax_gcc_arch" != xno; then
1125 for arch in $ax_gcc_arch; do
1126   if test "x[]m4_default([$1],yes)" = xyes; then # if we require portable code
1127     flags="-mtune=$arch"
1128     # -mcpu=$arch and m$arch generate nonportable code on every arch except
1129     # x86.  And some other arches (e.g. Alpha) don't accept -mtune.  Grrr.
1130     case $host_cpu in i*86|x86_64*) flags="$flags -mcpu=$arch -m$arch";; esac
1131   else
1132     flags="-march=$arch -mcpu=$arch -m$arch"
1133   fi
1134   for flag in $flags; do
1135     AX_CHECK_COMPILE_FLAG($flag, [ax_cv_gcc_archflag=$flag; break])
1136   done
1137   test "x$ax_cv_gcc_archflag" = xunknown || break
1138 done
1139 fi
1140
1141 fi # $GCC=yes
1142 ])
1143 AC_MSG_CHECKING([for gcc architecture flag])
1144 AC_MSG_RESULT($ax_cv_gcc_archflag)
1145 if test "x$ax_cv_gcc_archflag" = xunknown; then
1146   m4_default([$3],:)
1147 else
1148   m4_default([$2], [CFLAGS="$CFLAGS $ax_cv_gcc_archflag"])
1149 fi
1150 ])
1151
1152 # ===========================================================================
1153 #     http://www.gnu.org/software/autoconf-archive/ax_gcc_x86_cpuid.html
1154 # ===========================================================================
1155 #
1156 # SYNOPSIS
1157 #
1158 #   AX_GCC_X86_CPUID(OP)
1159 #
1160 # DESCRIPTION
1161 #
1162 #   On Pentium and later x86 processors, with gcc or a compiler that has a
1163 #   compatible syntax for inline assembly instructions, run a small program
1164 #   that executes the cpuid instruction with input OP. This can be used to
1165 #   detect the CPU type.
1166 #
1167 #   On output, the values of the eax, ebx, ecx, and edx registers are stored
1168 #   as hexadecimal strings as "eax:ebx:ecx:edx" in the cache variable
1169 #   ax_cv_gcc_x86_cpuid_OP.
1170 #
1171 #   If the cpuid instruction fails (because you are running a
1172 #   cross-compiler, or because you are not using gcc, or because you are on
1173 #   a processor that doesn't have this instruction), ax_cv_gcc_x86_cpuid_OP
1174 #   is set to the string "unknown".
1175 #
1176 #   This macro mainly exists to be used in AX_GCC_ARCHFLAG.
1177 #
1178 # LICENSE
1179 #
1180 #   Copyright (c) 2008 Steven G. Johnson <stevenj@alum.mit.edu>
1181 #   Copyright (c) 2008 Matteo Frigo
1182 #
1183 #   This program is free software: you can redistribute it and/or modify it
1184 #   under the terms of the GNU General Public License as published by the
1185 #   Free Software Foundation, either version 3 of the License, or (at your
1186 #   option) any later version.
1187 #
1188 #   This program is distributed in the hope that it will be useful, but
1189 #   WITHOUT ANY WARRANTY; without even the implied warranty of
1190 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
1191 #   Public License for more details.
1192 #
1193 #   You should have received a copy of the GNU General Public License along
1194 #   with this program. If not, see <http://www.gnu.org/licenses/>.
1195 #
1196 #   As a special exception, the respective Autoconf Macro's copyright owner
1197 #   gives unlimited permission to copy, distribute and modify the configure
1198 #   scripts that are the output of Autoconf when processing the Macro. You
1199 #   need not follow the terms of the GNU General Public License when using
1200 #   or distributing such scripts, even though portions of the text of the
1201 #   Macro appear in them. The GNU General Public License (GPL) does govern
1202 #   all other use of the material that constitutes the Autoconf Macro.
1203 #
1204 #   This special exception to the GPL applies to versions of the Autoconf
1205 #   Macro released by the Autoconf Archive. When you make and distribute a
1206 #   modified version of the Autoconf Macro, you may extend this special
1207 #   exception to the GPL to apply to your modified version as well.
1208
1209 #serial 7
1210
1211 AC_DEFUN([AX_GCC_X86_CPUID],
1212 [AC_REQUIRE([AC_PROG_CC])
1213 AC_LANG_PUSH([C])
1214 AC_CACHE_CHECK(for x86 cpuid $1 output, ax_cv_gcc_x86_cpuid_$1,
1215  [AC_RUN_IFELSE([AC_LANG_PROGRAM([#include <stdio.h>], [
1216      int op = $1, eax, ebx, ecx, edx;
1217      FILE *f;
1218       __asm__("cpuid"
1219         : "=a" (eax), "=b" (ebx), "=c" (ecx), "=d" (edx)
1220         : "a" (op));
1221      f = fopen("conftest_cpuid", "w"); if (!f) return 1;
1222      fprintf(f, "%x:%x:%x:%x\n", eax, ebx, ecx, edx);
1223      fclose(f);
1224      return 0;
1225 ])],
1226      [ax_cv_gcc_x86_cpuid_$1=`cat conftest_cpuid`; rm -f conftest_cpuid],
1227      [ax_cv_gcc_x86_cpuid_$1=unknown; rm -f conftest_cpuid],
1228      [ax_cv_gcc_x86_cpuid_$1=unknown])])
1229 AC_LANG_POP([C])
1230 ])
1231
1232 # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
1233 #
1234 #   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
1235 #                 2006, 2007, 2008, 2009, 2010, 2011 Free Software
1236 #                 Foundation, Inc.
1237 #   Written by Gordon Matzigkeit, 1996
1238 #
1239 # This file is free software; the Free Software Foundation gives
1240 # unlimited permission to copy and/or distribute it, with or without
1241 # modifications, as long as this notice is preserved.
1242
1243 m4_define([_LT_COPYING], [dnl
1244 #   Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
1245 #                 2006, 2007, 2008, 2009, 2010, 2011 Free Software
1246 #                 Foundation, Inc.
1247 #   Written by Gordon Matzigkeit, 1996
1248 #
1249 #   This file is part of GNU Libtool.
1250 #
1251 # GNU Libtool is free software; you can redistribute it and/or
1252 # modify it under the terms of the GNU General Public License as
1253 # published by the Free Software Foundation; either version 2 of
1254 # the License, or (at your option) any later version.
1255 #
1256 # As a special exception to the GNU General Public License,
1257 # if you distribute this file as part of a program or library that
1258 # is built using GNU Libtool, you may include this file under the
1259 # same distribution terms that you use for the rest of that program.
1260 #
1261 # GNU Libtool is distributed in the hope that it will be useful,
1262 # but WITHOUT ANY WARRANTY; without even the implied warranty of
1263 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1264 # GNU General Public License for more details.
1265 #
1266 # You should have received a copy of the GNU General Public License
1267 # along with GNU Libtool; see the file COPYING.  If not, a copy
1268 # can be downloaded from http://www.gnu.org/licenses/gpl.html, or
1269 # obtained by writing to the Free Software Foundation, Inc.,
1270 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
1271 ])
1272
1273 # serial 57 LT_INIT
1274
1275
1276 # LT_PREREQ(VERSION)
1277 # ------------------
1278 # Complain and exit if this libtool version is less that VERSION.
1279 m4_defun([LT_PREREQ],
1280 [m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
1281        [m4_default([$3],
1282                    [m4_fatal([Libtool version $1 or higher is required],
1283                              63)])],
1284        [$2])])
1285
1286
1287 # _LT_CHECK_BUILDDIR
1288 # ------------------
1289 # Complain if the absolute build directory name contains unusual characters
1290 m4_defun([_LT_CHECK_BUILDDIR],
1291 [case `pwd` in
1292   *\ * | *\     *)
1293     AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
1294 esac
1295 ])
1296
1297
1298 # LT_INIT([OPTIONS])
1299 # ------------------
1300 AC_DEFUN([LT_INIT],
1301 [AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
1302 AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
1303 AC_BEFORE([$0], [LT_LANG])dnl
1304 AC_BEFORE([$0], [LT_OUTPUT])dnl
1305 AC_BEFORE([$0], [LTDL_INIT])dnl
1306 m4_require([_LT_CHECK_BUILDDIR])dnl
1307
1308 dnl Autoconf doesn't catch unexpanded LT_ macros by default:
1309 m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
1310 m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
1311 dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
1312 dnl unless we require an AC_DEFUNed macro:
1313 AC_REQUIRE([LTOPTIONS_VERSION])dnl
1314 AC_REQUIRE([LTSUGAR_VERSION])dnl
1315 AC_REQUIRE([LTVERSION_VERSION])dnl
1316 AC_REQUIRE([LTOBSOLETE_VERSION])dnl
1317 m4_require([_LT_PROG_LTMAIN])dnl
1318
1319 _LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
1320
1321 dnl Parse OPTIONS
1322 _LT_SET_OPTIONS([$0], [$1])
1323
1324 # This can be used to rebuild libtool when needed
1325 LIBTOOL_DEPS="$ltmain"
1326
1327 # Always use our own libtool.
1328 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
1329 AC_SUBST(LIBTOOL)dnl
1330
1331 _LT_SETUP
1332
1333 # Only expand once:
1334 m4_define([LT_INIT])
1335 ])# LT_INIT
1336
1337 # Old names:
1338 AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
1339 AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
1340 dnl aclocal-1.4 backwards compatibility:
1341 dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
1342 dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
1343
1344
1345 # _LT_CC_BASENAME(CC)
1346 # -------------------
1347 # Calculate cc_basename.  Skip known compiler wrappers and cross-prefix.
1348 m4_defun([_LT_CC_BASENAME],
1349 [for cc_temp in $1""; do
1350   case $cc_temp in
1351     compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
1352     distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
1353     \-*) ;;
1354     *) break;;
1355   esac
1356 done
1357 cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
1358 ])
1359
1360
1361 # _LT_FILEUTILS_DEFAULTS
1362 # ----------------------
1363 # It is okay to use these file commands and assume they have been set
1364 # sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
1365 m4_defun([_LT_FILEUTILS_DEFAULTS],
1366 [: ${CP="cp -f"}
1367 : ${MV="mv -f"}
1368 : ${RM="rm -f"}
1369 ])# _LT_FILEUTILS_DEFAULTS
1370
1371
1372 # _LT_SETUP
1373 # ---------
1374 m4_defun([_LT_SETUP],
1375 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
1376 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
1377 AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
1378 AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
1379
1380 _LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
1381 dnl
1382 _LT_DECL([], [host_alias], [0], [The host system])dnl
1383 _LT_DECL([], [host], [0])dnl
1384 _LT_DECL([], [host_os], [0])dnl
1385 dnl
1386 _LT_DECL([], [build_alias], [0], [The build system])dnl
1387 _LT_DECL([], [build], [0])dnl
1388 _LT_DECL([], [build_os], [0])dnl
1389 dnl
1390 AC_REQUIRE([AC_PROG_CC])dnl
1391 AC_REQUIRE([LT_PATH_LD])dnl
1392 AC_REQUIRE([LT_PATH_NM])dnl
1393 dnl
1394 AC_REQUIRE([AC_PROG_LN_S])dnl
1395 test -z "$LN_S" && LN_S="ln -s"
1396 _LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
1397 dnl
1398 AC_REQUIRE([LT_CMD_MAX_LEN])dnl
1399 _LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
1400 _LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
1401 dnl
1402 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1403 m4_require([_LT_CHECK_SHELL_FEATURES])dnl
1404 m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
1405 m4_require([_LT_CMD_RELOAD])dnl
1406 m4_require([_LT_CHECK_MAGIC_METHOD])dnl
1407 m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
1408 m4_require([_LT_CMD_OLD_ARCHIVE])dnl
1409 m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
1410 m4_require([_LT_WITH_SYSROOT])dnl
1411
1412 _LT_CONFIG_LIBTOOL_INIT([
1413 # See if we are running on zsh, and set the options which allow our
1414 # commands through without removal of \ escapes INIT.
1415 if test -n "\${ZSH_VERSION+set}" ; then
1416    setopt NO_GLOB_SUBST
1417 fi
1418 ])
1419 if test -n "${ZSH_VERSION+set}" ; then
1420    setopt NO_GLOB_SUBST
1421 fi
1422
1423 _LT_CHECK_OBJDIR
1424
1425 m4_require([_LT_TAG_COMPILER])dnl
1426
1427 case $host_os in
1428 aix3*)
1429   # AIX sometimes has problems with the GCC collect2 program.  For some
1430   # reason, if we set the COLLECT_NAMES environment variable, the problems
1431   # vanish in a puff of smoke.
1432   if test "X${COLLECT_NAMES+set}" != Xset; then
1433     COLLECT_NAMES=
1434     export COLLECT_NAMES
1435   fi
1436   ;;
1437 esac
1438
1439 # Global variables:
1440 ofile=libtool
1441 can_build_shared=yes
1442
1443 # All known linkers require a `.a' archive for static linking (except MSVC,
1444 # which needs '.lib').
1445 libext=a
1446
1447 with_gnu_ld="$lt_cv_prog_gnu_ld"
1448
1449 old_CC="$CC"
1450 old_CFLAGS="$CFLAGS"
1451
1452 # Set sane defaults for various variables
1453 test -z "$CC" && CC=cc
1454 test -z "$LTCC" && LTCC=$CC
1455 test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
1456 test -z "$LD" && LD=ld
1457 test -z "$ac_objext" && ac_objext=o
1458
1459 _LT_CC_BASENAME([$compiler])
1460
1461 # Only perform the check for file, if the check method requires it
1462 test -z "$MAGIC_CMD" && MAGIC_CMD=file
1463 case $deplibs_check_method in
1464 file_magic*)
1465   if test "$file_magic_cmd" = '$MAGIC_CMD'; then
1466     _LT_PATH_MAGIC
1467   fi
1468   ;;
1469 esac
1470
1471 # Use C for the default configuration in the libtool script
1472 LT_SUPPORTED_TAG([CC])
1473 _LT_LANG_C_CONFIG
1474 _LT_LANG_DEFAULT_CONFIG
1475 _LT_CONFIG_COMMANDS
1476 ])# _LT_SETUP
1477
1478
1479 # _LT_PREPARE_SED_QUOTE_VARS
1480 # --------------------------
1481 # Define a few sed substitution that help us do robust quoting.
1482 m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
1483 [# Backslashify metacharacters that are still active within
1484 # double-quoted strings.
1485 sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
1486
1487 # Same as above, but do not quote variable references.
1488 double_quote_subst='s/\([["`\\]]\)/\\\1/g'
1489
1490 # Sed substitution to delay expansion of an escaped shell variable in a
1491 # double_quote_subst'ed string.
1492 delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
1493
1494 # Sed substitution to delay expansion of an escaped single quote.
1495 delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
1496
1497 # Sed substitution to avoid accidental globbing in evaled expressions
1498 no_glob_subst='s/\*/\\\*/g'
1499 ])
1500
1501 # _LT_PROG_LTMAIN
1502 # ---------------
1503 # Note that this code is called both from `configure', and `config.status'
1504 # now that we use AC_CONFIG_COMMANDS to generate libtool.  Notably,
1505 # `config.status' has no value for ac_aux_dir unless we are using Automake,
1506 # so we pass a copy along to make sure it has a sensible value anyway.
1507 m4_defun([_LT_PROG_LTMAIN],
1508 [m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
1509 _LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
1510 ltmain="$ac_aux_dir/ltmain.sh"
1511 ])# _LT_PROG_LTMAIN
1512
1513
1514
1515 # So that we can recreate a full libtool script including additional
1516 # tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
1517 # in macros and then make a single call at the end using the `libtool'
1518 # label.
1519
1520
1521 # _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
1522 # ----------------------------------------
1523 # Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
1524 m4_define([_LT_CONFIG_LIBTOOL_INIT],
1525 [m4_ifval([$1],
1526           [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
1527                      [$1
1528 ])])])
1529
1530 # Initialize.
1531 m4_define([_LT_OUTPUT_LIBTOOL_INIT])
1532
1533
1534 # _LT_CONFIG_LIBTOOL([COMMANDS])
1535 # ------------------------------
1536 # Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
1537 m4_define([_LT_CONFIG_LIBTOOL],
1538 [m4_ifval([$1],
1539           [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
1540                      [$1
1541 ])])])
1542
1543 # Initialize.
1544 m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
1545
1546
1547 # _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
1548 # -----------------------------------------------------
1549 m4_defun([_LT_CONFIG_SAVE_COMMANDS],
1550 [_LT_CONFIG_LIBTOOL([$1])
1551 _LT_CONFIG_LIBTOOL_INIT([$2])
1552 ])
1553
1554
1555 # _LT_FORMAT_COMMENT([COMMENT])
1556 # -----------------------------
1557 # Add leading comment marks to the start of each line, and a trailing
1558 # full-stop to the whole comment if one is not present already.
1559 m4_define([_LT_FORMAT_COMMENT],
1560 [m4_ifval([$1], [
1561 m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
1562               [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
1563 )])
1564
1565
1566
1567
1568
1569 # _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
1570 # -------------------------------------------------------------------
1571 # CONFIGNAME is the name given to the value in the libtool script.
1572 # VARNAME is the (base) name used in the configure script.
1573 # VALUE may be 0, 1 or 2 for a computed quote escaped value based on
1574 # VARNAME.  Any other value will be used directly.
1575 m4_define([_LT_DECL],
1576 [lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
1577     [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
1578         [m4_ifval([$1], [$1], [$2])])
1579     lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
1580     m4_ifval([$4],
1581         [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
1582     lt_dict_add_subkey([lt_decl_dict], [$2],
1583         [tagged?], [m4_ifval([$5], [yes], [no])])])
1584 ])
1585
1586
1587 # _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
1588 # --------------------------------------------------------
1589 m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
1590
1591
1592 # lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
1593 # ------------------------------------------------
1594 m4_define([lt_decl_tag_varnames],
1595 [_lt_decl_filter([tagged?], [yes], $@)])
1596
1597
1598 # _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
1599 # ---------------------------------------------------------
1600 m4_define([_lt_decl_filter],
1601 [m4_case([$#],
1602   [0], [m4_fatal([$0: too few arguments: $#])],
1603   [1], [m4_fatal([$0: too few arguments: $#: $1])],
1604   [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
1605   [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
1606   [lt_dict_filter([lt_decl_dict], $@)])[]dnl
1607 ])
1608
1609
1610 # lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
1611 # --------------------------------------------------
1612 m4_define([lt_decl_quote_varnames],
1613 [_lt_decl_filter([value], [1], $@)])
1614
1615
1616 # lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
1617 # ---------------------------------------------------
1618 m4_define([lt_decl_dquote_varnames],
1619 [_lt_decl_filter([value], [2], $@)])
1620
1621
1622 # lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
1623 # ---------------------------------------------------
1624 m4_define([lt_decl_varnames_tagged],
1625 [m4_assert([$# <= 2])dnl
1626 _$0(m4_quote(m4_default([$1], [[, ]])),
1627     m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
1628     m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
1629 m4_define([_lt_decl_varnames_tagged],
1630 [m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
1631
1632
1633 # lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
1634 # ------------------------------------------------
1635 m4_define([lt_decl_all_varnames],
1636 [_$0(m4_quote(m4_default([$1], [[, ]])),
1637      m4_if([$2], [],
1638            m4_quote(lt_decl_varnames),
1639         m4_quote(m4_shift($@))))[]dnl
1640 ])
1641 m4_define([_lt_decl_all_varnames],
1642 [lt_join($@, lt_decl_varnames_tagged([$1],
1643                         lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
1644 ])
1645
1646
1647 # _LT_CONFIG_STATUS_DECLARE([VARNAME])
1648 # ------------------------------------
1649 # Quote a variable value, and forward it to `config.status' so that its
1650 # declaration there will have the same value as in `configure'.  VARNAME
1651 # must have a single quote delimited value for this to work.
1652 m4_define([_LT_CONFIG_STATUS_DECLARE],
1653 [$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
1654
1655
1656 # _LT_CONFIG_STATUS_DECLARATIONS
1657 # ------------------------------
1658 # We delimit libtool config variables with single quotes, so when
1659 # we write them to config.status, we have to be sure to quote all
1660 # embedded single quotes properly.  In configure, this macro expands
1661 # each variable declared with _LT_DECL (and _LT_TAGDECL) into:
1662 #
1663 #    <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
1664 m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
1665 [m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
1666     [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
1667
1668
1669 # _LT_LIBTOOL_TAGS
1670 # ----------------
1671 # Output comment and list of tags supported by the script
1672 m4_defun([_LT_LIBTOOL_TAGS],
1673 [_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
1674 available_tags="_LT_TAGS"dnl
1675 ])
1676
1677
1678 # _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
1679 # -----------------------------------
1680 # Extract the dictionary values for VARNAME (optionally with TAG) and
1681 # expand to a commented shell variable setting:
1682 #
1683 #    # Some comment about what VAR is for.
1684 #    visible_name=$lt_internal_name
1685 m4_define([_LT_LIBTOOL_DECLARE],
1686 [_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
1687                                            [description])))[]dnl
1688 m4_pushdef([_libtool_name],
1689     m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
1690 m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
1691     [0], [_libtool_name=[$]$1],
1692     [1], [_libtool_name=$lt_[]$1],
1693     [2], [_libtool_name=$lt_[]$1],
1694     [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
1695 m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
1696 ])
1697
1698
1699 # _LT_LIBTOOL_CONFIG_VARS
1700 # -----------------------
1701 # Produce commented declarations of non-tagged libtool config variables
1702 # suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
1703 # script.  Tagged libtool config variables (even for the LIBTOOL CONFIG
1704 # section) are produced by _LT_LIBTOOL_TAG_VARS.
1705 m4_defun([_LT_LIBTOOL_CONFIG_VARS],
1706 [m4_foreach([_lt_var],
1707     m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
1708     [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
1709
1710
1711 # _LT_LIBTOOL_TAG_VARS(TAG)
1712 # -------------------------
1713 m4_define([_LT_LIBTOOL_TAG_VARS],
1714 [m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
1715     [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
1716
1717
1718 # _LT_TAGVAR(VARNAME, [TAGNAME])
1719 # ------------------------------
1720 m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
1721
1722
1723 # _LT_CONFIG_COMMANDS
1724 # -------------------
1725 # Send accumulated output to $CONFIG_STATUS.  Thanks to the lists of
1726 # variables for single and double quote escaping we saved from calls
1727 # to _LT_DECL, we can put quote escaped variables declarations
1728 # into `config.status', and then the shell code to quote escape them in
1729 # for loops in `config.status'.  Finally, any additional code accumulated
1730 # from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
1731 m4_defun([_LT_CONFIG_COMMANDS],
1732 [AC_PROVIDE_IFELSE([LT_OUTPUT],
1733         dnl If the libtool generation code has been placed in $CONFIG_LT,
1734         dnl instead of duplicating it all over again into config.status,
1735         dnl then we will have config.status run $CONFIG_LT later, so it
1736         dnl needs to know what name is stored there:
1737         [AC_CONFIG_COMMANDS([libtool],
1738             [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
1739     dnl If the libtool generation code is destined for config.status,
1740     dnl expand the accumulated commands and init code now:
1741     [AC_CONFIG_COMMANDS([libtool],
1742         [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
1743 ])#_LT_CONFIG_COMMANDS
1744
1745
1746 # Initialize.
1747 m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
1748 [
1749
1750 # The HP-UX ksh and POSIX shell print the target directory to stdout
1751 # if CDPATH is set.
1752 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
1753
1754 sed_quote_subst='$sed_quote_subst'
1755 double_quote_subst='$double_quote_subst'
1756 delay_variable_subst='$delay_variable_subst'
1757 _LT_CONFIG_STATUS_DECLARATIONS
1758 LTCC='$LTCC'
1759 LTCFLAGS='$LTCFLAGS'
1760 compiler='$compiler_DEFAULT'
1761
1762 # A function that is used when there is no print builtin or printf.
1763 func_fallback_echo ()
1764 {
1765   eval 'cat <<_LTECHO_EOF
1766 \$[]1
1767 _LTECHO_EOF'
1768 }
1769
1770 # Quote evaled strings.
1771 for var in lt_decl_all_varnames([[ \
1772 ]], lt_decl_quote_varnames); do
1773     case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
1774     *[[\\\\\\\`\\"\\\$]]*)
1775       eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
1776       ;;
1777     *)
1778       eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
1779       ;;
1780     esac
1781 done
1782
1783 # Double-quote double-evaled strings.
1784 for var in lt_decl_all_varnames([[ \
1785 ]], lt_decl_dquote_varnames); do
1786     case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
1787     *[[\\\\\\\`\\"\\\$]]*)
1788       eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
1789       ;;
1790     *)
1791       eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
1792       ;;
1793     esac
1794 done
1795
1796 _LT_OUTPUT_LIBTOOL_INIT
1797 ])
1798
1799 # _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
1800 # ------------------------------------
1801 # Generate a child script FILE with all initialization necessary to
1802 # reuse the environment learned by the parent script, and make the
1803 # file executable.  If COMMENT is supplied, it is inserted after the
1804 # `#!' sequence but before initialization text begins.  After this
1805 # macro, additional text can be appended to FILE to form the body of
1806 # the child script.  The macro ends with non-zero status if the
1807 # file could not be fully written (such as if the disk is full).
1808 m4_ifdef([AS_INIT_GENERATED],
1809 [m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
1810 [m4_defun([_LT_GENERATED_FILE_INIT],
1811 [m4_require([AS_PREPARE])]dnl
1812 [m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
1813 [lt_write_fail=0
1814 cat >$1 <<_ASEOF || lt_write_fail=1
1815 #! $SHELL
1816 # Generated by $as_me.
1817 $2
1818 SHELL=\${CONFIG_SHELL-$SHELL}
1819 export SHELL
1820 _ASEOF
1821 cat >>$1 <<\_ASEOF || lt_write_fail=1
1822 AS_SHELL_SANITIZE
1823 _AS_PREPARE
1824 exec AS_MESSAGE_FD>&1
1825 _ASEOF
1826 test $lt_write_fail = 0 && chmod +x $1[]dnl
1827 m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
1828
1829 # LT_OUTPUT
1830 # ---------
1831 # This macro allows early generation of the libtool script (before
1832 # AC_OUTPUT is called), incase it is used in configure for compilation
1833 # tests.
1834 AC_DEFUN([LT_OUTPUT],
1835 [: ${CONFIG_LT=./config.lt}
1836 AC_MSG_NOTICE([creating $CONFIG_LT])
1837 _LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
1838 [# Run this file to recreate a libtool stub with the current configuration.])
1839
1840 cat >>"$CONFIG_LT" <<\_LTEOF
1841 lt_cl_silent=false
1842 exec AS_MESSAGE_LOG_FD>>config.log
1843 {
1844   echo
1845   AS_BOX([Running $as_me.])
1846 } >&AS_MESSAGE_LOG_FD
1847
1848 lt_cl_help="\
1849 \`$as_me' creates a local libtool stub from the current configuration,
1850 for use in further configure time tests before the real libtool is
1851 generated.
1852
1853 Usage: $[0] [[OPTIONS]]
1854
1855   -h, --help      print this help, then exit
1856   -V, --version   print version number, then exit
1857   -q, --quiet     do not print progress messages
1858   -d, --debug     don't remove temporary files
1859
1860 Report bugs to <bug-libtool@gnu.org>."
1861
1862 lt_cl_version="\
1863 m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
1864 m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
1865 configured by $[0], generated by m4_PACKAGE_STRING.
1866
1867 Copyright (C) 2011 Free Software Foundation, Inc.
1868 This config.lt script is free software; the Free Software Foundation
1869 gives unlimited permision to copy, distribute and modify it."
1870
1871 while test $[#] != 0
1872 do
1873   case $[1] in
1874     --version | --v* | -V )
1875       echo "$lt_cl_version"; exit 0 ;;
1876     --help | --h* | -h )
1877       echo "$lt_cl_help"; exit 0 ;;
1878     --debug | --d* | -d )
1879       debug=: ;;
1880     --quiet | --q* | --silent | --s* | -q )
1881       lt_cl_silent=: ;;
1882
1883     -*) AC_MSG_ERROR([unrecognized option: $[1]
1884 Try \`$[0] --help' for more information.]) ;;
1885
1886     *) AC_MSG_ERROR([unrecognized argument: $[1]
1887 Try \`$[0] --help' for more information.]) ;;
1888   esac
1889   shift
1890 done
1891
1892 if $lt_cl_silent; then
1893   exec AS_MESSAGE_FD>/dev/null
1894 fi
1895 _LTEOF
1896
1897 cat >>"$CONFIG_LT" <<_LTEOF
1898 _LT_OUTPUT_LIBTOOL_COMMANDS_INIT
1899 _LTEOF
1900
1901 cat >>"$CONFIG_LT" <<\_LTEOF
1902 AC_MSG_NOTICE([creating $ofile])
1903 _LT_OUTPUT_LIBTOOL_COMMANDS
1904 AS_EXIT(0)
1905 _LTEOF
1906 chmod +x "$CONFIG_LT"
1907
1908 # configure is writing to config.log, but config.lt does its own redirection,
1909 # appending to config.log, which fails on DOS, as config.log is still kept
1910 # open by configure.  Here we exec the FD to /dev/null, effectively closing
1911 # config.log, so it can be properly (re)opened and appended to by config.lt.
1912 lt_cl_success=:
1913 test "$silent" = yes &&
1914   lt_config_lt_args="$lt_config_lt_args --quiet"
1915 exec AS_MESSAGE_LOG_FD>/dev/null
1916 $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
1917 exec AS_MESSAGE_LOG_FD>>config.log
1918 $lt_cl_success || AS_EXIT(1)
1919 ])# LT_OUTPUT
1920
1921
1922 # _LT_CONFIG(TAG)
1923 # ---------------
1924 # If TAG is the built-in tag, create an initial libtool script with a
1925 # default configuration from the untagged config vars.  Otherwise add code
1926 # to config.status for appending the configuration named by TAG from the
1927 # matching tagged config vars.
1928 m4_defun([_LT_CONFIG],
1929 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1930 _LT_CONFIG_SAVE_COMMANDS([
1931   m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
1932   m4_if(_LT_TAG, [C], [
1933     # See if we are running on zsh, and set the options which allow our
1934     # commands through without removal of \ escapes.
1935     if test -n "${ZSH_VERSION+set}" ; then
1936       setopt NO_GLOB_SUBST
1937     fi
1938
1939     cfgfile="${ofile}T"
1940     trap "$RM \"$cfgfile\"; exit 1" 1 2 15
1941     $RM "$cfgfile"
1942
1943     cat <<_LT_EOF >> "$cfgfile"
1944 #! $SHELL
1945
1946 # `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
1947 # Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
1948 # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
1949 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
1950 #
1951 _LT_COPYING
1952 _LT_LIBTOOL_TAGS
1953
1954 # ### BEGIN LIBTOOL CONFIG
1955 _LT_LIBTOOL_CONFIG_VARS
1956 _LT_LIBTOOL_TAG_VARS
1957 # ### END LIBTOOL CONFIG
1958
1959 _LT_EOF
1960
1961   case $host_os in
1962   aix3*)
1963     cat <<\_LT_EOF >> "$cfgfile"
1964 # AIX sometimes has problems with the GCC collect2 program.  For some
1965 # reason, if we set the COLLECT_NAMES environment variable, the problems
1966 # vanish in a puff of smoke.
1967 if test "X${COLLECT_NAMES+set}" != Xset; then
1968   COLLECT_NAMES=
1969   export COLLECT_NAMES
1970 fi
1971 _LT_EOF
1972     ;;
1973   esac
1974
1975   _LT_PROG_LTMAIN
1976
1977   # We use sed instead of cat because bash on DJGPP gets confused if
1978   # if finds mixed CR/LF and LF-only lines.  Since sed operates in
1979   # text mode, it properly converts lines to CR/LF.  This bash problem
1980   # is reportedly fixed, but why not run on old versions too?
1981   sed '$q' "$ltmain" >> "$cfgfile" \
1982      || (rm -f "$cfgfile"; exit 1)
1983
1984   _LT_PROG_REPLACE_SHELLFNS
1985
1986    mv -f "$cfgfile" "$ofile" ||
1987     (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
1988   chmod +x "$ofile"
1989 ],
1990 [cat <<_LT_EOF >> "$ofile"
1991
1992 dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
1993 dnl in a comment (ie after a #).
1994 # ### BEGIN LIBTOOL TAG CONFIG: $1
1995 _LT_LIBTOOL_TAG_VARS(_LT_TAG)
1996 # ### END LIBTOOL TAG CONFIG: $1
1997 _LT_EOF
1998 ])dnl /m4_if
1999 ],
2000 [m4_if([$1], [], [
2001     PACKAGE='$PACKAGE'
2002     VERSION='$VERSION'
2003     TIMESTAMP='$TIMESTAMP'
2004     RM='$RM'
2005     ofile='$ofile'], [])
2006 ])dnl /_LT_CONFIG_SAVE_COMMANDS
2007 ])# _LT_CONFIG
2008
2009
2010 # LT_SUPPORTED_TAG(TAG)
2011 # ---------------------
2012 # Trace this macro to discover what tags are supported by the libtool
2013 # --tag option, using:
2014 #    autoconf --trace 'LT_SUPPORTED_TAG:$1'
2015 AC_DEFUN([LT_SUPPORTED_TAG], [])
2016
2017
2018 # C support is built-in for now
2019 m4_define([_LT_LANG_C_enabled], [])
2020 m4_define([_LT_TAGS], [])
2021
2022
2023 # LT_LANG(LANG)
2024 # -------------
2025 # Enable libtool support for the given language if not already enabled.
2026 AC_DEFUN([LT_LANG],
2027 [AC_BEFORE([$0], [LT_OUTPUT])dnl
2028 m4_case([$1],
2029   [C],                  [_LT_LANG(C)],
2030   [C++],                [_LT_LANG(CXX)],
2031   [Go],                 [_LT_LANG(GO)],
2032   [Java],               [_LT_LANG(GCJ)],
2033   [Fortran 77],         [_LT_LANG(F77)],
2034   [Fortran],            [_LT_LANG(FC)],
2035   [Windows Resource],   [_LT_LANG(RC)],
2036   [m4_ifdef([_LT_LANG_]$1[_CONFIG],
2037     [_LT_LANG($1)],
2038     [m4_fatal([$0: unsupported language: "$1"])])])dnl
2039 ])# LT_LANG
2040
2041
2042 # _LT_LANG(LANGNAME)
2043 # ------------------
2044 m4_defun([_LT_LANG],
2045 [m4_ifdef([_LT_LANG_]$1[_enabled], [],
2046   [LT_SUPPORTED_TAG([$1])dnl
2047   m4_append([_LT_TAGS], [$1 ])dnl
2048   m4_define([_LT_LANG_]$1[_enabled], [])dnl
2049   _LT_LANG_$1_CONFIG($1)])dnl
2050 ])# _LT_LANG
2051
2052
2053 m4_ifndef([AC_PROG_GO], [
2054 # NOTE: This macro has been submitted for inclusion into   #
2055 #  GNU Autoconf as AC_PROG_GO.  When it is available in    #
2056 #  a released version of Autoconf we should remove this    #
2057 #  macro and use it instead.                               #
2058 m4_defun([AC_PROG_GO],
2059 [AC_LANG_PUSH(Go)dnl
2060 AC_ARG_VAR([GOC],     [Go compiler command])dnl
2061 AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
2062 _AC_ARG_VAR_LDFLAGS()dnl
2063 AC_CHECK_TOOL(GOC, gccgo)
2064 if test -z "$GOC"; then
2065   if test -n "$ac_tool_prefix"; then
2066     AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
2067   fi
2068 fi
2069 if test -z "$GOC"; then
2070   AC_CHECK_PROG(GOC, gccgo, gccgo, false)
2071 fi
2072 ])#m4_defun
2073 ])#m4_ifndef
2074
2075
2076 # _LT_LANG_DEFAULT_CONFIG
2077 # -----------------------
2078 m4_defun([_LT_LANG_DEFAULT_CONFIG],
2079 [AC_PROVIDE_IFELSE([AC_PROG_CXX],
2080   [LT_LANG(CXX)],
2081   [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
2082
2083 AC_PROVIDE_IFELSE([AC_PROG_F77],
2084   [LT_LANG(F77)],
2085   [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
2086
2087 AC_PROVIDE_IFELSE([AC_PROG_FC],
2088   [LT_LANG(FC)],
2089   [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
2090
2091 dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
2092 dnl pulling things in needlessly.
2093 AC_PROVIDE_IFELSE([AC_PROG_GCJ],
2094   [LT_LANG(GCJ)],
2095   [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
2096     [LT_LANG(GCJ)],
2097     [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
2098       [LT_LANG(GCJ)],
2099       [m4_ifdef([AC_PROG_GCJ],
2100         [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
2101        m4_ifdef([A][M_PROG_GCJ],
2102         [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
2103        m4_ifdef([LT_PROG_GCJ],
2104         [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
2105
2106 AC_PROVIDE_IFELSE([AC_PROG_GO],
2107   [LT_LANG(GO)],
2108   [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
2109
2110 AC_PROVIDE_IFELSE([LT_PROG_RC],
2111   [LT_LANG(RC)],
2112   [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
2113 ])# _LT_LANG_DEFAULT_CONFIG
2114
2115 # Obsolete macros:
2116 AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
2117 AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
2118 AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
2119 AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
2120 AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
2121 dnl aclocal-1.4 backwards compatibility:
2122 dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
2123 dnl AC_DEFUN([AC_LIBTOOL_F77], [])
2124 dnl AC_DEFUN([AC_LIBTOOL_FC], [])
2125 dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
2126 dnl AC_DEFUN([AC_LIBTOOL_RC], [])
2127
2128
2129 # _LT_TAG_COMPILER
2130 # ----------------
2131 m4_defun([_LT_TAG_COMPILER],
2132 [AC_REQUIRE([AC_PROG_CC])dnl
2133
2134 _LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
2135 _LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
2136 _LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
2137 _LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
2138
2139 # If no C compiler was specified, use CC.
2140 LTCC=${LTCC-"$CC"}
2141
2142 # If no C compiler flags were specified, use CFLAGS.
2143 LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
2144
2145 # Allow CC to be a program name with arguments.
2146 compiler=$CC
2147 ])# _LT_TAG_COMPILER
2148
2149
2150 # _LT_COMPILER_BOILERPLATE
2151 # ------------------------
2152 # Check for compiler boilerplate output or warnings with
2153 # the simple compiler test code.
2154 m4_defun([_LT_COMPILER_BOILERPLATE],
2155 [m4_require([_LT_DECL_SED])dnl
2156 ac_outfile=conftest.$ac_objext
2157 echo "$lt_simple_compile_test_code" >conftest.$ac_ext
2158 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
2159 _lt_compiler_boilerplate=`cat conftest.err`
2160 $RM conftest*
2161 ])# _LT_COMPILER_BOILERPLATE
2162
2163
2164 # _LT_LINKER_BOILERPLATE
2165 # ----------------------
2166 # Check for linker boilerplate output or warnings with
2167 # the simple link test code.
2168 m4_defun([_LT_LINKER_BOILERPLATE],
2169 [m4_require([_LT_DECL_SED])dnl
2170 ac_outfile=conftest.$ac_objext
2171 echo "$lt_simple_link_test_code" >conftest.$ac_ext
2172 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
2173 _lt_linker_boilerplate=`cat conftest.err`
2174 $RM -r conftest*
2175 ])# _LT_LINKER_BOILERPLATE
2176
2177 # _LT_REQUIRED_DARWIN_CHECKS
2178 # -------------------------
2179 m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
2180   case $host_os in
2181     rhapsody* | darwin*)
2182     AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
2183     AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
2184     AC_CHECK_TOOL([LIPO], [lipo], [:])
2185     AC_CHECK_TOOL([OTOOL], [otool], [:])
2186     AC_CHECK_TOOL([OTOOL64], [otool64], [:])
2187     _LT_DECL([], [DSYMUTIL], [1],
2188       [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
2189     _LT_DECL([], [NMEDIT], [1],
2190       [Tool to change global to local symbols on Mac OS X])
2191     _LT_DECL([], [LIPO], [1],
2192       [Tool to manipulate fat objects and archives on Mac OS X])
2193     _LT_DECL([], [OTOOL], [1],
2194       [ldd/readelf like tool for Mach-O binaries on Mac OS X])
2195     _LT_DECL([], [OTOOL64], [1],
2196       [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
2197
2198     AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
2199       [lt_cv_apple_cc_single_mod=no
2200       if test -z "${LT_MULTI_MODULE}"; then
2201         # By default we will add the -single_module flag. You can override
2202         # by either setting the environment variable LT_MULTI_MODULE
2203         # non-empty at configure time, or by adding -multi_module to the
2204         # link flags.
2205         rm -rf libconftest.dylib*
2206         echo "int foo(void){return 1;}" > conftest.c
2207         echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
2208 -dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
2209         $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
2210           -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
2211         _lt_result=$?
2212         # If there is a non-empty error log, and "single_module"
2213         # appears in it, assume the flag caused a linker warning
2214         if test -s conftest.err && $GREP single_module conftest.err; then
2215           cat conftest.err >&AS_MESSAGE_LOG_FD
2216         # Otherwise, if the output was created with a 0 exit code from
2217         # the compiler, it worked.
2218         elif test -f libconftest.dylib && test $_lt_result -eq 0; then
2219           lt_cv_apple_cc_single_mod=yes
2220         else
2221           cat conftest.err >&AS_MESSAGE_LOG_FD
2222         fi
2223         rm -rf libconftest.dylib*
2224         rm -f conftest.*
2225       fi])
2226
2227     AC_CACHE_CHECK([for -exported_symbols_list linker flag],
2228       [lt_cv_ld_exported_symbols_list],
2229       [lt_cv_ld_exported_symbols_list=no
2230       save_LDFLAGS=$LDFLAGS
2231       echo "_main" > conftest.sym
2232       LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
2233       AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2234         [lt_cv_ld_exported_symbols_list=yes],
2235         [lt_cv_ld_exported_symbols_list=no])
2236         LDFLAGS="$save_LDFLAGS"
2237     ])
2238
2239     AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
2240       [lt_cv_ld_force_load=no
2241       cat > conftest.c << _LT_EOF
2242 int forced_loaded() { return 2;}
2243 _LT_EOF
2244       echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
2245       $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
2246       echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
2247       $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
2248       echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
2249       $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
2250       cat > conftest.c << _LT_EOF
2251 int main() { return 0;}
2252 _LT_EOF
2253       echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
2254       $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
2255       _lt_result=$?
2256       if test -s conftest.err && $GREP force_load conftest.err; then
2257         cat conftest.err >&AS_MESSAGE_LOG_FD
2258       elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then
2259         lt_cv_ld_force_load=yes
2260       else
2261         cat conftest.err >&AS_MESSAGE_LOG_FD
2262       fi
2263         rm -f conftest.err libconftest.a conftest conftest.c
2264         rm -rf conftest.dSYM
2265     ])
2266     case $host_os in
2267     rhapsody* | darwin1.[[012]])
2268       _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
2269     darwin1.*)
2270       _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
2271     darwin*) # darwin 5.x on
2272       # if running on 10.5 or later, the deployment target defaults
2273       # to the OS version, if on x86, and 10.4, the deployment
2274       # target defaults to 10.4. Don't you love it?
2275       case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
2276         10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
2277           _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
2278         10.[[012]]*)
2279           _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
2280         10.*)
2281           _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
2282       esac
2283     ;;
2284   esac
2285     if test "$lt_cv_apple_cc_single_mod" = "yes"; then
2286       _lt_dar_single_mod='$single_module'
2287     fi
2288     if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
2289       _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
2290     else
2291       _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
2292     fi
2293     if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
2294       _lt_dsymutil='~$DSYMUTIL $lib || :'
2295     else
2296       _lt_dsymutil=
2297     fi
2298     ;;
2299   esac
2300 ])
2301
2302
2303 # _LT_DARWIN_LINKER_FEATURES([TAG])
2304 # ---------------------------------
2305 # Checks for linker and compiler features on darwin
2306 m4_defun([_LT_DARWIN_LINKER_FEATURES],
2307 [
2308   m4_require([_LT_REQUIRED_DARWIN_CHECKS])
2309   _LT_TAGVAR(archive_cmds_need_lc, $1)=no
2310   _LT_TAGVAR(hardcode_direct, $1)=no
2311   _LT_TAGVAR(hardcode_automatic, $1)=yes
2312   _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
2313   if test "$lt_cv_ld_force_load" = "yes"; then
2314     _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test  -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
2315     m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
2316                   [FC],  [_LT_TAGVAR(compiler_needs_object, $1)=yes])
2317   else
2318     _LT_TAGVAR(whole_archive_flag_spec, $1)=''
2319   fi
2320   _LT_TAGVAR(link_all_deplibs, $1)=yes
2321   _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
2322   case $cc_basename in
2323      ifort*) _lt_dar_can_shared=yes ;;
2324      *) _lt_dar_can_shared=$GCC ;;
2325   esac
2326   if test "$_lt_dar_can_shared" = "yes"; then
2327     output_verbose_link_cmd=func_echo_all
2328     _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}"
2329     _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
2330     _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}"
2331     _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}"
2332     m4_if([$1], [CXX],
2333 [   if test "$lt_cv_apple_cc_single_mod" != "yes"; then
2334       _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}"
2335       _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}"
2336     fi
2337 ],[])
2338   else
2339   _LT_TAGVAR(ld_shlibs, $1)=no
2340   fi
2341 ])
2342
2343 # _LT_SYS_MODULE_PATH_AIX([TAGNAME])
2344 # ----------------------------------
2345 # Links a minimal program and checks the executable
2346 # for the system default hardcoded library path. In most cases,
2347 # this is /usr/lib:/lib, but when the MPI compilers are used
2348 # the location of the communication and MPI libs are included too.
2349 # If we don't find anything, use the default library path according
2350 # to the aix ld manual.
2351 # Store the results from the different compilers for each TAGNAME.
2352 # Allow to override them for all tags through lt_cv_aix_libpath.
2353 m4_defun([_LT_SYS_MODULE_PATH_AIX],
2354 [m4_require([_LT_DECL_SED])dnl
2355 if test "${lt_cv_aix_libpath+set}" = set; then
2356   aix_libpath=$lt_cv_aix_libpath
2357 else
2358   AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
2359   [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
2360   lt_aix_libpath_sed='[
2361       /Import File Strings/,/^$/ {
2362           /^0/ {
2363               s/^0  *\([^ ]*\) *$/\1/
2364               p
2365           }
2366       }]'
2367   _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
2368   # Check for a 64-bit object if we didn't find anything.
2369   if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
2370     _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
2371   fi],[])
2372   if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
2373     _LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib"
2374   fi
2375   ])
2376   aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
2377 fi
2378 ])# _LT_SYS_MODULE_PATH_AIX
2379
2380
2381 # _LT_SHELL_INIT(ARG)
2382 # -------------------
2383 m4_define([_LT_SHELL_INIT],
2384 [m4_divert_text([M4SH-INIT], [$1
2385 ])])# _LT_SHELL_INIT
2386
2387
2388
2389 # _LT_PROG_ECHO_BACKSLASH
2390 # -----------------------
2391 # Find how we can fake an echo command that does not interpret backslash.
2392 # In particular, with Autoconf 2.60 or later we add some code to the start
2393 # of the generated configure script which will find a shell with a builtin
2394 # printf (which we can use as an echo command).
2395 m4_defun([_LT_PROG_ECHO_BACKSLASH],
2396 [ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
2397 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
2398 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
2399
2400 AC_MSG_CHECKING([how to print strings])
2401 # Test print first, because it will be a builtin if present.
2402 if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
2403    test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
2404   ECHO='print -r --'
2405 elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
2406   ECHO='printf %s\n'
2407 else
2408   # Use this function as a fallback that always works.
2409   func_fallback_echo ()
2410   {
2411     eval 'cat <<_LTECHO_EOF
2412 $[]1
2413 _LTECHO_EOF'
2414   }
2415   ECHO='func_fallback_echo'
2416 fi
2417
2418 # func_echo_all arg...
2419 # Invoke $ECHO with all args, space-separated.
2420 func_echo_all ()
2421 {
2422     $ECHO "$*" 
2423 }
2424
2425 case "$ECHO" in
2426   printf*) AC_MSG_RESULT([printf]) ;;
2427   print*) AC_MSG_RESULT([print -r]) ;;
2428   *) AC_MSG_RESULT([cat]) ;;
2429 esac
2430
2431 m4_ifdef([_AS_DETECT_SUGGESTED],
2432 [_AS_DETECT_SUGGESTED([
2433   test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
2434     ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
2435     ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
2436     ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
2437     PATH=/empty FPATH=/empty; export PATH FPATH
2438     test "X`printf %s $ECHO`" = "X$ECHO" \
2439       || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
2440
2441 _LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
2442 _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
2443 ])# _LT_PROG_ECHO_BACKSLASH
2444
2445
2446 # _LT_WITH_SYSROOT
2447 # ----------------
2448 AC_DEFUN([_LT_WITH_SYSROOT],
2449 [AC_MSG_CHECKING([for sysroot])
2450 AC_ARG_WITH([sysroot],
2451 [  --with-sysroot[=DIR] Search for dependent libraries within DIR
2452                         (or the compiler's sysroot if not specified).],
2453 [], [with_sysroot=no])
2454
2455 dnl lt_sysroot will always be passed unquoted.  We quote it here
2456 dnl in case the user passed a directory name.
2457 lt_sysroot=
2458 case ${with_sysroot} in #(
2459  yes)
2460    if test "$GCC" = yes; then
2461      lt_sysroot=`$CC --print-sysroot 2>/dev/null`
2462    fi
2463    ;; #(
2464  /*)
2465    lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
2466    ;; #(
2467  no|'')
2468    ;; #(
2469  *)
2470    AC_MSG_RESULT([${with_sysroot}])
2471    AC_MSG_ERROR([The sysroot must be an absolute path.])
2472    ;;
2473 esac
2474
2475  AC_MSG_RESULT([${lt_sysroot:-no}])
2476 _LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
2477 [dependent libraries, and in which our libraries should be installed.])])
2478
2479 # _LT_ENABLE_LOCK
2480 # ---------------
2481 m4_defun([_LT_ENABLE_LOCK],
2482 [AC_ARG_ENABLE([libtool-lock],
2483   [AS_HELP_STRING([--disable-libtool-lock],
2484     [avoid locking (might break parallel builds)])])
2485 test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
2486
2487 # Some flags need to be propagated to the compiler or linker for good
2488 # libtool support.
2489 case $host in
2490 ia64-*-hpux*)
2491   # Find out which ABI we are using.
2492   echo 'int i;' > conftest.$ac_ext
2493   if AC_TRY_EVAL(ac_compile); then
2494     case `/usr/bin/file conftest.$ac_objext` in
2495       *ELF-32*)
2496         HPUX_IA64_MODE="32"
2497         ;;
2498       *ELF-64*)
2499         HPUX_IA64_MODE="64"
2500         ;;
2501     esac
2502   fi
2503   rm -rf conftest*
2504   ;;
2505 *-*-irix6*)
2506   # Find out which ABI we are using.
2507   echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
2508   if AC_TRY_EVAL(ac_compile); then
2509     if test "$lt_cv_prog_gnu_ld" = yes; then
2510       case `/usr/bin/file conftest.$ac_objext` in
2511         *32-bit*)
2512           LD="${LD-ld} -melf32bsmip"
2513           ;;
2514         *N32*)
2515           LD="${LD-ld} -melf32bmipn32"
2516           ;;
2517         *64-bit*)
2518           LD="${LD-ld} -melf64bmip"
2519         ;;
2520       esac
2521     else
2522       case `/usr/bin/file conftest.$ac_objext` in
2523         *32-bit*)
2524           LD="${LD-ld} -32"
2525           ;;
2526         *N32*)
2527           LD="${LD-ld} -n32"
2528           ;;
2529         *64-bit*)
2530           LD="${LD-ld} -64"
2531           ;;
2532       esac
2533     fi
2534   fi
2535   rm -rf conftest*
2536   ;;
2537
2538 x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
2539 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
2540   # Find out which ABI we are using.
2541   echo 'int i;' > conftest.$ac_ext
2542   if AC_TRY_EVAL(ac_compile); then
2543     case `/usr/bin/file conftest.o` in
2544       *32-bit*)
2545         case $host in
2546           x86_64-*kfreebsd*-gnu)
2547             LD="${LD-ld} -m elf_i386_fbsd"
2548             ;;
2549           x86_64-*linux*)
2550             LD="${LD-ld} -m elf_i386"
2551             ;;
2552           ppc64-*linux*|powerpc64-*linux*)
2553             LD="${LD-ld} -m elf32ppclinux"
2554             ;;
2555           s390x-*linux*)
2556             LD="${LD-ld} -m elf_s390"
2557             ;;
2558           sparc64-*linux*)
2559             LD="${LD-ld} -m elf32_sparc"
2560             ;;
2561         esac
2562         ;;
2563       *64-bit*)
2564         case $host in
2565           x86_64-*kfreebsd*-gnu)
2566             LD="${LD-ld} -m elf_x86_64_fbsd"
2567             ;;
2568           x86_64-*linux*)
2569             LD="${LD-ld} -m elf_x86_64"
2570             ;;
2571           ppc*-*linux*|powerpc*-*linux*)
2572             LD="${LD-ld} -m elf64ppc"
2573             ;;
2574           s390*-*linux*|s390*-*tpf*)
2575             LD="${LD-ld} -m elf64_s390"
2576             ;;
2577           sparc*-*linux*)
2578             LD="${LD-ld} -m elf64_sparc"
2579             ;;
2580         esac
2581         ;;
2582     esac
2583   fi
2584   rm -rf conftest*
2585   ;;
2586
2587 *-*-sco3.2v5*)
2588   # On SCO OpenServer 5, we need -belf to get full-featured binaries.
2589   SAVE_CFLAGS="$CFLAGS"
2590   CFLAGS="$CFLAGS -belf"
2591   AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
2592     [AC_LANG_PUSH(C)
2593      AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
2594      AC_LANG_POP])
2595   if test x"$lt_cv_cc_needs_belf" != x"yes"; then
2596     # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
2597     CFLAGS="$SAVE_CFLAGS"
2598   fi
2599   ;;
2600 *-*solaris*)
2601   # Find out which ABI we are using.
2602   echo 'int i;' > conftest.$ac_ext
2603   if AC_TRY_EVAL(ac_compile); then
2604     case `/usr/bin/file conftest.o` in
2605     *64-bit*)
2606       case $lt_cv_prog_gnu_ld in
2607       yes*)
2608         case $host in
2609         i?86-*-solaris*)
2610           LD="${LD-ld} -m elf_x86_64"
2611           ;;
2612         sparc*-*-solaris*)
2613           LD="${LD-ld} -m elf64_sparc"
2614           ;;
2615         esac
2616         # GNU ld 2.21 introduced _sol2 emulations.  Use them if available.
2617         if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
2618           LD="${LD-ld}_sol2"
2619         fi
2620         ;;
2621       *)
2622         if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
2623           LD="${LD-ld} -64"
2624         fi
2625         ;;
2626       esac
2627       ;;
2628     esac
2629   fi
2630   rm -rf conftest*
2631   ;;
2632 esac
2633
2634 need_locks="$enable_libtool_lock"
2635 ])# _LT_ENABLE_LOCK
2636
2637
2638 # _LT_PROG_AR
2639 # -----------
2640 m4_defun([_LT_PROG_AR],
2641 [AC_CHECK_TOOLS(AR, [ar], false)
2642 : ${AR=ar}
2643 : ${AR_FLAGS=cru}
2644 _LT_DECL([], [AR], [1], [The archiver])
2645 _LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
2646
2647 AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
2648   [lt_cv_ar_at_file=no
2649    AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
2650      [echo conftest.$ac_objext > conftest.lst
2651       lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
2652       AC_TRY_EVAL([lt_ar_try])
2653       if test "$ac_status" -eq 0; then
2654         # Ensure the archiver fails upon bogus file names.
2655         rm -f conftest.$ac_objext libconftest.a
2656         AC_TRY_EVAL([lt_ar_try])
2657         if test "$ac_status" -ne 0; then
2658           lt_cv_ar_at_file=@
2659         fi
2660       fi
2661       rm -f conftest.* libconftest.a
2662      ])
2663   ])
2664
2665 if test "x$lt_cv_ar_at_file" = xno; then
2666   archiver_list_spec=
2667 else
2668   archiver_list_spec=$lt_cv_ar_at_file
2669 fi
2670 _LT_DECL([], [archiver_list_spec], [1],
2671   [How to feed a file listing to the archiver])
2672 ])# _LT_PROG_AR
2673
2674
2675 # _LT_CMD_OLD_ARCHIVE
2676 # -------------------
2677 m4_defun([_LT_CMD_OLD_ARCHIVE],
2678 [_LT_PROG_AR
2679
2680 AC_CHECK_TOOL(STRIP, strip, :)
2681 test -z "$STRIP" && STRIP=:
2682 _LT_DECL([], [STRIP], [1], [A symbol stripping program])
2683
2684 AC_CHECK_TOOL(RANLIB, ranlib, :)
2685 test -z "$RANLIB" && RANLIB=:
2686 _LT_DECL([], [RANLIB], [1],
2687     [Commands used to install an old-style archive])
2688
2689 # Determine commands to create old-style static archives.
2690 old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
2691 old_postinstall_cmds='chmod 644 $oldlib'
2692 old_postuninstall_cmds=
2693
2694 if test -n "$RANLIB"; then
2695   case $host_os in
2696   openbsd*)
2697     old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
2698     ;;
2699   *)
2700     old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
2701     ;;
2702   esac
2703   old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
2704 fi
2705
2706 case $host_os in
2707   darwin*)
2708     lock_old_archive_extraction=yes ;;
2709   *)
2710     lock_old_archive_extraction=no ;;
2711 esac
2712 _LT_DECL([], [old_postinstall_cmds], [2])
2713 _LT_DECL([], [old_postuninstall_cmds], [2])
2714 _LT_TAGDECL([], [old_archive_cmds], [2],
2715     [Commands used to build an old-style archive])
2716 _LT_DECL([], [lock_old_archive_extraction], [0],
2717     [Whether to use a lock for old archive extraction])
2718 ])# _LT_CMD_OLD_ARCHIVE
2719
2720
2721 # _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
2722 #               [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
2723 # ----------------------------------------------------------------
2724 # Check whether the given compiler option works
2725 AC_DEFUN([_LT_COMPILER_OPTION],
2726 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2727 m4_require([_LT_DECL_SED])dnl
2728 AC_CACHE_CHECK([$1], [$2],
2729   [$2=no
2730    m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
2731    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
2732    lt_compiler_flag="$3"
2733    # Insert the option either (1) after the last *FLAGS variable, or
2734    # (2) before a word containing "conftest.", or (3) at the end.
2735    # Note that $ac_compile itself does not contain backslashes and begins
2736    # with a dollar sign (not a hyphen), so the echo should work correctly.
2737    # The option is referenced via a variable to avoid confusing sed.
2738    lt_compile=`echo "$ac_compile" | $SED \
2739    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
2740    -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
2741    -e 's:$: $lt_compiler_flag:'`
2742    (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
2743    (eval "$lt_compile" 2>conftest.err)
2744    ac_status=$?
2745    cat conftest.err >&AS_MESSAGE_LOG_FD
2746    echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
2747    if (exit $ac_status) && test -s "$ac_outfile"; then
2748      # The compiler can only warn and ignore the option if not recognized
2749      # So say no if there are warnings other than the usual output.
2750      $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
2751      $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
2752      if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
2753        $2=yes
2754      fi
2755    fi
2756    $RM conftest*
2757 ])
2758
2759 if test x"[$]$2" = xyes; then
2760     m4_if([$5], , :, [$5])
2761 else
2762     m4_if([$6], , :, [$6])
2763 fi
2764 ])# _LT_COMPILER_OPTION
2765
2766 # Old name:
2767 AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
2768 dnl aclocal-1.4 backwards compatibility:
2769 dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
2770
2771
2772 # _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
2773 #                  [ACTION-SUCCESS], [ACTION-FAILURE])
2774 # ----------------------------------------------------
2775 # Check whether the given linker option works
2776 AC_DEFUN([_LT_LINKER_OPTION],
2777 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2778 m4_require([_LT_DECL_SED])dnl
2779 AC_CACHE_CHECK([$1], [$2],
2780   [$2=no
2781    save_LDFLAGS="$LDFLAGS"
2782    LDFLAGS="$LDFLAGS $3"
2783    echo "$lt_simple_link_test_code" > conftest.$ac_ext
2784    if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
2785      # The linker can only warn and ignore the option if not recognized
2786      # So say no if there are warnings
2787      if test -s conftest.err; then
2788        # Append any errors to the config.log.
2789        cat conftest.err 1>&AS_MESSAGE_LOG_FD
2790        $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
2791        $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
2792        if diff conftest.exp conftest.er2 >/dev/null; then
2793          $2=yes
2794        fi
2795      else
2796        $2=yes
2797      fi
2798    fi
2799    $RM -r conftest*
2800    LDFLAGS="$save_LDFLAGS"
2801 ])
2802
2803 if test x"[$]$2" = xyes; then
2804     m4_if([$4], , :, [$4])
2805 else
2806     m4_if([$5], , :, [$5])
2807 fi
2808 ])# _LT_LINKER_OPTION
2809
2810 # Old name:
2811 AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
2812 dnl aclocal-1.4 backwards compatibility:
2813 dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
2814
2815
2816 # LT_CMD_MAX_LEN
2817 #---------------
2818 AC_DEFUN([LT_CMD_MAX_LEN],
2819 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
2820 # find the maximum length of command line arguments
2821 AC_MSG_CHECKING([the maximum length of command line arguments])
2822 AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
2823   i=0
2824   teststring="ABCD"
2825
2826   case $build_os in
2827   msdosdjgpp*)
2828     # On DJGPP, this test can blow up pretty badly due to problems in libc
2829     # (any single argument exceeding 2000 bytes causes a buffer overrun
2830     # during glob expansion).  Even if it were fixed, the result of this
2831     # check would be larger than it should be.
2832     lt_cv_sys_max_cmd_len=12288;    # 12K is about right
2833     ;;
2834
2835   gnu*)
2836     # Under GNU Hurd, this test is not required because there is
2837     # no limit to the length of command line arguments.
2838     # Libtool will interpret -1 as no limit whatsoever
2839     lt_cv_sys_max_cmd_len=-1;
2840     ;;
2841
2842   cygwin* | mingw* | cegcc*)
2843     # On Win9x/ME, this test blows up -- it succeeds, but takes
2844     # about 5 minutes as the teststring grows exponentially.
2845     # Worse, since 9x/ME are not pre-emptively multitasking,
2846     # you end up with a "frozen" computer, even though with patience
2847     # the test eventually succeeds (with a max line length of 256k).
2848     # Instead, let's just punt: use the minimum linelength reported by
2849     # all of the supported platforms: 8192 (on NT/2K/XP).
2850     lt_cv_sys_max_cmd_len=8192;
2851     ;;
2852
2853   mint*)
2854     # On MiNT this can take a long time and run out of memory.
2855     lt_cv_sys_max_cmd_len=8192;
2856     ;;
2857
2858   amigaos*)
2859     # On AmigaOS with pdksh, this test takes hours, literally.
2860     # So we just punt and use a minimum line length of 8192.
2861     lt_cv_sys_max_cmd_len=8192;
2862     ;;
2863
2864   netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
2865     # This has been around since 386BSD, at least.  Likely further.
2866     if test -x /sbin/sysctl; then
2867       lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
2868     elif test -x /usr/sbin/sysctl; then
2869       lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
2870     else
2871       lt_cv_sys_max_cmd_len=65536       # usable default for all BSDs
2872     fi
2873     # And add a safety zone
2874     lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
2875     lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
2876     ;;
2877
2878   interix*)
2879     # We know the value 262144 and hardcode it with a safety zone (like BSD)
2880     lt_cv_sys_max_cmd_len=196608
2881     ;;
2882
2883   os2*)
2884     # The test takes a long time on OS/2.
2885     lt_cv_sys_max_cmd_len=8192
2886     ;;
2887
2888   osf*)
2889     # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
2890     # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
2891     # nice to cause kernel panics so lets avoid the loop below.
2892     # First set a reasonable default.
2893     lt_cv_sys_max_cmd_len=16384
2894     #
2895     if test -x /sbin/sysconfig; then
2896       case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
2897         *1*) lt_cv_sys_max_cmd_len=-1 ;;
2898       esac
2899     fi
2900     ;;
2901   sco3.2v5*)
2902     lt_cv_sys_max_cmd_len=102400
2903     ;;
2904   sysv5* | sco5v6* | sysv4.2uw2*)
2905     kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
2906     if test -n "$kargmax"; then
2907       lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[         ]]//'`
2908     else
2909       lt_cv_sys_max_cmd_len=32768
2910     fi
2911     ;;
2912   *)
2913     lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
2914     if test -n "$lt_cv_sys_max_cmd_len"; then
2915       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
2916       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
2917     else
2918       # Make teststring a little bigger before we do anything with it.
2919       # a 1K string should be a reasonable start.
2920       for i in 1 2 3 4 5 6 7 8 ; do
2921         teststring=$teststring$teststring
2922       done
2923       SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
2924       # If test is not a shell built-in, we'll probably end up computing a
2925       # maximum length that is only half of the actual maximum length, but
2926       # we can't tell.
2927       while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \
2928                  = "X$teststring$teststring"; } >/dev/null 2>&1 &&
2929               test $i != 17 # 1/2 MB should be enough
2930       do
2931         i=`expr $i + 1`
2932         teststring=$teststring$teststring
2933       done
2934       # Only check the string length outside the loop.
2935       lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
2936       teststring=
2937       # Add a significant safety factor because C++ compilers can tack on
2938       # massive amounts of additional arguments before passing them to the
2939       # linker.  It appears as though 1/2 is a usable value.
2940       lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
2941     fi
2942     ;;
2943   esac
2944 ])
2945 if test -n $lt_cv_sys_max_cmd_len ; then
2946   AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
2947 else
2948   AC_MSG_RESULT(none)
2949 fi
2950 max_cmd_len=$lt_cv_sys_max_cmd_len
2951 _LT_DECL([], [max_cmd_len], [0],
2952     [What is the maximum length of a command?])
2953 ])# LT_CMD_MAX_LEN
2954
2955 # Old name:
2956 AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
2957 dnl aclocal-1.4 backwards compatibility:
2958 dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
2959
2960
2961 # _LT_HEADER_DLFCN
2962 # ----------------
2963 m4_defun([_LT_HEADER_DLFCN],
2964 [AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
2965 ])# _LT_HEADER_DLFCN
2966
2967
2968 # _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
2969 #                      ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
2970 # ----------------------------------------------------------------
2971 m4_defun([_LT_TRY_DLOPEN_SELF],
2972 [m4_require([_LT_HEADER_DLFCN])dnl
2973 if test "$cross_compiling" = yes; then :
2974   [$4]
2975 else
2976   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
2977   lt_status=$lt_dlunknown
2978   cat > conftest.$ac_ext <<_LT_EOF
2979 [#line $LINENO "configure"
2980 #include "confdefs.h"
2981
2982 #if HAVE_DLFCN_H
2983 #include <dlfcn.h>
2984 #endif
2985
2986 #include <stdio.h>
2987
2988 #ifdef RTLD_GLOBAL
2989 #  define LT_DLGLOBAL           RTLD_GLOBAL
2990 #else
2991 #  ifdef DL_GLOBAL
2992 #    define LT_DLGLOBAL         DL_GLOBAL
2993 #  else
2994 #    define LT_DLGLOBAL         0
2995 #  endif
2996 #endif
2997
2998 /* We may have to define LT_DLLAZY_OR_NOW in the command line if we
2999    find out it does not work in some platform. */
3000 #ifndef LT_DLLAZY_OR_NOW
3001 #  ifdef RTLD_LAZY
3002 #    define LT_DLLAZY_OR_NOW            RTLD_LAZY
3003 #  else
3004 #    ifdef DL_LAZY
3005 #      define LT_DLLAZY_OR_NOW          DL_LAZY
3006 #    else
3007 #      ifdef RTLD_NOW
3008 #        define LT_DLLAZY_OR_NOW        RTLD_NOW
3009 #      else
3010 #        ifdef DL_NOW
3011 #          define LT_DLLAZY_OR_NOW      DL_NOW
3012 #        else
3013 #          define LT_DLLAZY_OR_NOW      0
3014 #        endif
3015 #      endif
3016 #    endif
3017 #  endif
3018 #endif
3019
3020 /* When -fvisbility=hidden is used, assume the code has been annotated
3021    correspondingly for the symbols needed.  */
3022 #if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
3023 int fnord () __attribute__((visibility("default")));
3024 #endif
3025
3026 int fnord () { return 42; }
3027 int main ()
3028 {
3029   void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
3030   int status = $lt_dlunknown;
3031
3032   if (self)
3033     {
3034       if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
3035       else
3036         {
3037           if (dlsym( self,"_fnord"))  status = $lt_dlneed_uscore;
3038           else puts (dlerror ());
3039         }
3040       /* dlclose (self); */
3041     }
3042   else
3043     puts (dlerror ());
3044
3045   return status;
3046 }]
3047 _LT_EOF
3048   if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
3049     (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
3050     lt_status=$?
3051     case x$lt_status in
3052       x$lt_dlno_uscore) $1 ;;
3053       x$lt_dlneed_uscore) $2 ;;
3054       x$lt_dlunknown|x*) $3 ;;
3055     esac
3056   else :
3057     # compilation failed
3058     $3
3059   fi
3060 fi
3061 rm -fr conftest*
3062 ])# _LT_TRY_DLOPEN_SELF
3063
3064
3065 # LT_SYS_DLOPEN_SELF
3066 # ------------------
3067 AC_DEFUN([LT_SYS_DLOPEN_SELF],
3068 [m4_require([_LT_HEADER_DLFCN])dnl
3069 if test "x$enable_dlopen" != xyes; then
3070   enable_dlopen=unknown
3071   enable_dlopen_self=unknown
3072   enable_dlopen_self_static=unknown
3073 else
3074   lt_cv_dlopen=no
3075   lt_cv_dlopen_libs=
3076
3077   case $host_os in
3078   beos*)
3079     lt_cv_dlopen="load_add_on"
3080     lt_cv_dlopen_libs=
3081     lt_cv_dlopen_self=yes
3082     ;;
3083
3084   mingw* | pw32* | cegcc*)
3085     lt_cv_dlopen="LoadLibrary"
3086     lt_cv_dlopen_libs=
3087     ;;
3088
3089   cygwin*)
3090     lt_cv_dlopen="dlopen"
3091     lt_cv_dlopen_libs=
3092     ;;
3093
3094   darwin*)
3095   # if libdl is installed we need to link against it
3096     AC_CHECK_LIB([dl], [dlopen],
3097                 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
3098     lt_cv_dlopen="dyld"
3099     lt_cv_dlopen_libs=
3100     lt_cv_dlopen_self=yes
3101     ])
3102     ;;
3103
3104   *)
3105     AC_CHECK_FUNC([shl_load],
3106           [lt_cv_dlopen="shl_load"],
3107       [AC_CHECK_LIB([dld], [shl_load],
3108             [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
3109         [AC_CHECK_FUNC([dlopen],
3110               [lt_cv_dlopen="dlopen"],
3111           [AC_CHECK_LIB([dl], [dlopen],
3112                 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
3113             [AC_CHECK_LIB([svld], [dlopen],
3114                   [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
3115               [AC_CHECK_LIB([dld], [dld_link],
3116                     [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
3117               ])
3118             ])
3119           ])
3120         ])
3121       ])
3122     ;;
3123   esac
3124
3125   if test "x$lt_cv_dlopen" != xno; then
3126     enable_dlopen=yes
3127   else
3128     enable_dlopen=no
3129   fi
3130
3131   case $lt_cv_dlopen in
3132   dlopen)
3133     save_CPPFLAGS="$CPPFLAGS"
3134     test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
3135
3136     save_LDFLAGS="$LDFLAGS"
3137     wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
3138
3139     save_LIBS="$LIBS"
3140     LIBS="$lt_cv_dlopen_libs $LIBS"
3141
3142     AC_CACHE_CHECK([whether a program can dlopen itself],
3143           lt_cv_dlopen_self, [dnl
3144           _LT_TRY_DLOPEN_SELF(
3145             lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
3146             lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
3147     ])
3148
3149     if test "x$lt_cv_dlopen_self" = xyes; then
3150       wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
3151       AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
3152           lt_cv_dlopen_self_static, [dnl
3153           _LT_TRY_DLOPEN_SELF(
3154             lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
3155             lt_cv_dlopen_self_static=no,  lt_cv_dlopen_self_static=cross)
3156       ])
3157     fi
3158
3159     CPPFLAGS="$save_CPPFLAGS"
3160     LDFLAGS="$save_LDFLAGS"
3161     LIBS="$save_LIBS"
3162     ;;
3163   esac
3164
3165   case $lt_cv_dlopen_self in
3166   yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
3167   *) enable_dlopen_self=unknown ;;
3168   esac
3169
3170   case $lt_cv_dlopen_self_static in
3171   yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
3172   *) enable_dlopen_self_static=unknown ;;
3173   esac
3174 fi
3175 _LT_DECL([dlopen_support], [enable_dlopen], [0],
3176          [Whether dlopen is supported])
3177 _LT_DECL([dlopen_self], [enable_dlopen_self], [0],
3178          [Whether dlopen of programs is supported])
3179 _LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
3180          [Whether dlopen of statically linked programs is supported])
3181 ])# LT_SYS_DLOPEN_SELF
3182
3183 # Old name:
3184 AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
3185 dnl aclocal-1.4 backwards compatibility:
3186 dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
3187
3188
3189 # _LT_COMPILER_C_O([TAGNAME])
3190 # ---------------------------
3191 # Check to see if options -c and -o are simultaneously supported by compiler.
3192 # This macro does not hard code the compiler like AC_PROG_CC_C_O.
3193 m4_defun([_LT_COMPILER_C_O],
3194 [m4_require([_LT_DECL_SED])dnl
3195 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
3196 m4_require([_LT_TAG_COMPILER])dnl
3197 AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
3198   [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
3199   [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
3200    $RM -r conftest 2>/dev/null
3201    mkdir conftest
3202    cd conftest
3203    mkdir out
3204    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
3205
3206    lt_compiler_flag="-o out/conftest2.$ac_objext"
3207    # Insert the option either (1) after the last *FLAGS variable, or
3208    # (2) before a word containing "conftest.", or (3) at the end.
3209    # Note that $ac_compile itself does not contain backslashes and begins
3210    # with a dollar sign (not a hyphen), so the echo should work correctly.
3211    lt_compile=`echo "$ac_compile" | $SED \
3212    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
3213    -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
3214    -e 's:$: $lt_compiler_flag:'`
3215    (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
3216    (eval "$lt_compile" 2>out/conftest.err)
3217    ac_status=$?
3218    cat out/conftest.err >&AS_MESSAGE_LOG_FD
3219    echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
3220    if (exit $ac_status) && test -s out/conftest2.$ac_objext
3221    then
3222      # The compiler can only warn and ignore the option if not recognized
3223      # So say no if there are warnings
3224      $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
3225      $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
3226      if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
3227        _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
3228      fi
3229    fi
3230    chmod u+w . 2>&AS_MESSAGE_LOG_FD
3231    $RM conftest*
3232    # SGI C++ compiler will create directory out/ii_files/ for
3233    # template instantiation
3234    test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
3235    $RM out/* && rmdir out
3236    cd ..
3237    $RM -r conftest
3238    $RM conftest*
3239 ])
3240 _LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
3241         [Does compiler simultaneously support -c and -o options?])
3242 ])# _LT_COMPILER_C_O
3243
3244
3245 # _LT_COMPILER_FILE_LOCKS([TAGNAME])
3246 # ----------------------------------
3247 # Check to see if we can do hard links to lock some files if needed
3248 m4_defun([_LT_COMPILER_FILE_LOCKS],
3249 [m4_require([_LT_ENABLE_LOCK])dnl
3250 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
3251 _LT_COMPILER_C_O([$1])
3252
3253 hard_links="nottested"
3254 if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
3255   # do not overwrite the value of need_locks provided by the user
3256   AC_MSG_CHECKING([if we can lock with hard links])
3257   hard_links=yes
3258   $RM conftest*
3259   ln conftest.a conftest.b 2>/dev/null && hard_links=no
3260   touch conftest.a
3261   ln conftest.a conftest.b 2>&5 || hard_links=no
3262   ln conftest.a conftest.b 2>/dev/null && hard_links=no
3263   AC_MSG_RESULT([$hard_links])
3264   if test "$hard_links" = no; then
3265     AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
3266     need_locks=warn
3267   fi
3268 else
3269   need_locks=no
3270 fi
3271 _LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
3272 ])# _LT_COMPILER_FILE_LOCKS
3273
3274
3275 # _LT_CHECK_OBJDIR
3276 # ----------------
3277 m4_defun([_LT_CHECK_OBJDIR],
3278 [AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
3279 [rm -f .libs 2>/dev/null
3280 mkdir .libs 2>/dev/null
3281 if test -d .libs; then
3282   lt_cv_objdir=.libs
3283 else
3284   # MS-DOS does not allow filenames that begin with a dot.
3285   lt_cv_objdir=_libs
3286 fi
3287 rmdir .libs 2>/dev/null])
3288 objdir=$lt_cv_objdir
3289 _LT_DECL([], [objdir], [0],
3290          [The name of the directory that contains temporary libtool files])dnl
3291 m4_pattern_allow([LT_OBJDIR])dnl
3292 AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
3293   [Define to the sub-directory in which libtool stores uninstalled libraries.])
3294 ])# _LT_CHECK_OBJDIR
3295
3296
3297 # _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
3298 # --------------------------------------
3299 # Check hardcoding attributes.
3300 m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
3301 [AC_MSG_CHECKING([how to hardcode library paths into programs])
3302 _LT_TAGVAR(hardcode_action, $1)=
3303 if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
3304    test -n "$_LT_TAGVAR(runpath_var, $1)" ||
3305    test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
3306
3307   # We can hardcode non-existent directories.
3308   if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
3309      # If the only mechanism to avoid hardcoding is shlibpath_var, we
3310      # have to relink, otherwise we might link with an installed library
3311      # when we should be linking with a yet-to-be-installed one
3312      ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
3313      test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
3314     # Linking always hardcodes the temporary library directory.
3315     _LT_TAGVAR(hardcode_action, $1)=relink
3316   else
3317     # We can link without hardcoding, and we can hardcode nonexisting dirs.
3318     _LT_TAGVAR(hardcode_action, $1)=immediate
3319   fi
3320 else
3321   # We cannot hardcode anything, or else we can only hardcode existing
3322   # directories.
3323   _LT_TAGVAR(hardcode_action, $1)=unsupported
3324 fi
3325 AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
3326
3327 if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
3328    test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
3329   # Fast installation is not supported
3330   enable_fast_install=no
3331 elif test "$shlibpath_overrides_runpath" = yes ||
3332      test "$enable_shared" = no; then
3333   # Fast installation is not necessary
3334   enable_fast_install=needless
3335 fi
3336 _LT_TAGDECL([], [hardcode_action], [0],
3337     [How to hardcode a shared library path into an executable])
3338 ])# _LT_LINKER_HARDCODE_LIBPATH
3339
3340
3341 # _LT_CMD_STRIPLIB
3342 # ----------------
3343 m4_defun([_LT_CMD_STRIPLIB],
3344 [m4_require([_LT_DECL_EGREP])
3345 striplib=
3346 old_striplib=
3347 AC_MSG_CHECKING([whether stripping libraries is possible])
3348 if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
3349   test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
3350   test -z "$striplib" && striplib="$STRIP --strip-unneeded"
3351   AC_MSG_RESULT([yes])
3352 else
3353 # FIXME - insert some real tests, host_os isn't really good enough
3354   case $host_os in
3355   darwin*)
3356     if test -n "$STRIP" ; then
3357       striplib="$STRIP -x"
3358       old_striplib="$STRIP -S"
3359       AC_MSG_RESULT([yes])
3360     else
3361       AC_MSG_RESULT([no])
3362     fi
3363     ;;
3364   *)
3365     AC_MSG_RESULT([no])
3366     ;;
3367   esac
3368 fi
3369 _LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
3370 _LT_DECL([], [striplib], [1])
3371 ])# _LT_CMD_STRIPLIB
3372
3373
3374 # _LT_SYS_DYNAMIC_LINKER([TAG])
3375 # -----------------------------
3376 # PORTME Fill in your ld.so characteristics
3377 m4_defun([_LT_SYS_DYNAMIC_LINKER],
3378 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
3379 m4_require([_LT_DECL_EGREP])dnl
3380 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
3381 m4_require([_LT_DECL_OBJDUMP])dnl
3382 m4_require([_LT_DECL_SED])dnl
3383 m4_require([_LT_CHECK_SHELL_FEATURES])dnl
3384 AC_MSG_CHECKING([dynamic linker characteristics])
3385 m4_if([$1],
3386         [], [
3387 if test "$GCC" = yes; then
3388   case $host_os in
3389     darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
3390     *) lt_awk_arg="/^libraries:/" ;;
3391   esac
3392   case $host_os in
3393     mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;;
3394     *) lt_sed_strip_eq="s,=/,/,g" ;;
3395   esac
3396   lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
3397   case $lt_search_path_spec in
3398   *\;*)
3399     # if the path contains ";" then we assume it to be the separator
3400     # otherwise default to the standard path separator (i.e. ":") - it is
3401     # assumed that no part of a normal pathname contains ";" but that should
3402     # okay in the real world where ";" in dirpaths is itself problematic.
3403     lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
3404     ;;
3405   *)
3406     lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
3407     ;;
3408   esac
3409   # Ok, now we have the path, separated by spaces, we can step through it
3410   # and add multilib dir if necessary.
3411   lt_tmp_lt_search_path_spec=
3412   lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
3413   for lt_sys_path in $lt_search_path_spec; do
3414     if test -d "$lt_sys_path/$lt_multi_os_dir"; then
3415       lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
3416     else
3417       test -d "$lt_sys_path" && \
3418         lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
3419     fi
3420   done
3421   lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
3422 BEGIN {RS=" "; FS="/|\n";} {
3423   lt_foo="";
3424   lt_count=0;
3425   for (lt_i = NF; lt_i > 0; lt_i--) {
3426     if ($lt_i != "" && $lt_i != ".") {
3427       if ($lt_i == "..") {
3428         lt_count++;
3429       } else {
3430         if (lt_count == 0) {
3431           lt_foo="/" $lt_i lt_foo;
3432         } else {
3433           lt_count--;
3434         }
3435       }
3436     }
3437   }
3438   if (lt_foo != "") { lt_freq[[lt_foo]]++; }
3439   if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
3440 }'`
3441   # AWK program above erroneously prepends '/' to C:/dos/paths
3442   # for these hosts.
3443   case $host_os in
3444     mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
3445       $SED 's,/\([[A-Za-z]]:\),\1,g'` ;;
3446   esac
3447   sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
3448 else
3449   sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
3450 fi])
3451 library_names_spec=
3452 libname_spec='lib$name'
3453 soname_spec=
3454 shrext_cmds=".so"
3455 postinstall_cmds=
3456 postuninstall_cmds=
3457 finish_cmds=
3458 finish_eval=
3459 shlibpath_var=
3460 shlibpath_overrides_runpath=unknown
3461 version_type=none
3462 dynamic_linker="$host_os ld.so"
3463 sys_lib_dlsearch_path_spec="/lib /usr/lib"
3464 need_lib_prefix=unknown
3465 hardcode_into_libs=no
3466
3467 # when you set need_version to no, make sure it does not cause -set_version
3468 # flags to be left without arguments
3469 need_version=unknown
3470
3471 case $host_os in
3472 aix3*)
3473   version_type=linux # correct to gnu/linux during the next big refactor
3474   library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
3475   shlibpath_var=LIBPATH
3476
3477   # AIX 3 has no versioning support, so we append a major version to the name.
3478   soname_spec='${libname}${release}${shared_ext}$major'
3479   ;;
3480
3481 aix[[4-9]]*)
3482   version_type=linux # correct to gnu/linux during the next big refactor
3483   need_lib_prefix=no
3484   need_version=no
3485   hardcode_into_libs=yes
3486   if test "$host_cpu" = ia64; then
3487     # AIX 5 supports IA64
3488     library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
3489     shlibpath_var=LD_LIBRARY_PATH
3490   else
3491     # With GCC up to 2.95.x, collect2 would create an import file
3492     # for dependence libraries.  The import file would start with
3493     # the line `#! .'.  This would cause the generated library to
3494     # depend on `.', always an invalid library.  This was fixed in
3495     # development snapshots of GCC prior to 3.0.
3496     case $host_os in
3497       aix4 | aix4.[[01]] | aix4.[[01]].*)
3498       if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
3499            echo ' yes '
3500            echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
3501         :
3502       else
3503         can_build_shared=no
3504       fi
3505       ;;
3506     esac
3507     # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
3508     # soname into executable. Probably we can add versioning support to
3509     # collect2, so additional links can be useful in future.
3510     if test "$aix_use_runtimelinking" = yes; then
3511       # If using run time linking (on AIX 4.2 or later) use lib<name>.so
3512       # instead of lib<name>.a to let people know that these are not
3513       # typical AIX shared libraries.
3514       library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3515     else
3516       # We preserve .a as extension for shared libraries through AIX4.2
3517       # and later when we are not doing run time linking.
3518       library_names_spec='${libname}${release}.a $libname.a'
3519       soname_spec='${libname}${release}${shared_ext}$major'
3520     fi
3521     shlibpath_var=LIBPATH
3522   fi
3523   ;;
3524
3525 amigaos*)
3526   case $host_cpu in
3527   powerpc)
3528     # Since July 2007 AmigaOS4 officially supports .so libraries.
3529     # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
3530     library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3531     ;;
3532   m68k)
3533     library_names_spec='$libname.ixlibrary $libname.a'
3534     # Create ${libname}_ixlibrary.a entries in /sys/libs.
3535     finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
3536     ;;
3537   esac
3538   ;;
3539
3540 beos*)
3541   library_names_spec='${libname}${shared_ext}'
3542   dynamic_linker="$host_os ld.so"
3543   shlibpath_var=LIBRARY_PATH
3544   ;;
3545
3546 bsdi[[45]]*)
3547   version_type=linux # correct to gnu/linux during the next big refactor
3548   need_version=no
3549   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3550   soname_spec='${libname}${release}${shared_ext}$major'
3551   finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
3552   shlibpath_var=LD_LIBRARY_PATH
3553   sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
3554   sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
3555   # the default ld.so.conf also contains /usr/contrib/lib and
3556   # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
3557   # libtool to hard-code these into programs
3558   ;;
3559
3560 cygwin* | mingw* | pw32* | cegcc*)
3561   version_type=windows
3562   shrext_cmds=".dll"
3563   need_version=no
3564   need_lib_prefix=no
3565
3566   case $GCC,$cc_basename in
3567   yes,*)
3568     # gcc
3569     library_names_spec='$libname.dll.a'
3570     # DLL is installed to $(libdir)/../bin by postinstall_cmds
3571     postinstall_cmds='base_file=`basename \${file}`~
3572       dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
3573       dldir=$destdir/`dirname \$dlpath`~
3574       test -d \$dldir || mkdir -p \$dldir~
3575       $install_prog $dir/$dlname \$dldir/$dlname~
3576       chmod a+x \$dldir/$dlname~
3577       if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
3578         eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
3579       fi'
3580     postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
3581       dlpath=$dir/\$dldll~
3582        $RM \$dlpath'
3583     shlibpath_overrides_runpath=yes
3584
3585     case $host_os in
3586     cygwin*)
3587       # Cygwin DLLs use 'cyg' prefix rather than 'lib'
3588       soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
3589 m4_if([$1], [],[
3590       sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
3591       ;;
3592     mingw* | cegcc*)
3593       # MinGW DLLs use traditional 'lib' prefix
3594       soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
3595       ;;
3596     pw32*)
3597       # pw32 DLLs use 'pw' prefix rather than 'lib'
3598       library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
3599       ;;
3600     esac
3601     dynamic_linker='Win32 ld.exe'
3602     ;;
3603
3604   *,cl*)
3605     # Native MSVC
3606     libname_spec='$name'
3607     soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
3608     library_names_spec='${libname}.dll.lib'
3609
3610     case $build_os in
3611     mingw*)
3612       sys_lib_search_path_spec=
3613       lt_save_ifs=$IFS
3614       IFS=';'
3615       for lt_path in $LIB
3616       do
3617         IFS=$lt_save_ifs
3618         # Let DOS variable expansion print the short 8.3 style file name.
3619         lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
3620         sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
3621       done
3622       IFS=$lt_save_ifs
3623       # Convert to MSYS style.
3624       sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
3625       ;;
3626     cygwin*)
3627       # Convert to unix form, then to dos form, then back to unix form
3628       # but this time dos style (no spaces!) so that the unix form looks
3629       # like /cygdrive/c/PROGRA~1:/cygdr...
3630       sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
3631       sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
3632       sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
3633       ;;
3634     *)
3635       sys_lib_search_path_spec="$LIB"
3636       if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
3637         # It is most probably a Windows format PATH.
3638         sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
3639       else
3640         sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
3641       fi
3642       # FIXME: find the short name or the path components, as spaces are
3643       # common. (e.g. "Program Files" -> "PROGRA~1")
3644       ;;
3645     esac
3646
3647     # DLL is installed to $(libdir)/../bin by postinstall_cmds
3648     postinstall_cmds='base_file=`basename \${file}`~
3649       dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
3650       dldir=$destdir/`dirname \$dlpath`~
3651       test -d \$dldir || mkdir -p \$dldir~
3652       $install_prog $dir/$dlname \$dldir/$dlname'
3653     postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
3654       dlpath=$dir/\$dldll~
3655        $RM \$dlpath'
3656     shlibpath_overrides_runpath=yes
3657     dynamic_linker='Win32 link.exe'
3658     ;;
3659
3660   *)
3661     # Assume MSVC wrapper
3662     library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
3663     dynamic_linker='Win32 ld.exe'
3664     ;;
3665   esac
3666   # FIXME: first we should search . and the directory the executable is in
3667   shlibpath_var=PATH
3668   ;;
3669
3670 darwin* | rhapsody*)
3671   dynamic_linker="$host_os dyld"
3672   version_type=darwin
3673   need_lib_prefix=no
3674   need_version=no
3675   library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
3676   soname_spec='${libname}${release}${major}$shared_ext'
3677   shlibpath_overrides_runpath=yes
3678   shlibpath_var=DYLD_LIBRARY_PATH
3679   shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
3680 m4_if([$1], [],[
3681   sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
3682   sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
3683   ;;
3684
3685 dgux*)
3686   version_type=linux # correct to gnu/linux during the next big refactor
3687   need_lib_prefix=no
3688   need_version=no
3689   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
3690   soname_spec='${libname}${release}${shared_ext}$major'
3691   shlibpath_var=LD_LIBRARY_PATH
3692   ;;
3693
3694 freebsd* | dragonfly*)
3695   # DragonFly does not have aout.  When/if they implement a new
3696   # versioning mechanism, adjust this.
3697   if test -x /usr/bin/objformat; then
3698     objformat=`/usr/bin/objformat`
3699   else
3700     case $host_os in
3701     freebsd[[23]].*) objformat=aout ;;
3702     *) objformat=elf ;;
3703     esac
3704   fi
3705   version_type=freebsd-$objformat
3706   case $version_type in
3707     freebsd-elf*)
3708       library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
3709       need_version=no
3710       need_lib_prefix=no
3711       ;;
3712     freebsd-*)
3713       library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
3714       need_version=yes
3715       ;;
3716   esac
3717   shlibpath_var=LD_LIBRARY_PATH
3718   case $host_os in
3719   freebsd2.*)
3720     shlibpath_overrides_runpath=yes
3721     ;;
3722   freebsd3.[[01]]* | freebsdelf3.[[01]]*)
3723     shlibpath_overrides_runpath=yes
3724     hardcode_into_libs=yes
3725     ;;
3726   freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
3727   freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
3728     shlibpath_overrides_runpath=no
3729     hardcode_into_libs=yes
3730     ;;
3731   *) # from 4.6 on, and DragonFly
3732     shlibpath_overrides_runpath=yes
3733     hardcode_into_libs=yes
3734     ;;
3735   esac
3736   ;;
3737
3738 gnu*)
3739   version_type=linux # correct to gnu/linux during the next big refactor
3740   need_lib_prefix=no
3741   need_version=no
3742   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
3743   soname_spec='${libname}${release}${shared_ext}$major'
3744   shlibpath_var=LD_LIBRARY_PATH
3745   shlibpath_overrides_runpath=no
3746   hardcode_into_libs=yes
3747   ;;
3748
3749 haiku*)
3750   version_type=linux # correct to gnu/linux during the next big refactor
3751   need_lib_prefix=no
3752   need_version=no
3753   dynamic_linker="$host_os runtime_loader"
3754   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
3755   soname_spec='${libname}${release}${shared_ext}$major'
3756   shlibpath_var=LIBRARY_PATH
3757   shlibpath_overrides_runpath=yes
3758   sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
3759   hardcode_into_libs=yes
3760   ;;
3761
3762 hpux9* | hpux10* | hpux11*)
3763   # Give a soname corresponding to the major version so that dld.sl refuses to
3764   # link against other versions.
3765   version_type=sunos
3766   need_lib_prefix=no
3767   need_version=no
3768   case $host_cpu in
3769   ia64*)
3770     shrext_cmds='.so'
3771     hardcode_into_libs=yes
3772     dynamic_linker="$host_os dld.so"
3773     shlibpath_var=LD_LIBRARY_PATH
3774     shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
3775     library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3776     soname_spec='${libname}${release}${shared_ext}$major'
3777     if test "X$HPUX_IA64_MODE" = X32; then
3778       sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
3779     else
3780       sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
3781     fi
3782     sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
3783     ;;
3784   hppa*64*)
3785     shrext_cmds='.sl'
3786     hardcode_into_libs=yes
3787     dynamic_linker="$host_os dld.sl"
3788     shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
3789     shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
3790     library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3791     soname_spec='${libname}${release}${shared_ext}$major'
3792     sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
3793     sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
3794     ;;
3795   *)
3796     shrext_cmds='.sl'
3797     dynamic_linker="$host_os dld.sl"
3798     shlibpath_var=SHLIB_PATH
3799     shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
3800     library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3801     soname_spec='${libname}${release}${shared_ext}$major'
3802     ;;
3803   esac
3804   # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
3805   postinstall_cmds='chmod 555 $lib'
3806   # or fails outright, so override atomically:
3807   install_override_mode=555
3808   ;;
3809
3810 interix[[3-9]]*)
3811   version_type=linux # correct to gnu/linux during the next big refactor
3812   need_lib_prefix=no
3813   need_version=no
3814   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
3815   soname_spec='${libname}${release}${shared_ext}$major'
3816   dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
3817   shlibpath_var=LD_LIBRARY_PATH
3818   shlibpath_overrides_runpath=no
3819   hardcode_into_libs=yes
3820   ;;
3821
3822 irix5* | irix6* | nonstopux*)
3823   case $host_os in
3824     nonstopux*) version_type=nonstopux ;;
3825     *)
3826         if test "$lt_cv_prog_gnu_ld" = yes; then
3827                 version_type=linux # correct to gnu/linux during the next big refactor
3828         else
3829                 version_type=irix
3830         fi ;;
3831   esac
3832   need_lib_prefix=no
3833   need_version=no
3834   soname_spec='${libname}${release}${shared_ext}$major'
3835   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
3836   case $host_os in
3837   irix5* | nonstopux*)
3838     libsuff= shlibsuff=
3839     ;;
3840   *)
3841     case $LD in # libtool.m4 will add one of these switches to LD
3842     *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
3843       libsuff= shlibsuff= libmagic=32-bit;;
3844     *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
3845       libsuff=32 shlibsuff=N32 libmagic=N32;;
3846     *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
3847       libsuff=64 shlibsuff=64 libmagic=64-bit;;
3848     *) libsuff= shlibsuff= libmagic=never-match;;
3849     esac
3850     ;;
3851   esac
3852   shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
3853   shlibpath_overrides_runpath=no
3854   sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
3855   sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
3856   hardcode_into_libs=yes
3857   ;;
3858
3859 # No shared lib support for Linux oldld, aout, or coff.
3860 linux*oldld* | linux*aout* | linux*coff*)
3861   dynamic_linker=no
3862   ;;
3863
3864 # This must be glibc/ELF.
3865 linux* | k*bsd*-gnu | kopensolaris*-gnu)
3866   version_type=linux # correct to gnu/linux during the next big refactor
3867   need_lib_prefix=no
3868   need_version=no
3869   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3870   soname_spec='${libname}${release}${shared_ext}$major'
3871   finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
3872   shlibpath_var=LD_LIBRARY_PATH
3873   shlibpath_overrides_runpath=no
3874
3875   # Some binutils ld are patched to set DT_RUNPATH
3876   AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
3877     [lt_cv_shlibpath_overrides_runpath=no
3878     save_LDFLAGS=$LDFLAGS
3879     save_libdir=$libdir
3880     eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
3881          LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
3882     AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
3883       [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
3884          [lt_cv_shlibpath_overrides_runpath=yes])])
3885     LDFLAGS=$save_LDFLAGS
3886     libdir=$save_libdir
3887     ])
3888   shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
3889
3890   # This implies no fast_install, which is unacceptable.
3891   # Some rework will be needed to allow for fast_install
3892   # before this can be enabled.
3893   hardcode_into_libs=yes
3894
3895   # Add ABI-specific directories to the system library path.
3896   sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
3897
3898   # Append ld.so.conf contents to the search path
3899   if test -f /etc/ld.so.conf; then
3900     lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[   ]*hwcap[        ]/d;s/[:,      ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '`
3901     sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
3902
3903   fi
3904
3905   # We used to test for /lib/ld.so.1 and disable shared libraries on
3906   # powerpc, because MkLinux only supported shared libraries with the
3907   # GNU dynamic linker.  Since this was broken with cross compilers,
3908   # most powerpc-linux boxes support dynamic linking these days and
3909   # people can always --disable-shared, the test was removed, and we
3910   # assume the GNU/Linux dynamic linker is in use.
3911   dynamic_linker='GNU/Linux ld.so'
3912   ;;
3913
3914 netbsd*)
3915   version_type=sunos
3916   need_lib_prefix=no
3917   need_version=no
3918   if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
3919     library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
3920     finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
3921     dynamic_linker='NetBSD (a.out) ld.so'
3922   else
3923     library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
3924     soname_spec='${libname}${release}${shared_ext}$major'
3925     dynamic_linker='NetBSD ld.elf_so'
3926   fi
3927   shlibpath_var=LD_LIBRARY_PATH
3928   shlibpath_overrides_runpath=yes
3929   hardcode_into_libs=yes
3930   ;;
3931
3932 newsos6)
3933   version_type=linux # correct to gnu/linux during the next big refactor
3934   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3935   shlibpath_var=LD_LIBRARY_PATH
3936   shlibpath_overrides_runpath=yes
3937   ;;
3938
3939 *nto* | *qnx*)
3940   version_type=qnx
3941   need_lib_prefix=no
3942   need_version=no
3943   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3944   soname_spec='${libname}${release}${shared_ext}$major'
3945   shlibpath_var=LD_LIBRARY_PATH
3946   shlibpath_overrides_runpath=no
3947   hardcode_into_libs=yes
3948   dynamic_linker='ldqnx.so'
3949   ;;
3950
3951 openbsd*)
3952   version_type=sunos
3953   sys_lib_dlsearch_path_spec="/usr/lib"
3954   need_lib_prefix=no
3955   # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
3956   case $host_os in
3957     openbsd3.3 | openbsd3.3.*)  need_version=yes ;;
3958     *)                          need_version=no  ;;
3959   esac
3960   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
3961   finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
3962   shlibpath_var=LD_LIBRARY_PATH
3963   if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
3964     case $host_os in
3965       openbsd2.[[89]] | openbsd2.[[89]].*)
3966         shlibpath_overrides_runpath=no
3967         ;;
3968       *)
3969         shlibpath_overrides_runpath=yes
3970         ;;
3971       esac
3972   else
3973     shlibpath_overrides_runpath=yes
3974   fi
3975   ;;
3976
3977 os2*)
3978   libname_spec='$name'
3979   shrext_cmds=".dll"
3980   need_lib_prefix=no
3981   library_names_spec='$libname${shared_ext} $libname.a'
3982   dynamic_linker='OS/2 ld.exe'
3983   shlibpath_var=LIBPATH
3984   ;;
3985
3986 osf3* | osf4* | osf5*)
3987   version_type=osf
3988   need_lib_prefix=no
3989   need_version=no
3990   soname_spec='${libname}${release}${shared_ext}$major'
3991   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
3992   shlibpath_var=LD_LIBRARY_PATH
3993   sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
3994   sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
3995   ;;
3996
3997 rdos*)
3998   dynamic_linker=no
3999   ;;
4000
4001 solaris*)
4002   version_type=linux # correct to gnu/linux during the next big refactor
4003   need_lib_prefix=no
4004   need_version=no
4005   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
4006   soname_spec='${libname}${release}${shared_ext}$major'
4007   shlibpath_var=LD_LIBRARY_PATH
4008   shlibpath_overrides_runpath=yes
4009   hardcode_into_libs=yes
4010   # ldd complains unless libraries are executable
4011   postinstall_cmds='chmod +x $lib'
4012   ;;
4013
4014 sunos4*)
4015   version_type=sunos
4016   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
4017   finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
4018   shlibpath_var=LD_LIBRARY_PATH
4019   shlibpath_overrides_runpath=yes
4020   if test "$with_gnu_ld" = yes; then
4021     need_lib_prefix=no
4022   fi
4023   need_version=yes
4024   ;;
4025
4026 sysv4 | sysv4.3*)
4027   version_type=linux # correct to gnu/linux during the next big refactor
4028   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
4029   soname_spec='${libname}${release}${shared_ext}$major'
4030   shlibpath_var=LD_LIBRARY_PATH
4031   case $host_vendor in
4032     sni)
4033       shlibpath_overrides_runpath=no
4034       need_lib_prefix=no
4035       runpath_var=LD_RUN_PATH
4036       ;;
4037     siemens)
4038       need_lib_prefix=no
4039       ;;
4040     motorola)
4041       need_lib_prefix=no
4042       need_version=no
4043       shlibpath_overrides_runpath=no
4044       sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
4045       ;;
4046   esac
4047   ;;
4048
4049 sysv4*MP*)
4050   if test -d /usr/nec ;then
4051     version_type=linux # correct to gnu/linux during the next big refactor
4052     library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}'
4053     soname_spec='$libname${shared_ext}.$major'
4054     shlibpath_var=LD_LIBRARY_PATH
4055   fi
4056   ;;
4057
4058 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
4059   version_type=freebsd-elf
4060   need_lib_prefix=no
4061   need_version=no
4062   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
4063   soname_spec='${libname}${release}${shared_ext}$major'
4064   shlibpath_var=LD_LIBRARY_PATH
4065   shlibpath_overrides_runpath=yes
4066   hardcode_into_libs=yes
4067   if test "$with_gnu_ld" = yes; then
4068     sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
4069   else
4070     sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
4071     case $host_os in
4072       sco3.2v5*)
4073         sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
4074         ;;
4075     esac
4076   fi
4077   sys_lib_dlsearch_path_spec='/usr/lib'
4078   ;;
4079
4080 tpf*)
4081   # TPF is a cross-target only.  Preferred cross-host = GNU/Linux.
4082   version_type=linux # correct to gnu/linux during the next big refactor
4083   need_lib_prefix=no
4084   need_version=no
4085   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
4086   shlibpath_var=LD_LIBRARY_PATH
4087   shlibpath_overrides_runpath=no
4088   hardcode_into_libs=yes
4089   ;;
4090
4091 uts4*)
4092   version_type=linux # correct to gnu/linux during the next big refactor
4093   library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
4094   soname_spec='${libname}${release}${shared_ext}$major'
4095   shlibpath_var=LD_LIBRARY_PATH
4096   ;;
4097
4098 *)
4099   dynamic_linker=no
4100   ;;
4101 esac
4102 AC_MSG_RESULT([$dynamic_linker])
4103 test "$dynamic_linker" = no && can_build_shared=no
4104
4105 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
4106 if test "$GCC" = yes; then
4107   variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
4108 fi
4109
4110 if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then
4111   sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec"
4112 fi
4113 if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then
4114   sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec"
4115 fi
4116
4117 _LT_DECL([], [variables_saved_for_relink], [1],
4118     [Variables whose values should be saved in libtool wrapper scripts and
4119     restored at link time])
4120 _LT_DECL([], [need_lib_prefix], [0],
4121     [Do we need the "lib" prefix for modules?])
4122 _LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
4123 _LT_DECL([], [version_type], [0], [Library versioning type])
4124 _LT_DECL([], [runpath_var], [0],  [Shared library runtime path variable])
4125 _LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
4126 _LT_DECL([], [shlibpath_overrides_runpath], [0],
4127     [Is shlibpath searched before the hard-coded library search path?])
4128 _LT_DECL([], [libname_spec], [1], [Format of library name prefix])
4129 _LT_DECL([], [library_names_spec], [1],
4130     [[List of archive names.  First name is the real one, the rest are links.
4131     The last name is the one that the linker finds with -lNAME]])
4132 _LT_DECL([], [soname_spec], [1],
4133     [[The coded name of the library, if different from the real name]])
4134 _LT_DECL([], [install_override_mode], [1],
4135     [Permission mode override for installation of shared libraries])
4136 _LT_DECL([], [postinstall_cmds], [2],
4137     [Command to use after installation of a shared archive])
4138 _LT_DECL([], [postuninstall_cmds], [2],
4139     [Command to use after uninstallation of a shared archive])
4140 _LT_DECL([], [finish_cmds], [2],
4141     [Commands used to finish a libtool library installation in a directory])
4142 _LT_DECL([], [finish_eval], [1],
4143     [[As "finish_cmds", except a single script fragment to be evaled but
4144     not shown]])
4145 _LT_DECL([], [hardcode_into_libs], [0],
4146     [Whether we should hardcode library paths into libraries])
4147 _LT_DECL([], [sys_lib_search_path_spec], [2],
4148     [Compile-time system search path for libraries])
4149 _LT_DECL([], [sys_lib_dlsearch_path_spec], [2],
4150     [Run-time system search path for libraries])
4151 ])# _LT_SYS_DYNAMIC_LINKER
4152
4153
4154 # _LT_PATH_TOOL_PREFIX(TOOL)
4155 # --------------------------
4156 # find a file program which can recognize shared library
4157 AC_DEFUN([_LT_PATH_TOOL_PREFIX],
4158 [m4_require([_LT_DECL_EGREP])dnl
4159 AC_MSG_CHECKING([for $1])
4160 AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
4161 [case $MAGIC_CMD in
4162 [[\\/*] |  ?:[\\/]*])
4163   lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
4164   ;;
4165 *)
4166   lt_save_MAGIC_CMD="$MAGIC_CMD"
4167   lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
4168 dnl $ac_dummy forces splitting on constant user-supplied paths.
4169 dnl POSIX.2 word splitting is done only on the output of word expansions,
4170 dnl not every word.  This closes a longstanding sh security hole.
4171   ac_dummy="m4_if([$2], , $PATH, [$2])"
4172   for ac_dir in $ac_dummy; do
4173     IFS="$lt_save_ifs"
4174     test -z "$ac_dir" && ac_dir=.
4175     if test -f $ac_dir/$1; then
4176       lt_cv_path_MAGIC_CMD="$ac_dir/$1"
4177       if test -n "$file_magic_test_file"; then
4178         case $deplibs_check_method in
4179         "file_magic "*)
4180           file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
4181           MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
4182           if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
4183             $EGREP "$file_magic_regex" > /dev/null; then
4184             :
4185           else
4186             cat <<_LT_EOF 1>&2
4187
4188 *** Warning: the command libtool uses to detect shared libraries,
4189 *** $file_magic_cmd, produces output that libtool cannot recognize.
4190 *** The result is that libtool may fail to recognize shared libraries
4191 *** as such.  This will affect the creation of libtool libraries that
4192 *** depend on shared libraries, but programs linked with such libtool
4193 *** libraries will work regardless of this problem.  Nevertheless, you
4194 *** may want to report the problem to your system manager and/or to
4195 *** bug-libtool@gnu.org
4196
4197 _LT_EOF
4198           fi ;;
4199         esac
4200       fi
4201       break
4202     fi
4203   done
4204   IFS="$lt_save_ifs"
4205   MAGIC_CMD="$lt_save_MAGIC_CMD"
4206   ;;
4207 esac])
4208 MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
4209 if test -n "$MAGIC_CMD"; then
4210   AC_MSG_RESULT($MAGIC_CMD)
4211 else
4212   AC_MSG_RESULT(no)
4213 fi
4214 _LT_DECL([], [MAGIC_CMD], [0],
4215          [Used to examine libraries when file_magic_cmd begins with "file"])dnl
4216 ])# _LT_PATH_TOOL_PREFIX
4217
4218 # Old name:
4219 AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
4220 dnl aclocal-1.4 backwards compatibility:
4221 dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
4222
4223
4224 # _LT_PATH_MAGIC
4225 # --------------
4226 # find a file program which can recognize a shared library
4227 m4_defun([_LT_PATH_MAGIC],
4228 [_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
4229 if test -z "$lt_cv_path_MAGIC_CMD"; then
4230   if test -n "$ac_tool_prefix"; then
4231     _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
4232   else
4233     MAGIC_CMD=:
4234   fi
4235 fi
4236 ])# _LT_PATH_MAGIC
4237
4238
4239 # LT_PATH_LD
4240 # ----------
4241 # find the pathname to the GNU or non-GNU linker
4242 AC_DEFUN([LT_PATH_LD],
4243 [AC_REQUIRE([AC_PROG_CC])dnl
4244 AC_REQUIRE([AC_CANONICAL_HOST])dnl
4245 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
4246 m4_require([_LT_DECL_SED])dnl
4247 m4_require([_LT_DECL_EGREP])dnl
4248 m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
4249
4250 AC_ARG_WITH([gnu-ld],
4251     [AS_HELP_STRING([--with-gnu-ld],
4252         [assume the C compiler uses GNU ld @<:@default=no@:>@])],
4253     [test "$withval" = no || with_gnu_ld=yes],
4254     [with_gnu_ld=no])dnl
4255
4256 ac_prog=ld
4257 if test "$GCC" = yes; then
4258   # Check if gcc -print-prog-name=ld gives a path.
4259   AC_MSG_CHECKING([for ld used by $CC])
4260   case $host in
4261   *-*-mingw*)
4262     # gcc leaves a trailing carriage return which upsets mingw
4263     ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
4264   *)
4265     ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
4266   esac
4267   case $ac_prog in
4268     # Accept absolute paths.
4269     [[\\/]]* | ?:[[\\/]]*)
4270       re_direlt='/[[^/]][[^/]]*/\.\./'
4271       # Canonicalize the pathname of ld
4272       ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
4273       while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
4274         ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
4275       done
4276       test -z "$LD" && LD="$ac_prog"
4277       ;;
4278   "")
4279     # If it fails, then pretend we aren't using GCC.
4280     ac_prog=ld
4281     ;;
4282   *)
4283     # If it is relative, then search for the first ld in PATH.
4284     with_gnu_ld=unknown
4285     ;;
4286   esac
4287 elif test "$with_gnu_ld" = yes; then
4288   AC_MSG_CHECKING([for GNU ld])
4289 else
4290   AC_MSG_CHECKING([for non-GNU ld])
4291 fi
4292 AC_CACHE_VAL(lt_cv_path_LD,
4293 [if test -z "$LD"; then
4294   lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
4295   for ac_dir in $PATH; do
4296     IFS="$lt_save_ifs"
4297     test -z "$ac_dir" && ac_dir=.
4298     if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
4299       lt_cv_path_LD="$ac_dir/$ac_prog"
4300       # Check to see if the program is GNU ld.  I'd rather use --version,
4301       # but apparently some variants of GNU ld only accept -v.
4302       # Break only if it was the GNU/non-GNU ld that we prefer.
4303       case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
4304       *GNU* | *'with BFD'*)
4305         test "$with_gnu_ld" != no && break
4306         ;;
4307       *)
4308         test "$with_gnu_ld" != yes && break
4309         ;;
4310       esac
4311     fi
4312   done
4313   IFS="$lt_save_ifs"
4314 else
4315   lt_cv_path_LD="$LD" # Let the user override the test with a path.
4316 fi])
4317 LD="$lt_cv_path_LD"
4318 if test -n "$LD"; then
4319   AC_MSG_RESULT($LD)
4320 else
4321   AC_MSG_RESULT(no)
4322 fi
4323 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
4324 _LT_PATH_LD_GNU
4325 AC_SUBST([LD])
4326
4327 _LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
4328 ])# LT_PATH_LD
4329
4330 # Old names:
4331 AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
4332 AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
4333 dnl aclocal-1.4 backwards compatibility:
4334 dnl AC_DEFUN([AM_PROG_LD], [])
4335 dnl AC_DEFUN([AC_PROG_LD], [])
4336
4337
4338 # _LT_PATH_LD_GNU
4339 #- --------------
4340 m4_defun([_LT_PATH_LD_GNU],
4341 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
4342 [# I'd rather use --version here, but apparently some GNU lds only accept -v.
4343 case `$LD -v 2>&1 </dev/null` in
4344 *GNU* | *'with BFD'*)
4345   lt_cv_prog_gnu_ld=yes
4346   ;;
4347 *)
4348   lt_cv_prog_gnu_ld=no
4349   ;;
4350 esac])
4351 with_gnu_ld=$lt_cv_prog_gnu_ld
4352 ])# _LT_PATH_LD_GNU
4353
4354
4355 # _LT_CMD_RELOAD
4356 # --------------
4357 # find reload flag for linker
4358 #   -- PORTME Some linkers may need a different reload flag.
4359 m4_defun([_LT_CMD_RELOAD],
4360 [AC_CACHE_CHECK([for $LD option to reload object files],
4361   lt_cv_ld_reload_flag,
4362   [lt_cv_ld_reload_flag='-r'])
4363 reload_flag=$lt_cv_ld_reload_flag
4364 case $reload_flag in
4365 "" | " "*) ;;
4366 *) reload_flag=" $reload_flag" ;;
4367 esac
4368 reload_cmds='$LD$reload_flag -o $output$reload_objs'
4369 case $host_os in
4370   cygwin* | mingw* | pw32* | cegcc*)
4371     if test "$GCC" != yes; then
4372       reload_cmds=false
4373     fi
4374     ;;
4375   darwin*)
4376     if test "$GCC" = yes; then
4377       reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
4378     else
4379       reload_cmds='$LD$reload_flag -o $output$reload_objs'
4380     fi
4381     ;;
4382 esac
4383 _LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
4384 _LT_TAGDECL([], [reload_cmds], [2])dnl
4385 ])# _LT_CMD_RELOAD
4386
4387
4388 # _LT_CHECK_MAGIC_METHOD
4389 # ----------------------
4390 # how to check for library dependencies
4391 #  -- PORTME fill in with the dynamic library characteristics
4392 m4_defun([_LT_CHECK_MAGIC_METHOD],
4393 [m4_require([_LT_DECL_EGREP])
4394 m4_require([_LT_DECL_OBJDUMP])
4395 AC_CACHE_CHECK([how to recognize dependent libraries],
4396 lt_cv_deplibs_check_method,
4397 [lt_cv_file_magic_cmd='$MAGIC_CMD'
4398 lt_cv_file_magic_test_file=
4399 lt_cv_deplibs_check_method='unknown'
4400 # Need to set the preceding variable on all platforms that support
4401 # interlibrary dependencies.
4402 # 'none' -- dependencies not supported.
4403 # `unknown' -- same as none, but documents that we really don't know.
4404 # 'pass_all' -- all dependencies passed with no checks.
4405 # 'test_compile' -- check by making test program.
4406 # 'file_magic [[regex]]' -- check by looking for files in library path
4407 # which responds to the $file_magic_cmd with a given extended regex.
4408 # If you have `file' or equivalent on your system and you're not sure
4409 # whether `pass_all' will *always* work, you probably want this one.
4410
4411 case $host_os in
4412 aix[[4-9]]*)
4413   lt_cv_deplibs_check_method=pass_all
4414   ;;
4415
4416 beos*)
4417   lt_cv_deplibs_check_method=pass_all
4418   ;;
4419
4420 bsdi[[45]]*)
4421   lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
4422   lt_cv_file_magic_cmd='/usr/bin/file -L'
4423   lt_cv_file_magic_test_file=/shlib/libc.so
4424   ;;
4425
4426 cygwin*)
4427   # func_win32_libid is a shell function defined in ltmain.sh
4428   lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
4429   lt_cv_file_magic_cmd='func_win32_libid'
4430   ;;
4431
4432 mingw* | pw32*)
4433   # Base MSYS/MinGW do not provide the 'file' command needed by
4434   # func_win32_libid shell function, so use a weaker test based on 'objdump',
4435   # unless we find 'file', for example because we are cross-compiling.
4436   # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin.
4437   if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then
4438     lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
4439     lt_cv_file_magic_cmd='func_win32_libid'
4440   else
4441     # Keep this pattern in sync with the one in func_win32_libid.
4442     lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
4443     lt_cv_file_magic_cmd='$OBJDUMP -f'
4444   fi
4445   ;;
4446
4447 cegcc*)
4448   # use the weaker test based on 'objdump'. See mingw*.
4449   lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
4450   lt_cv_file_magic_cmd='$OBJDUMP -f'
4451   ;;
4452
4453 darwin* | rhapsody*)
4454   lt_cv_deplibs_check_method=pass_all
4455   ;;
4456
4457 freebsd* | dragonfly*)
4458   if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
4459     case $host_cpu in
4460     i*86 )
4461       # Not sure whether the presence of OpenBSD here was a mistake.
4462       # Let's accept both of them until this is cleared up.
4463       lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
4464       lt_cv_file_magic_cmd=/usr/bin/file
4465       lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
4466       ;;
4467     esac
4468   else
4469     lt_cv_deplibs_check_method=pass_all
4470   fi
4471   ;;
4472
4473 gnu*)
4474   lt_cv_deplibs_check_method=pass_all
4475   ;;
4476
4477 haiku*)
4478   lt_cv_deplibs_check_method=pass_all
4479   ;;
4480
4481 hpux10.20* | hpux11*)
4482   lt_cv_file_magic_cmd=/usr/bin/file
4483   case $host_cpu in
4484   ia64*)
4485     lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
4486     lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
4487     ;;
4488   hppa*64*)
4489     [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]']
4490     lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
4491     ;;
4492   *)
4493     lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
4494     lt_cv_file_magic_test_file=/usr/lib/libc.sl
4495     ;;
4496   esac
4497   ;;
4498
4499 interix[[3-9]]*)
4500   # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
4501   lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
4502   ;;
4503
4504 irix5* | irix6* | nonstopux*)
4505   case $LD in
4506   *-32|*"-32 ") libmagic=32-bit;;
4507   *-n32|*"-n32 ") libmagic=N32;;
4508   *-64|*"-64 ") libmagic=64-bit;;
4509   *) libmagic=never-match;;
4510   esac
4511   lt_cv_deplibs_check_method=pass_all
4512   ;;
4513
4514 # This must be glibc/ELF.
4515 linux* | k*bsd*-gnu | kopensolaris*-gnu)
4516   lt_cv_deplibs_check_method=pass_all
4517   ;;
4518
4519 netbsd*)
4520   if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
4521     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
4522   else
4523     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
4524   fi
4525   ;;
4526
4527 newos6*)
4528   lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
4529   lt_cv_file_magic_cmd=/usr/bin/file
4530   lt_cv_file_magic_test_file=/usr/lib/libnls.so
4531   ;;
4532
4533 *nto* | *qnx*)
4534   lt_cv_deplibs_check_method=pass_all
4535   ;;
4536
4537 openbsd*)
4538   if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
4539     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
4540   else
4541     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
4542   fi
4543   ;;
4544
4545 osf3* | osf4* | osf5*)
4546   lt_cv_deplibs_check_method=pass_all
4547   ;;
4548
4549 rdos*)
4550   lt_cv_deplibs_check_method=pass_all
4551   ;;
4552
4553 solaris*)
4554   lt_cv_deplibs_check_method=pass_all
4555   ;;
4556
4557 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
4558   lt_cv_deplibs_check_method=pass_all
4559   ;;
4560
4561 sysv4 | sysv4.3*)
4562   case $host_vendor in
4563   motorola)
4564     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]]'
4565     lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
4566     ;;
4567   ncr)
4568     lt_cv_deplibs_check_method=pass_all
4569     ;;
4570   sequent)
4571     lt_cv_file_magic_cmd='/bin/file'
4572     lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
4573     ;;
4574   sni)
4575     lt_cv_file_magic_cmd='/bin/file'
4576     lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
4577     lt_cv_file_magic_test_file=/lib/libc.so
4578     ;;
4579   siemens)
4580     lt_cv_deplibs_check_method=pass_all
4581     ;;
4582   pc)
4583     lt_cv_deplibs_check_method=pass_all
4584     ;;
4585   esac
4586   ;;
4587