| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381 | 
							- # gettext.m4 serial 60 (gettext-0.17)
 
- dnl Copyright (C) 1995-2007 Free Software Foundation, Inc.
 
- dnl This file is free software; the Free Software Foundation
 
- dnl gives unlimited permission to copy and/or distribute it,
 
- dnl with or without modifications, as long as this notice is preserved.
 
- dnl
 
- dnl This file can can be used in projects which are not available under
 
- dnl the GNU General Public License or the GNU Library General Public
 
- dnl License but which still want to provide support for the GNU gettext
 
- dnl functionality.
 
- dnl Please note that the actual code of the GNU gettext library is covered
 
- dnl by the GNU Library General Public License, and the rest of the GNU
 
- dnl gettext package package is covered by the GNU General Public License.
 
- dnl They are *not* in the public domain.
 
- dnl Authors:
 
- dnl   Ulrich Drepper <drepper@cygnus.com>, 1995-2000.
 
- dnl   Bruno Haible <haible@clisp.cons.org>, 2000-2006.
 
- dnl Macro to add for using GNU gettext.
 
- dnl Usage: AM_GNU_GETTEXT([INTLSYMBOL], [NEEDSYMBOL], [INTLDIR]).
 
- dnl INTLSYMBOL can be one of 'external', 'no-libtool', 'use-libtool'. The
 
- dnl    default (if it is not specified or empty) is 'no-libtool'.
 
- dnl    INTLSYMBOL should be 'external' for packages with no intl directory,
 
- dnl    and 'no-libtool' or 'use-libtool' for packages with an intl directory.
 
- dnl    If INTLSYMBOL is 'use-libtool', then a libtool library
 
- dnl    $(top_builddir)/intl/libintl.la will be created (shared and/or static,
 
- dnl    depending on --{enable,disable}-{shared,static} and on the presence of
 
- dnl    AM-DISABLE-SHARED). If INTLSYMBOL is 'no-libtool', a static library
 
- dnl    $(top_builddir)/intl/libintl.a will be created.
 
- dnl If NEEDSYMBOL is specified and is 'need-ngettext', then GNU gettext
 
- dnl    implementations (in libc or libintl) without the ngettext() function
 
- dnl    will be ignored.  If NEEDSYMBOL is specified and is
 
- dnl    'need-formatstring-macros', then GNU gettext implementations that don't
 
- dnl    support the ISO C 99 <inttypes.h> formatstring macros will be ignored.
 
- dnl INTLDIR is used to find the intl libraries.  If empty,
 
