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