Math Processor Unit Library

libmpu – library of arithmetic functions for integer, real, and complex numbers of increased digit capacity

16 Commits   0 Branches   2 Tags
868b2b66 (kx 2024-12-20 16:11:07 +0300   1) # gettext.m4 serial 71 (gettext-0.20.2)
868b2b66 (kx 2024-12-20 16:11:07 +0300   2) dnl Copyright (C) 1995-2014, 2016, 2018-2020 Free Software Foundation, Inc.
868b2b66 (kx 2024-12-20 16:11:07 +0300   3) dnl This file is free software; the Free Software Foundation
868b2b66 (kx 2024-12-20 16:11:07 +0300   4) dnl gives unlimited permission to copy and/or distribute it,
868b2b66 (kx 2024-12-20 16:11:07 +0300   5) dnl with or without modifications, as long as this notice is preserved.
868b2b66 (kx 2024-12-20 16:11:07 +0300   6) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300   7) dnl This file can be used in projects which are not available under
868b2b66 (kx 2024-12-20 16:11:07 +0300   8) dnl the GNU General Public License or the GNU Lesser General Public
868b2b66 (kx 2024-12-20 16:11:07 +0300   9) dnl License but which still want to provide support for the GNU gettext
868b2b66 (kx 2024-12-20 16:11:07 +0300  10) dnl functionality.
868b2b66 (kx 2024-12-20 16:11:07 +0300  11) dnl Please note that the actual code of the GNU gettext library is covered
868b2b66 (kx 2024-12-20 16:11:07 +0300  12) dnl by the GNU Lesser General Public License, and the rest of the GNU
868b2b66 (kx 2024-12-20 16:11:07 +0300  13) dnl gettext package is covered by the GNU General Public License.
868b2b66 (kx 2024-12-20 16:11:07 +0300  14) dnl They are *not* in the public domain.
868b2b66 (kx 2024-12-20 16:11:07 +0300  15) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  16) dnl Authors:
868b2b66 (kx 2024-12-20 16:11:07 +0300  17) dnl   Ulrich Drepper <drepper@cygnus.com>, 1995-2000.
868b2b66 (kx 2024-12-20 16:11:07 +0300  18) dnl   Bruno Haible <haible@clisp.cons.org>, 2000-2006, 2008-2010.
868b2b66 (kx 2024-12-20 16:11:07 +0300  19) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  20) dnl Macro to add for using GNU gettext.
868b2b66 (kx 2024-12-20 16:11:07 +0300  21) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  22) dnl Usage: AM_GNU_GETTEXT([INTLSYMBOL], [NEEDSYMBOL], [INTLDIR]).
868b2b66 (kx 2024-12-20 16:11:07 +0300  23) dnl INTLSYMBOL must be one of 'external', 'use-libtool'.
868b2b66 (kx 2024-12-20 16:11:07 +0300  24) dnl    INTLSYMBOL should be 'external' for packages other than GNU gettext, and
868b2b66 (kx 2024-12-20 16:11:07 +0300  25) dnl    'use-libtool' for the packages 'gettext-runtime' and 'gettext-tools'.
868b2b66 (kx 2024-12-20 16:11:07 +0300  26) dnl    If INTLSYMBOL is 'use-libtool', then a libtool library
868b2b66 (kx 2024-12-20 16:11:07 +0300  27) dnl    $(top_builddir)/intl/libintl.la will be created (shared and/or static,
868b2b66 (kx 2024-12-20 16:11:07 +0300  28) dnl    depending on --{enable,disable}-{shared,static} and on the presence of
868b2b66 (kx 2024-12-20 16:11:07 +0300  29) dnl    AM-DISABLE-SHARED).
868b2b66 (kx 2024-12-20 16:11:07 +0300  30) dnl If NEEDSYMBOL is specified and is 'need-ngettext', then GNU gettext
868b2b66 (kx 2024-12-20 16:11:07 +0300  31) dnl    implementations (in libc or libintl) without the ngettext() function
868b2b66 (kx 2024-12-20 16:11:07 +0300  32) dnl    will be ignored.  If NEEDSYMBOL is specified and is
868b2b66 (kx 2024-12-20 16:11:07 +0300  33) dnl    'need-formatstring-macros', then GNU gettext implementations that don't
868b2b66 (kx 2024-12-20 16:11:07 +0300  34) dnl    support the ISO C 99 <inttypes.h> formatstring macros will be ignored.
868b2b66 (kx 2024-12-20 16:11:07 +0300  35) dnl INTLDIR is used to find the intl libraries.  If empty,
868b2b66 (kx 2024-12-20 16:11:07 +0300  36) dnl    the value '$(top_builddir)/intl/' is used.
868b2b66 (kx 2024-12-20 16:11:07 +0300  37) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300  38) dnl The result of the configuration is one of three cases:
868b2b66 (kx 2024-12-20 16:11:07 +0300  39) dnl 1) GNU gettext, as included in the intl subdirectory, will be compiled
868b2b66 (kx 2024-12-20 16:11:07 +0300  40) dnl    and used.
868b2b66 (kx 2024-12-20 16:11:07 +0300  41) dnl    Catalog format: GNU --> install in $(datadir)
868b2b66 (kx 2024-12-20 16:11:07 +0300  42) dnl    Catalog extension: .mo after installation, .gmo in source tree
868b2b66 (kx 2024-12-20 16:11:07 +0300  43) dnl 2) GNU gettext has been found in the system's C library.
868b2b66 (kx 2024-12-20 16:11:07 +0300  44) dnl    Catalog format: GNU --> install in $(datadir)
868b2b66 (kx 2024-12-20 16:11:07 +0300  45) dnl    Catalog extension: .mo after installation, .gmo in source tree
868b2b66 (kx 2024-12-20 16:11:07 +0300  46) dnl 3) No internationalization, always use English msgid.
868b2b66 (kx 2024-12-20 16:11:07 +0300  47) dnl    Catalog format: none
868b2b66 (kx 2024-12-20 16:11:07 +0300  48) dnl    Catalog extension: none
868b2b66 (kx 2024-12-20 16:11:07 +0300  49) dnl If INTLSYMBOL is 'external', only cases 2 and 3 can occur.
868b2b66 (kx 2024-12-20 16:11:07 +0300  50) dnl The use of .gmo is historical (it was needed to avoid overwriting the
868b2b66 (kx 2024-12-20 16:11:07 +0300  51) dnl GNU format catalogs when building on a platform with an X/Open gettext),
868b2b66 (kx 2024-12-20 16:11:07 +0300  52) dnl but we keep it in order not to force irrelevant filename changes on the
868b2b66 (kx 2024-12-20 16:11:07 +0300  53) dnl maintainers.
868b2b66 (kx 2024-12-20 16:11:07 +0300  54) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300  55) AC_DEFUN([AM_GNU_GETTEXT],
868b2b66 (kx 2024-12-20 16:11:07 +0300  56) [
868b2b66 (kx 2024-12-20 16:11:07 +0300  57)   dnl Argument checking.
868b2b66 (kx 2024-12-20 16:11:07 +0300  58)   ifelse([$1], [], , [ifelse([$1], [external], , [ifelse([$1], [use-libtool], ,
868b2b66 (kx 2024-12-20 16:11:07 +0300  59)     [errprint([ERROR: invalid first argument to AM_GNU_GETTEXT
868b2b66 (kx 2024-12-20 16:11:07 +0300  60) ])])])])
868b2b66 (kx 2024-12-20 16:11:07 +0300  61)   ifelse(ifelse([$1], [], [old])[]ifelse([$1], [no-libtool], [old]), [old],
868b2b66 (kx 2024-12-20 16:11:07 +0300  62)     [errprint([ERROR: Use of AM_GNU_GETTEXT without [external] argument is no longer supported.
868b2b66 (kx 2024-12-20 16:11:07 +0300  63) ])])
868b2b66 (kx 2024-12-20 16:11:07 +0300  64)   ifelse([$2], [], , [ifelse([$2], [need-ngettext], , [ifelse([$2], [need-formatstring-macros], ,
868b2b66 (kx 2024-12-20 16:11:07 +0300  65)     [errprint([ERROR: invalid second argument to AM_GNU_GETTEXT
868b2b66 (kx 2024-12-20 16:11:07 +0300  66) ])])])])
868b2b66 (kx 2024-12-20 16:11:07 +0300  67)   define([gt_included_intl],
868b2b66 (kx 2024-12-20 16:11:07 +0300  68)     ifelse([$1], [external], [no], [yes]))
868b2b66 (kx 2024-12-20 16:11:07 +0300  69)   gt_NEEDS_INIT
868b2b66 (kx 2024-12-20 16:11:07 +0300  70)   AM_GNU_GETTEXT_NEED([$2])
868b2b66 (kx 2024-12-20 16:11:07 +0300  71) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  72)   AC_REQUIRE([AM_PO_SUBDIRS])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300  73)   ifelse(gt_included_intl, yes, [
868b2b66 (kx 2024-12-20 16:11:07 +0300  74)     AC_REQUIRE([AM_INTL_SUBDIR])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300  75)   ])
868b2b66 (kx 2024-12-20 16:11:07 +0300  76) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  77)   dnl Prerequisites of AC_LIB_LINKFLAGS_BODY.
868b2b66 (kx 2024-12-20 16:11:07 +0300  78)   AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
868b2b66 (kx 2024-12-20 16:11:07 +0300  79)   AC_REQUIRE([AC_LIB_RPATH])
868b2b66 (kx 2024-12-20 16:11:07 +0300  80) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  81)   dnl Sometimes libintl requires libiconv, so first search for libiconv.
868b2b66 (kx 2024-12-20 16:11:07 +0300  82)   dnl Ideally we would do this search only after the
868b2b66 (kx 2024-12-20 16:11:07 +0300  83)   dnl      if test "$USE_NLS" = "yes"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300  84)   dnl        if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then
868b2b66 (kx 2024-12-20 16:11:07 +0300  85)   dnl tests. But if configure.in invokes AM_ICONV after AM_GNU_GETTEXT
868b2b66 (kx 2024-12-20 16:11:07 +0300  86)   dnl the configure script would need to contain the same shell code
868b2b66 (kx 2024-12-20 16:11:07 +0300  87)   dnl again, outside any 'if'. There are two solutions:
868b2b66 (kx 2024-12-20 16:11:07 +0300  88)   dnl - Invoke AM_ICONV_LINKFLAGS_BODY here, outside any 'if'.
868b2b66 (kx 2024-12-20 16:11:07 +0300  89)   dnl - Control the expansions in more detail using AC_PROVIDE_IFELSE.
868b2b66 (kx 2024-12-20 16:11:07 +0300  90)   dnl Since AC_PROVIDE_IFELSE is not documented, we avoid it.
868b2b66 (kx 2024-12-20 16:11:07 +0300  91)   ifelse(gt_included_intl, yes, , [
868b2b66 (kx 2024-12-20 16:11:07 +0300  92)     AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY])
868b2b66 (kx 2024-12-20 16:11:07 +0300  93)   ])
868b2b66 (kx 2024-12-20 16:11:07 +0300  94) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  95)   dnl Sometimes, on Mac OS X, libintl requires linking with CoreFoundation.
868b2b66 (kx 2024-12-20 16:11:07 +0300  96)   gt_INTL_MACOSX
868b2b66 (kx 2024-12-20 16:11:07 +0300  97) 
868b2b66 (kx 2024-12-20 16:11:07 +0300  98)   dnl Set USE_NLS.
868b2b66 (kx 2024-12-20 16:11:07 +0300  99)   AC_REQUIRE([AM_NLS])
868b2b66 (kx 2024-12-20 16:11:07 +0300 100) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 101)   ifelse(gt_included_intl, yes, [
868b2b66 (kx 2024-12-20 16:11:07 +0300 102)     BUILD_INCLUDED_LIBINTL=no
868b2b66 (kx 2024-12-20 16:11:07 +0300 103)     USE_INCLUDED_LIBINTL=no
868b2b66 (kx 2024-12-20 16:11:07 +0300 104)   ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 105)   LIBINTL=
868b2b66 (kx 2024-12-20 16:11:07 +0300 106)   LTLIBINTL=
868b2b66 (kx 2024-12-20 16:11:07 +0300 107)   POSUB=
868b2b66 (kx 2024-12-20 16:11:07 +0300 108) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 109)   dnl Add a version number to the cache macros.
868b2b66 (kx 2024-12-20 16:11:07 +0300 110)   case " $gt_needs " in
868b2b66 (kx 2024-12-20 16:11:07 +0300 111)     *" need-formatstring-macros "*) gt_api_version=3 ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 112)     *" need-ngettext "*) gt_api_version=2 ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 113)     *) gt_api_version=1 ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 114)   esac
868b2b66 (kx 2024-12-20 16:11:07 +0300 115)   gt_func_gnugettext_libc="gt_cv_func_gnugettext${gt_api_version}_libc"
868b2b66 (kx 2024-12-20 16:11:07 +0300 116)   gt_func_gnugettext_libintl="gt_cv_func_gnugettext${gt_api_version}_libintl"
868b2b66 (kx 2024-12-20 16:11:07 +0300 117) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 118)   dnl If we use NLS figure out what method
868b2b66 (kx 2024-12-20 16:11:07 +0300 119)   if test "$USE_NLS" = "yes"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 120)     gt_use_preinstalled_gnugettext=no
868b2b66 (kx 2024-12-20 16:11:07 +0300 121)     ifelse(gt_included_intl, yes, [
868b2b66 (kx 2024-12-20 16:11:07 +0300 122)       AC_MSG_CHECKING([whether included gettext is requested])
868b2b66 (kx 2024-12-20 16:11:07 +0300 123)       AC_ARG_WITH([included-gettext],
868b2b66 (kx 2024-12-20 16:11:07 +0300 124)         [  --with-included-gettext use the GNU gettext library included here],
868b2b66 (kx 2024-12-20 16:11:07 +0300 125)         nls_cv_force_use_gnu_gettext=$withval,
868b2b66 (kx 2024-12-20 16:11:07 +0300 126)         nls_cv_force_use_gnu_gettext=no)
868b2b66 (kx 2024-12-20 16:11:07 +0300 127)       AC_MSG_RESULT([$nls_cv_force_use_gnu_gettext])
868b2b66 (kx 2024-12-20 16:11:07 +0300 128) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 129)       nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
868b2b66 (kx 2024-12-20 16:11:07 +0300 130)       if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 131)     ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 132)         dnl User does not insist on using GNU NLS library.  Figure out what
868b2b66 (kx 2024-12-20 16:11:07 +0300 133)         dnl to use.  If GNU gettext is available we use this.  Else we have
868b2b66 (kx 2024-12-20 16:11:07 +0300 134)         dnl to fall back to GNU NLS library.
868b2b66 (kx 2024-12-20 16:11:07 +0300 135) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 136)         if test $gt_api_version -ge 3; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 137)           gt_revision_test_code='
868b2b66 (kx 2024-12-20 16:11:07 +0300 138) #ifndef __GNU_GETTEXT_SUPPORTED_REVISION
868b2b66 (kx 2024-12-20 16:11:07 +0300 139) #define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
868b2b66 (kx 2024-12-20 16:11:07 +0300 140) #endif
868b2b66 (kx 2024-12-20 16:11:07 +0300 141) changequote(,)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 142) typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
868b2b66 (kx 2024-12-20 16:11:07 +0300 143) changequote([,])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 144) '
868b2b66 (kx 2024-12-20 16:11:07 +0300 145)         else
868b2b66 (kx 2024-12-20 16:11:07 +0300 146)           gt_revision_test_code=
868b2b66 (kx 2024-12-20 16:11:07 +0300 147)         fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 148)         if test $gt_api_version -ge 2; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 149)           gt_expression_test_code=' + * ngettext ("", "", 0)'
868b2b66 (kx 2024-12-20 16:11:07 +0300 150)         else
868b2b66 (kx 2024-12-20 16:11:07 +0300 151)           gt_expression_test_code=
868b2b66 (kx 2024-12-20 16:11:07 +0300 152)         fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 153) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 154)         AC_CACHE_CHECK([for GNU gettext in libc], [$gt_func_gnugettext_libc],
868b2b66 (kx 2024-12-20 16:11:07 +0300 155)          [AC_LINK_IFELSE(
868b2b66 (kx 2024-12-20 16:11:07 +0300 156)             [AC_LANG_PROGRAM(
868b2b66 (kx 2024-12-20 16:11:07 +0300 157)                [[
868b2b66 (kx 2024-12-20 16:11:07 +0300 158) #include <libintl.h>
868b2b66 (kx 2024-12-20 16:11:07 +0300 159) #ifndef __GNU_GETTEXT_SUPPORTED_REVISION
868b2b66 (kx 2024-12-20 16:11:07 +0300 160) extern int _nl_msg_cat_cntr;
868b2b66 (kx 2024-12-20 16:11:07 +0300 161) extern int *_nl_domain_bindings;
868b2b66 (kx 2024-12-20 16:11:07 +0300 162) #define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_domain_bindings)
868b2b66 (kx 2024-12-20 16:11:07 +0300 163) #else
868b2b66 (kx 2024-12-20 16:11:07 +0300 164) #define __GNU_GETTEXT_SYMBOL_EXPRESSION 0
868b2b66 (kx 2024-12-20 16:11:07 +0300 165) #endif
868b2b66 (kx 2024-12-20 16:11:07 +0300 166) $gt_revision_test_code
868b2b66 (kx 2024-12-20 16:11:07 +0300 167)                ]],
868b2b66 (kx 2024-12-20 16:11:07 +0300 168)                [[
868b2b66 (kx 2024-12-20 16:11:07 +0300 169) bindtextdomain ("", "");
868b2b66 (kx 2024-12-20 16:11:07 +0300 170) return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION
868b2b66 (kx 2024-12-20 16:11:07 +0300 171)                ]])],
868b2b66 (kx 2024-12-20 16:11:07 +0300 172)             [eval "$gt_func_gnugettext_libc=yes"],
868b2b66 (kx 2024-12-20 16:11:07 +0300 173)             [eval "$gt_func_gnugettext_libc=no"])])
868b2b66 (kx 2024-12-20 16:11:07 +0300 174) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 175)         if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 176)           dnl Sometimes libintl requires libiconv, so first search for libiconv.
868b2b66 (kx 2024-12-20 16:11:07 +0300 177)           ifelse(gt_included_intl, yes, , [
868b2b66 (kx 2024-12-20 16:11:07 +0300 178)             AM_ICONV_LINK
868b2b66 (kx 2024-12-20 16:11:07 +0300 179)           ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 180)           dnl Search for libintl and define LIBINTL, LTLIBINTL and INCINTL
868b2b66 (kx 2024-12-20 16:11:07 +0300 181)           dnl accordingly. Don't use AC_LIB_LINKFLAGS_BODY([intl],[iconv])
868b2b66 (kx 2024-12-20 16:11:07 +0300 182)           dnl because that would add "-liconv" to LIBINTL and LTLIBINTL
868b2b66 (kx 2024-12-20 16:11:07 +0300 183)           dnl even if libiconv doesn't exist.
868b2b66 (kx 2024-12-20 16:11:07 +0300 184)           AC_LIB_LINKFLAGS_BODY([intl])
868b2b66 (kx 2024-12-20 16:11:07 +0300 185)           AC_CACHE_CHECK([for GNU gettext in libintl],
868b2b66 (kx 2024-12-20 16:11:07 +0300 186)             [$gt_func_gnugettext_libintl],
868b2b66 (kx 2024-12-20 16:11:07 +0300 187)            [gt_save_CPPFLAGS="$CPPFLAGS"
868b2b66 (kx 2024-12-20 16:11:07 +0300 188)             CPPFLAGS="$CPPFLAGS $INCINTL"
868b2b66 (kx 2024-12-20 16:11:07 +0300 189)             gt_save_LIBS="$LIBS"
868b2b66 (kx 2024-12-20 16:11:07 +0300 190)             LIBS="$LIBS $LIBINTL"
868b2b66 (kx 2024-12-20 16:11:07 +0300 191)             dnl Now see whether libintl exists and does not depend on libiconv.
868b2b66 (kx 2024-12-20 16:11:07 +0300 192)             AC_LINK_IFELSE(
868b2b66 (kx 2024-12-20 16:11:07 +0300 193)               [AC_LANG_PROGRAM(
868b2b66 (kx 2024-12-20 16:11:07 +0300 194)                  [[
868b2b66 (kx 2024-12-20 16:11:07 +0300 195) #include <libintl.h>
868b2b66 (kx 2024-12-20 16:11:07 +0300 196) #ifndef __GNU_GETTEXT_SUPPORTED_REVISION
868b2b66 (kx 2024-12-20 16:11:07 +0300 197) extern int _nl_msg_cat_cntr;
868b2b66 (kx 2024-12-20 16:11:07 +0300 198) extern
868b2b66 (kx 2024-12-20 16:11:07 +0300 199) #ifdef __cplusplus
868b2b66 (kx 2024-12-20 16:11:07 +0300 200) "C"
868b2b66 (kx 2024-12-20 16:11:07 +0300 201) #endif
868b2b66 (kx 2024-12-20 16:11:07 +0300 202) const char *_nl_expand_alias (const char *);
868b2b66 (kx 2024-12-20 16:11:07 +0300 203) #define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_expand_alias (""))
868b2b66 (kx 2024-12-20 16:11:07 +0300 204) #else
868b2b66 (kx 2024-12-20 16:11:07 +0300 205) #define __GNU_GETTEXT_SYMBOL_EXPRESSION 0
868b2b66 (kx 2024-12-20 16:11:07 +0300 206) #endif
868b2b66 (kx 2024-12-20 16:11:07 +0300 207) $gt_revision_test_code
868b2b66 (kx 2024-12-20 16:11:07 +0300 208)                  ]],
868b2b66 (kx 2024-12-20 16:11:07 +0300 209)                  [[
868b2b66 (kx 2024-12-20 16:11:07 +0300 210) bindtextdomain ("", "");
868b2b66 (kx 2024-12-20 16:11:07 +0300 211) return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION
868b2b66 (kx 2024-12-20 16:11:07 +0300 212)                  ]])],
868b2b66 (kx 2024-12-20 16:11:07 +0300 213)               [eval "$gt_func_gnugettext_libintl=yes"],
868b2b66 (kx 2024-12-20 16:11:07 +0300 214)               [eval "$gt_func_gnugettext_libintl=no"])
868b2b66 (kx 2024-12-20 16:11:07 +0300 215)             dnl Now see whether libintl exists and depends on libiconv.
868b2b66 (kx 2024-12-20 16:11:07 +0300 216)             if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 217)               LIBS="$LIBS $LIBICONV"
868b2b66 (kx 2024-12-20 16:11:07 +0300 218)               AC_LINK_IFELSE(
868b2b66 (kx 2024-12-20 16:11:07 +0300 219)                 [AC_LANG_PROGRAM(
868b2b66 (kx 2024-12-20 16:11:07 +0300 220)                    [[
868b2b66 (kx 2024-12-20 16:11:07 +0300 221) #include <libintl.h>
868b2b66 (kx 2024-12-20 16:11:07 +0300 222) #ifndef __GNU_GETTEXT_SUPPORTED_REVISION
868b2b66 (kx 2024-12-20 16:11:07 +0300 223) extern int _nl_msg_cat_cntr;
868b2b66 (kx 2024-12-20 16:11:07 +0300 224) extern
868b2b66 (kx 2024-12-20 16:11:07 +0300 225) #ifdef __cplusplus
868b2b66 (kx 2024-12-20 16:11:07 +0300 226) "C"
868b2b66 (kx 2024-12-20 16:11:07 +0300 227) #endif
868b2b66 (kx 2024-12-20 16:11:07 +0300 228) const char *_nl_expand_alias (const char *);
868b2b66 (kx 2024-12-20 16:11:07 +0300 229) #define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_expand_alias (""))
868b2b66 (kx 2024-12-20 16:11:07 +0300 230) #else
868b2b66 (kx 2024-12-20 16:11:07 +0300 231) #define __GNU_GETTEXT_SYMBOL_EXPRESSION 0
868b2b66 (kx 2024-12-20 16:11:07 +0300 232) #endif
868b2b66 (kx 2024-12-20 16:11:07 +0300 233) $gt_revision_test_code
868b2b66 (kx 2024-12-20 16:11:07 +0300 234)                    ]],
868b2b66 (kx 2024-12-20 16:11:07 +0300 235)                    [[
868b2b66 (kx 2024-12-20 16:11:07 +0300 236) bindtextdomain ("", "");
868b2b66 (kx 2024-12-20 16:11:07 +0300 237) return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION
868b2b66 (kx 2024-12-20 16:11:07 +0300 238)                    ]])],
868b2b66 (kx 2024-12-20 16:11:07 +0300 239)                 [LIBINTL="$LIBINTL $LIBICONV"
868b2b66 (kx 2024-12-20 16:11:07 +0300 240)                  LTLIBINTL="$LTLIBINTL $LTLIBICONV"
868b2b66 (kx 2024-12-20 16:11:07 +0300 241)                  eval "$gt_func_gnugettext_libintl=yes"
868b2b66 (kx 2024-12-20 16:11:07 +0300 242)                 ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 243)             fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 244)             CPPFLAGS="$gt_save_CPPFLAGS"
868b2b66 (kx 2024-12-20 16:11:07 +0300 245)             LIBS="$gt_save_LIBS"])
868b2b66 (kx 2024-12-20 16:11:07 +0300 246)         fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 247) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 248)         dnl If an already present or preinstalled GNU gettext() is found,
868b2b66 (kx 2024-12-20 16:11:07 +0300 249)         dnl use it.  But if this macro is used in GNU gettext, and GNU
868b2b66 (kx 2024-12-20 16:11:07 +0300 250)         dnl gettext is already preinstalled in libintl, we update this
868b2b66 (kx 2024-12-20 16:11:07 +0300 251)         dnl libintl.  (Cf. the install rule in intl/Makefile.in.)
868b2b66 (kx 2024-12-20 16:11:07 +0300 252)         if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \
868b2b66 (kx 2024-12-20 16:11:07 +0300 253)            || { { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; } \
868b2b66 (kx 2024-12-20 16:11:07 +0300 254)                 && test "$PACKAGE" != gettext-runtime \
868b2b66 (kx 2024-12-20 16:11:07 +0300 255)                 && test "$PACKAGE" != gettext-tools; }; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 256)           gt_use_preinstalled_gnugettext=yes
868b2b66 (kx 2024-12-20 16:11:07 +0300 257)         else
868b2b66 (kx 2024-12-20 16:11:07 +0300 258)           dnl Reset the values set by searching for libintl.
868b2b66 (kx 2024-12-20 16:11:07 +0300 259)           LIBINTL=
868b2b66 (kx 2024-12-20 16:11:07 +0300 260)           LTLIBINTL=
868b2b66 (kx 2024-12-20 16:11:07 +0300 261)           INCINTL=
868b2b66 (kx 2024-12-20 16:11:07 +0300 262)         fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 263) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 264)     ifelse(gt_included_intl, yes, [
868b2b66 (kx 2024-12-20 16:11:07 +0300 265)         if test "$gt_use_preinstalled_gnugettext" != "yes"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 266)           dnl GNU gettext is not found in the C library.
868b2b66 (kx 2024-12-20 16:11:07 +0300 267)           dnl Fall back on included GNU gettext library.
868b2b66 (kx 2024-12-20 16:11:07 +0300 268)           nls_cv_use_gnu_gettext=yes
868b2b66 (kx 2024-12-20 16:11:07 +0300 269)         fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 270)       fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 271) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 272)       if test "$nls_cv_use_gnu_gettext" = "yes"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 273)         dnl Mark actions used to generate GNU NLS library.
868b2b66 (kx 2024-12-20 16:11:07 +0300 274)         BUILD_INCLUDED_LIBINTL=yes
868b2b66 (kx 2024-12-20 16:11:07 +0300 275)         USE_INCLUDED_LIBINTL=yes
868b2b66 (kx 2024-12-20 16:11:07 +0300 276)         LIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.la $LIBICONV $LIBTHREAD"
868b2b66 (kx 2024-12-20 16:11:07 +0300 277)         LTLIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.la $LTLIBICONV $LTLIBTHREAD"
868b2b66 (kx 2024-12-20 16:11:07 +0300 278)         LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'`
868b2b66 (kx 2024-12-20 16:11:07 +0300 279)       fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 280) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 281)       CATOBJEXT=
868b2b66 (kx 2024-12-20 16:11:07 +0300 282)       if test "$gt_use_preinstalled_gnugettext" = "yes" \
868b2b66 (kx 2024-12-20 16:11:07 +0300 283)          || test "$nls_cv_use_gnu_gettext" = "yes"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 284)         dnl Mark actions to use GNU gettext tools.
868b2b66 (kx 2024-12-20 16:11:07 +0300 285)         CATOBJEXT=.gmo
868b2b66 (kx 2024-12-20 16:11:07 +0300 286)       fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 287)     ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 288) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 289)     if test -n "$INTL_MACOSX_LIBS"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 290)       if test "$gt_use_preinstalled_gnugettext" = "yes" \
868b2b66 (kx 2024-12-20 16:11:07 +0300 291)          || test "$nls_cv_use_gnu_gettext" = "yes"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 292)         dnl Some extra flags are needed during linking.
868b2b66 (kx 2024-12-20 16:11:07 +0300 293)         LIBINTL="$LIBINTL $INTL_MACOSX_LIBS"
868b2b66 (kx 2024-12-20 16:11:07 +0300 294)         LTLIBINTL="$LTLIBINTL $INTL_MACOSX_LIBS"
868b2b66 (kx 2024-12-20 16:11:07 +0300 295)       fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 296)     fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 297) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 298)     if test "$gt_use_preinstalled_gnugettext" = "yes" \
868b2b66 (kx 2024-12-20 16:11:07 +0300 299)        || test "$nls_cv_use_gnu_gettext" = "yes"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 300)       AC_DEFINE([ENABLE_NLS], [1],
868b2b66 (kx 2024-12-20 16:11:07 +0300 301)         [Define to 1 if translation of program messages to the user's native language
868b2b66 (kx 2024-12-20 16:11:07 +0300 302)    is requested.])
868b2b66 (kx 2024-12-20 16:11:07 +0300 303)     else
868b2b66 (kx 2024-12-20 16:11:07 +0300 304)       USE_NLS=no
868b2b66 (kx 2024-12-20 16:11:07 +0300 305)     fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 306)   fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 307) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 308)   AC_MSG_CHECKING([whether to use NLS])
868b2b66 (kx 2024-12-20 16:11:07 +0300 309)   AC_MSG_RESULT([$USE_NLS])
868b2b66 (kx 2024-12-20 16:11:07 +0300 310)   if test "$USE_NLS" = "yes"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 311)     AC_MSG_CHECKING([where the gettext function comes from])
868b2b66 (kx 2024-12-20 16:11:07 +0300 312)     if test "$gt_use_preinstalled_gnugettext" = "yes"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 313)       if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 314)         gt_source="external libintl"
868b2b66 (kx 2024-12-20 16:11:07 +0300 315)       else
868b2b66 (kx 2024-12-20 16:11:07 +0300 316)         gt_source="libc"
868b2b66 (kx 2024-12-20 16:11:07 +0300 317)       fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 318)     else
868b2b66 (kx 2024-12-20 16:11:07 +0300 319)       gt_source="included intl directory"
868b2b66 (kx 2024-12-20 16:11:07 +0300 320)     fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 321)     AC_MSG_RESULT([$gt_source])
868b2b66 (kx 2024-12-20 16:11:07 +0300 322)   fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 323) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 324)   if test "$USE_NLS" = "yes"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 325) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 326)     if test "$gt_use_preinstalled_gnugettext" = "yes"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 327)       if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 328)         AC_MSG_CHECKING([how to link with libintl])
868b2b66 (kx 2024-12-20 16:11:07 +0300 329)         AC_MSG_RESULT([$LIBINTL])
868b2b66 (kx 2024-12-20 16:11:07 +0300 330)         AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCINTL])
868b2b66 (kx 2024-12-20 16:11:07 +0300 331)       fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 332) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 333)       dnl For backward compatibility. Some packages may be using this.
868b2b66 (kx 2024-12-20 16:11:07 +0300 334)       AC_DEFINE([HAVE_GETTEXT], [1],
868b2b66 (kx 2024-12-20 16:11:07 +0300 335)        [Define if the GNU gettext() function is already present or preinstalled.])
868b2b66 (kx 2024-12-20 16:11:07 +0300 336)       AC_DEFINE([HAVE_DCGETTEXT], [1],
868b2b66 (kx 2024-12-20 16:11:07 +0300 337)        [Define if the GNU dcgettext() function is already present or preinstalled.])
868b2b66 (kx 2024-12-20 16:11:07 +0300 338)     fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 339) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 340)     dnl We need to process the po/ directory.
868b2b66 (kx 2024-12-20 16:11:07 +0300 341)     POSUB=po
868b2b66 (kx 2024-12-20 16:11:07 +0300 342)   fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 343) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 344)   ifelse(gt_included_intl, yes, [
868b2b66 (kx 2024-12-20 16:11:07 +0300 345)     dnl In GNU gettext we have to set BUILD_INCLUDED_LIBINTL to 'yes'
868b2b66 (kx 2024-12-20 16:11:07 +0300 346)     dnl because some of the testsuite requires it.
868b2b66 (kx 2024-12-20 16:11:07 +0300 347)     BUILD_INCLUDED_LIBINTL=yes
868b2b66 (kx 2024-12-20 16:11:07 +0300 348) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 349)     dnl Make all variables we use known to autoconf.
868b2b66 (kx 2024-12-20 16:11:07 +0300 350)     AC_SUBST([BUILD_INCLUDED_LIBINTL])
868b2b66 (kx 2024-12-20 16:11:07 +0300 351)     AC_SUBST([USE_INCLUDED_LIBINTL])
868b2b66 (kx 2024-12-20 16:11:07 +0300 352)     AC_SUBST([CATOBJEXT])
868b2b66 (kx 2024-12-20 16:11:07 +0300 353)   ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 354) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 355)   dnl For backward compatibility. Some Makefiles may be using this.
868b2b66 (kx 2024-12-20 16:11:07 +0300 356)   INTLLIBS="$LIBINTL"
868b2b66 (kx 2024-12-20 16:11:07 +0300 357)   AC_SUBST([INTLLIBS])
868b2b66 (kx 2024-12-20 16:11:07 +0300 358) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 359)   dnl Make all documented variables known to autoconf.
868b2b66 (kx 2024-12-20 16:11:07 +0300 360)   AC_SUBST([LIBINTL])
868b2b66 (kx 2024-12-20 16:11:07 +0300 361)   AC_SUBST([LTLIBINTL])
868b2b66 (kx 2024-12-20 16:11:07 +0300 362)   AC_SUBST([POSUB])
868b2b66 (kx 2024-12-20 16:11:07 +0300 363) ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 364) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 365) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 366) dnl gt_NEEDS_INIT ensures that the gt_needs variable is initialized.
868b2b66 (kx 2024-12-20 16:11:07 +0300 367) m4_define([gt_NEEDS_INIT],
868b2b66 (kx 2024-12-20 16:11:07 +0300 368) [
868b2b66 (kx 2024-12-20 16:11:07 +0300 369)   m4_divert_text([DEFAULTS], [gt_needs=])
868b2b66 (kx 2024-12-20 16:11:07 +0300 370)   m4_define([gt_NEEDS_INIT], [])
868b2b66 (kx 2024-12-20 16:11:07 +0300 371) ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 372) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 373) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 374) dnl Usage: AM_GNU_GETTEXT_NEED([NEEDSYMBOL])
868b2b66 (kx 2024-12-20 16:11:07 +0300 375) AC_DEFUN([AM_GNU_GETTEXT_NEED],
868b2b66 (kx 2024-12-20 16:11:07 +0300 376) [
868b2b66 (kx 2024-12-20 16:11:07 +0300 377)   m4_divert_text([INIT_PREPARE], [gt_needs="$gt_needs $1"])
868b2b66 (kx 2024-12-20 16:11:07 +0300 378) ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 379) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 380) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 381) dnl Usage: AM_GNU_GETTEXT_VERSION([gettext-version])
868b2b66 (kx 2024-12-20 16:11:07 +0300 382) AC_DEFUN([AM_GNU_GETTEXT_VERSION], [])
868b2b66 (kx 2024-12-20 16:11:07 +0300 383) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 384) 
868b2b66 (kx 2024-12-20 16:11:07 +0300 385) dnl Usage: AM_GNU_GETTEXT_REQUIRE_VERSION([gettext-version])
868b2b66 (kx 2024-12-20 16:11:07 +0300 386) AC_DEFUN([AM_GNU_GETTEXT_REQUIRE_VERSION], [])