- dnl    the value `$(top_builddir)/intl/' is used.
 
- dnl
 
- dnl The result of the configuration is one of three cases:
 
- dnl 1) GNU gettext, as included in the intl subdirectory, will be compiled
 
- dnl    and used.
 
- dnl    Catalog format: GNU --> install in $(datadir)
 
- dnl    Catalog extension: .mo after installation, .gmo in source tree
 
- dnl 2) GNU gettext has been found in the system's C library.
 
- dnl    Catalog format: GNU --> install in $(datadir)
 
- dnl    Catalog extension: .mo after installation, .gmo in source tree
 
- dnl 3) No internationalization, always use English msgid.
 
- dnl    Catalog format: none
 
- dnl    Catalog extension: none
 
- dnl If INTLSYMBOL is 'external', only cases 2 and 3 can occur.
 
- dnl The use of .gmo is historical (it was needed to avoid overwriting the
 
- dnl GNU format catalogs when building on a platform with an X/Open gettext),
 
- dnl but we keep it in order not to force irrelevant filename changes on the
 
- dnl maintainers.
 
- dnl
 
- AC_DEFUN([AM_GNU_GETTEXT],
 
- [
 
-   dnl Argument checking.
 
-   ifelse([$1], [], , [ifelse([$1], [external], , [ifelse([$1], [no-libtool], , [ifelse([$1], [use-libtool], ,
 
-     [errprint([ERROR: invalid first argument to AM_GNU_GETTEXT
 
- ])])])])])
 
-   ifelse([$2], [], , [ifelse([$2], [need-ngettext], , [ifelse([$2], [need-formatstring-macros], ,
 
-     [errprint([ERROR: invalid second argument to AM_GNU_GETTEXT
 
- ])])])])
 
-   define([gt_included_intl],
 
-     ifelse([$1], [external],
 
-       ifdef([AM_GNU_GETTEXT_][INTL_SUBDIR], [yes], [no]),
 
-       [yes]))
 
-   define([gt_libtool_suffix_prefix], ifelse([$1], [use-libtool], [l], []))
 
-   gt_NEEDS_INIT
 
-   AM_GNU_GETTEXT_NEED([$2])
 
-   AC_REQUIRE([AM_PO_SUBDIRS])dnl
 
-   ifelse(gt_included_intl, yes, [
 
-     AC_REQUIRE([AM_INTL_SUBDIR])dnl
 
-   ])
 
-   dnl Prerequisites of AC_LIB_LINKFLAGS_BODY.
 
-   AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
 
-   AC_REQUIRE([AC_LIB_RPATH])
 
-   dnl Sometimes libintl requires libiconv, so first search for libiconv.
 
-   dnl Ideally we would do this search only after the
 
-   dnl      if test "$USE_NLS" = "yes"; then
 
-   dnl        if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then
 
-   dnl tests. But if configure.in invokes AM_ICONV after AM_GNU_GETTEXT
 
-   dnl the configure script would need to contain the same shell code
 
-   dnl again, outside any 'if'. There are two solutions:
 
-   dnl - Invoke AM_ICONV_LINKFLAGS_BODY here, outside any 'if'.
 
-   dnl - Control the expansions in more detail using AC_PROVIDE_IFELSE.
 
-   dnl Since AC_PROVIDE_IFELSE is only in autoconf >= 2.52 and not
 
-   dnl documented, we avoid it.
 
-   ifelse(gt_included_intl, yes, , [
 
-     AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY])
 
-   ])
 
-   dnl Sometimes, on MacOS X, libintl requires linking with CoreFoundation.
 
-   gt_INTL_MACOSX
 
-   dnl Set USE_NLS.
 
-   AC_REQUIRE([AM_NLS])
 
-   ifelse(gt_included_intl, yes, [
 
-     BUILD_INCLUDED_LIBINTL=no
 
-     USE_INCLUDED_LIBINTL=no
 
-   ])
 
-   LIBINTL=
 
-   LTLIBINTL=
 
-   POSUB=
 
-   dnl Add a version number to the cache macros.
 
-   case " $gt_needs " in
 
-     *" need-formatstring-macros "*) gt_api_version=3 ;;
 
-     *" need-ngettext "*) gt_api_version=2 ;;
 
-     *) gt_api_version=1 ;;
 
-   esac
 
-   gt_func_gnugettext_libc="gt_cv_func_gnugettext${gt_api_version}_libc"
 
-   gt_func_gnugettext_libintl="gt_cv_func_gnugettext${gt_api_version}_libintl"
 
-   dnl If we use NLS figure out what method
 
-   if test "$USE_NLS" = "yes"; then
 
-     gt_use_preinstalled_gnugettext=no
 
-     ifelse(gt_included_intl, yes, [
 
-       AC_MSG_CHECKING([whether included gettext is requested])
 
-       AC_ARG_WITH(included-gettext,
 
-         [  --with-included-gettext use the GNU gettext library included here],
 
-         nls_cv_force_use_gnu_gettext=$withval,
 
-         nls_cv_force_use_gnu_gettext=no)
 
-       AC_MSG_RESULT($nls_cv_force_use_gnu_gettext)
 
-       nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
 
-       if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
 
-     ])
 
-         dnl User does not insist on using GNU NLS library.  Figure out what
 
-         dnl to use.  If GNU gettext is available we use this.  Else we have
 
-         dnl to fall back to GNU NLS library.
 
-         if test $gt_api_version -ge 3; then
 
-           gt_revision_test_code='
 
- #ifndef __GNU_GETTEXT_SUPPORTED_REVISION
 
- #define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
 
- #endif
 
- changequote(,)dnl
 
- typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
 
- changequote([,])dnl
 
- '
 
-         else
 
-           gt_revision_test_code=
 
-         fi
 
-         if test $gt_api_version -ge 2; then
 
-           gt_expression_test_code=' + * ngettext ("", "", 0)'
 
-         else
 
-           gt_expression_test_code=
 
-         fi
 
-         AC_CACHE_CHECK([for GNU gettext in libc], [$gt_func_gnugettext_libc],
 
-          [AC_TRY_LINK([#include <libintl.h>
 
- $gt_revision_test_code
 
- extern int _nl_msg_cat_cntr;
 
- extern int *_nl_domain_bindings;],
 
-             [bindtextdomain ("", "");
 
- return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_domain_bindings],
 
-             [eval "$gt_func_gnugettext_libc=yes"],
 
-             [eval "$gt_func_gnugettext_libc=no"])])
 
-         if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then
 
-           dnl Sometimes libintl requires libiconv, so first search for libiconv.
 
-           ifelse(gt_included_intl, yes, , [
 
-             AM_ICONV_LINK
 
-           ])
 
-           dnl Search for libintl and define LIBINTL, LTLIBINTL and INCINTL
 
-           dnl accordingly. Don't use AC_LIB_LINKFLAGS_BODY([intl],[iconv])
 
-           dnl because that would add "-liconv" to LIBINTL and LTLIBINTL
 
-           dnl even if libiconv doesn't exist.
 
-           AC_LIB_LINKFLAGS_BODY([intl])
 
-           AC_CACHE_CHECK([for GNU gettext in libintl],
 
-             [$gt_func_gnugettext_libintl],
 
-            [gt_save_CPPFLAGS="$CPPFLAGS"
 
-             CPPFLAGS="$CPPFLAGS $INCINTL"
 
-             gt_save_LIBS="$LIBS"
 
-             LIBS="$LIBS $LIBINTL"
 
-             dnl Now see whether libintl exists and does not depend on libiconv.
 
-             AC_TRY_LINK([#include <libintl.h>
 
- $gt_revision_test_code
 
- extern int _nl_msg_cat_cntr;
 
- extern
 
- #ifdef __cplusplus
 
- "C"
 
- #endif
 
- const char *_nl_expand_alias (const char *);],
 
-               [bindtextdomain ("", "");
 
- return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("")],
 
-               [eval "$gt_func_gnugettext_libintl=yes"],
 
-               [eval "$gt_func_gnugettext_libintl=no"])
 
-             dnl Now see whether libintl exists and depends on libiconv.
 
-             if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then
 
-               LIBS="$LIBS $LIBICONV"
 
-               AC_TRY_LINK([#include <libintl.h>
 
- $gt_revision_test_code
 
- extern int _nl_msg_cat_cntr;
 
- extern
 
- #ifdef __cplusplus
 
- "C"
 
- #endif
 
- const char *_nl_expand_alias (const char *);],
 
-                 [bindtextdomain ("", "");
 
- return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("")],
 
-                [LIBINTL="$LIBINTL $LIBICONV"
 
-                 LTLIBINTL="$LTLIBINTL $LTLIBICONV"
 
-                 eval "$gt_func_gnugettext_libintl=yes"
 
-                ])
 
-             fi
 
-             CPPFLAGS="$gt_save_CPPFLAGS"
 
-             LIBS="$gt_save_LIBS"])
 
-         fi
 
-         dnl If an already present or preinstalled GNU gettext() is found,
 
-         dnl use it.  But if this macro is used in GNU gettext, and GNU
 
-         dnl gettext is already preinstalled in libintl, we update this
 
-         dnl libintl.  (Cf. the install rule in intl/Makefile.in.)
 
-         if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \
 
-            || { { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; } \
 
-                 && test "$PACKAGE" != gettext-runtime \
 
-                 && test "$PACKAGE" != gettext-tools; }; then
 
-           gt_use_preinstalled_gnugettext=yes
 
-         else
 
-           dnl Reset the values set by searching for libintl.
 
-           LIBINTL=
 
-           LTLIBINTL=
 
-           INCINTL=
 
-         fi
 
-     ifelse(gt_included_intl, yes, [
 
-         if test "$gt_use_preinstalled_gnugettext" != "yes"; then
 
-           dnl GNU gettext is not found in the C library.
 
-           dnl Fall back on included GNU gettext library.
 
-           nls_cv_use_gnu_gettext=yes
 
-         fi
 
-       fi
 
-       if test "$nls_cv_use_gnu_gettext" = "yes"; then
 
-         dnl Mark actions used to generate GNU NLS library.
 
-         BUILD_INCLUDED_LIBINTL=yes
 
-         USE_INCLUDED_LIBINTL=yes
 
-         LIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LIBICONV $LIBTHREAD"
 
-         LTLIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LTLIBICONV $LTLIBTHREAD"
 
-         LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'`
 
-       fi
 
-       CATOBJEXT=
 
-       if test "$gt_use_preinstalled_gnugettext" = "yes" \
 
-          || test "$nls_cv_use_gnu_gettext" = "yes"; then
 
-         dnl Mark actions to use GNU gettext tools.
 
-         CATOBJEXT=.gmo
 
-       fi
 
-     ])
 
-     if test -n "$INTL_MACOSX_LIBS"; then
 
-       if test "$gt_use_preinstalled_gnugettext" = "yes" \
 
-          || test "$nls_cv_use_gnu_gettext" = "yes"; then
 
-         dnl Some extra flags are needed during linking.
 
-         LIBINTL="$LIBINTL $INTL_MACOSX_LIBS"
 
-         LTLIBINTL="$LTLIBINTL $INTL_MACOSX_LIBS"
 
-       fi
 
-     fi
 
-     if test "$gt_use_preinstalled_gnugettext" = "yes" \
 
-        || test "$nls_cv_use_gnu_gettext" = "yes"; then
 
-       AC_DEFINE(ENABLE_NLS, 1,
 
-         [Define to 1 if translation of program messages to the user's native language
 
-    is requested.])
 
-     else
 
-       USE_NLS=no
 
-     fi
 
-   fi
 
-   AC_MSG_CHECKING([whether to use NLS])
 
-   AC_MSG_RESULT([$USE_NLS])
 
-   if test "$USE_NLS" = "yes"; then
 
-     AC_MSG_CHECKING([where the gettext function comes from])
 
-     if test "$gt_use_preinstalled_gnugettext" = "yes"; then
 
-       if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then
 
-         gt_source="external libintl"
 
-       else
 
-         gt_source="libc"
 
-       fi
 
-     else
 
-       gt_source="included intl directory"
 
-     fi
 
-     AC_MSG_RESULT([$gt_source])
 
-   fi
 
-   if test "$USE_NLS" = "yes"; then
 
-     if test "$gt_use_preinstalled_gnugettext" = "yes"; then
 
-       if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then
 
-         AC_MSG_CHECKING([how to link with libintl])
 
-         AC_MSG_RESULT([$LIBINTL])
 
-         AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCINTL])
 
-       fi
 
-       dnl For backward compatibility. Some packages may be using this.
 
-       AC_DEFINE(HAVE_GETTEXT, 1,
 
-        [Define if the GNU gettext() function is already present or preinstalled.])
 
-       AC_DEFINE(HAVE_DCGETTEXT, 1,
 
-        [Define if the GNU dcgettext() function is already present or preinstalled.])
 
-     fi
 
-     dnl We need to process the po/ directory.
 
-     POSUB=po
 
-   fi
 
-   ifelse(gt_included_intl, yes, [
 
-     dnl If this is used in GNU gettext we have to set BUILD_INCLUDED_LIBINTL
 
-     dnl to 'yes' because some of the testsuite requires it.
 
-     if test "$PACKAGE" = gettext-runtime || test "$PACKAGE" = gettext-tools; then
 
-       BUILD_INCLUDED_LIBINTL=yes
 
-     fi
 
-     dnl Make all variables we use known to autoconf.
 
-     AC_SUBST(BUILD_INCLUDED_LIBINTL)
 
-     AC_SUBST(USE_INCLUDED_LIBINTL)
 
-     AC_SUBST(CATOBJEXT)
 
-     dnl For backward compatibility. Some configure.ins may be using this.
 
-     nls_cv_header_intl=
 
-     nls_cv_header_libgt=
 
-     dnl For backward compatibility. Some Makefiles may be using this.
 
-     DATADIRNAME=share
 
-     AC_SUBST(DATADIRNAME)
 
-     dnl For backward compatibility. Some Makefiles may be using this.
 
-     INSTOBJEXT=.mo
 
-     AC_SUBST(INSTOBJEXT)
 
-     dnl For backward compatibility. Some Makefiles may be using this.
 
-     GENCAT=gencat
 
-     AC_SUBST(GENCAT)
 
-     dnl For backward compatibility. Some Makefiles may be using this.
 
-     INTLOBJS=
 
-     if test "$USE_INCLUDED_LIBINTL" = yes; then
 
-       INTLOBJS="\$(GETTOBJS)"
 
-     fi
 
-     AC_SUBST(INTLOBJS)
 
-     dnl Enable libtool support if the surrounding package wishes it.
 
-     INTL_LIBTOOL_SUFFIX_PREFIX=gt_libtool_suffix_prefix
 
-     AC_SUBST(INTL_LIBTOOL_SUFFIX_PREFIX)
 
-   ])
 
-   dnl For backward compatibility. Some Makefiles may be using this.
 
-   INTLLIBS="$LIBINTL"
 
-   AC_SUBST(INTLLIBS)
 
-   dnl Make all documented variables known to autoconf.
 
-   AC_SUBST(LIBINTL)
 
-   AC_SUBST(LTLIBINTL)
 
-   AC_SUBST(POSUB)
 
- ])
 
- dnl gt_NEEDS_INIT ensures that the gt_needs variable is initialized.
 
- m4_define([gt_NEEDS_INIT],
 
- [
 
-   m4_divert_text([DEFAULTS], [gt_needs=])
 
-   m4_define([gt_NEEDS_INIT], [])
 
- ])
 
- dnl Usage: AM_GNU_GETTEXT_NEED([NEEDSYMBOL])
 
- AC_DEFUN([AM_GNU_GETTEXT_NEED],
 
- [
 
-   m4_divert_text([INIT_PREPARE], [gt_needs="$gt_needs $1"])
 
- ])
 
- dnl Usage: AM_GNU_GETTEXT_VERSION([gettext-version])
 
- AC_DEFUN([AM_GNU_GETTEXT_VERSION], [])
 
 
  |