summaryrefslogtreecommitdiff
path: root/m4/gettext.m4
diff options
context:
space:
mode:
Diffstat (limited to 'm4/gettext.m4')
-rw-r--r--m4/gettext.m4322
1 files changed, 191 insertions, 131 deletions
diff --git a/m4/gettext.m4 b/m4/gettext.m4
index b01bbb3d6..368907a29 100644
--- a/m4/gettext.m4
+++ b/m4/gettext.m4
@@ -1,10 +1,8 @@
-# gettext.m4 serial 29
-dnl Copyright (C) 1995-2004 Free Software Foundation, Inc.
-dnl This file is free software, distributed under the terms of the GNU
-dnl General Public License. As a special exception to the GNU General
-dnl Public License, this file may be distributed as part of a program
-dnl that contains a configuration script generated by Autoconf, under
-dnl the same distribution terms as the rest of that program.
+# gettext.m4 serial 34 (gettext-0.14.2)
+dnl Copyright (C) 1995-2005 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
@@ -69,9 +67,9 @@ AC_DEFUN([AM_GNU_GETTEXT],
define(gt_libtool_suffix_prefix, ifelse([$1], [use-libtool], [l], []))
AC_REQUIRE([AM_PO_SUBDIRS])dnl
-# ifelse(gt_included_intl, yes, [
-# AC_REQUIRE([AM_INTL_SUBDIR])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])
@@ -92,6 +90,9 @@ AC_DEFUN([AM_GNU_GETTEXT],
AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY])
])
+ dnl Sometimes, on MacOS X, libintl requires linking with CoreFoundation.
+ gt_INTL_MACOSX
+
dnl Set USE_NLS.
AM_NLS
@@ -172,9 +173,9 @@ extern
#ifdef __cplusplus
"C"
#endif
-const char *_nl_expand_alias ();],
+const char *_nl_expand_alias (const char *);],
[bindtextdomain ("", "");
-return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)],
+return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias ("")],
gt_cv_func_gnugettext_libintl=yes,
gt_cv_func_gnugettext_libintl=no)
dnl Now see whether libintl exists and depends on libiconv.
@@ -193,9 +194,9 @@ extern
#ifdef __cplusplus
"C"
#endif
-const char *_nl_expand_alias ();],
+const char *_nl_expand_alias (const char *);],
[bindtextdomain ("", "");
-return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)],
+return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias ("")],
[LIBINTL="$LIBINTL $LIBICONV"
LTLIBINTL="$LTLIBINTL $LTLIBICONV"
gt_cv_func_gnugettext_libintl=yes
@@ -245,6 +246,15 @@ return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("",
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,
@@ -344,123 +354,173 @@ return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("",
dnl Checks for all prerequisites of the intl subdirectory,
dnl except for INTL_LIBTOOL_SUFFIX_PREFIX (and possibly LIBTOOL), INTLOBJS,
dnl USE_INCLUDED_LIBINTL, BUILD_INCLUDED_LIBINTL.
-#AC_DEFUN([AM_INTL_SUBDIR],
-#[
-# AC_REQUIRE([AC_PROG_INSTALL])dnl
-# AC_REQUIRE([AM_MKINSTALLDIRS])dnl
-# AC_REQUIRE([AC_PROG_CC])dnl
-# AC_REQUIRE([AC_CANONICAL_HOST])dnl
-# AC_REQUIRE([AC_PROG_RANLIB])dnl
-# AC_REQUIRE([AC_ISC_POSIX])dnl
-# AC_REQUIRE([AC_HEADER_STDC])dnl
-# AC_REQUIRE([AC_C_CONST])dnl
-# AC_REQUIRE([bh_C_SIGNED])dnl
-# AC_REQUIRE([AC_C_INLINE])dnl
-# AC_REQUIRE([AC_TYPE_OFF_T])dnl
-# AC_REQUIRE([AC_TYPE_SIZE_T])dnl
-# AC_REQUIRE([gl_AC_TYPE_LONG_LONG])dnl
-# AC_REQUIRE([gt_TYPE_LONGDOUBLE])dnl
-# AC_REQUIRE([gt_TYPE_WCHAR_T])dnl
-# AC_REQUIRE([gt_TYPE_WINT_T])dnl
-# AC_REQUIRE([gl_AC_HEADER_INTTYPES_H])
-# AC_REQUIRE([gl_AC_HEADER_STDINT_H])
-# AC_REQUIRE([gt_TYPE_INTMAX_T])
-# AC_REQUIRE([gt_PRINTF_POSIX])
-# AC_REQUIRE([AC_FUNC_ALLOCA])dnl
-# AC_REQUIRE([AC_FUNC_MMAP])dnl
-# AC_REQUIRE([gl_GLIBC21])dnl
-# AC_REQUIRE([gt_INTDIV0])dnl
-# AC_REQUIRE([gl_AC_TYPE_UINTMAX_T])dnl
-# AC_REQUIRE([gt_HEADER_INTTYPES_H])dnl
-# AC_REQUIRE([gt_INTTYPES_PRI])dnl
-# AC_REQUIRE([gl_XSIZE])dnl
-#
-# AC_CHECK_TYPE([ptrdiff_t], ,
-# [AC_DEFINE([ptrdiff_t], [long],
-# [Define as the type of the result of subtracting two pointers, if the system doesn't define it.])
-# ])
-# AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h stddef.h \
-#stdlib.h string.h unistd.h sys/param.h])
-# AC_CHECK_FUNCS([asprintf fwprintf getcwd getegid geteuid getgid getuid \
-#mempcpy munmap putenv setenv setlocale snprintf stpcpy strcasecmp strdup \
-#strtoul tsearch wcslen __argz_count __argz_stringify __argz_next \
-#__fsetlocking])
-#
-# dnl Use the _snprintf function only if it is declared (because on NetBSD it
-# dnl is defined as a weak alias of snprintf; we prefer to use the latter).
-# gt_CHECK_DECL(_snprintf, [#include <stdio.h>])
-# gt_CHECK_DECL(_snwprintf, [#include <stdio.h>])
-#
-# dnl Use the *_unlocked functions only if they are declared.
-# dnl (because some of them were defined without being declared in Solaris
-# dnl 2.5.1 but were removed in Solaris 2.6, whereas we want binaries built
-# dnl on Solaris 2.5.1 to run on Solaris 2.6).
-# dnl Don't use AC_CHECK_DECLS because it isn't supported in autoconf-2.13.
-# gt_CHECK_DECL(feof_unlocked, [#include <stdio.h>])
-# gt_CHECK_DECL(fgets_unlocked, [#include <stdio.h>])
-# gt_CHECK_DECL(getc_unlocked, [#include <stdio.h>])
-#
-# case $gt_cv_func_printf_posix in
-# *yes) HAVE_POSIX_PRINTF=1 ;;
-# *) HAVE_POSIX_PRINTF=0 ;;
-# esac
-# AC_SUBST([HAVE_POSIX_PRINTF])
-# if test "$ac_cv_func_asprintf" = yes; then
-# HAVE_ASPRINTF=1
-# else
-# HAVE_ASPRINTF=0
-# fi
-# AC_SUBST([HAVE_ASPRINTF])
-# if test "$ac_cv_func_snprintf" = yes; then
-# HAVE_SNPRINTF=1
-# else
-# HAVE_SNPRINTF=0
-# fi
-# AC_SUBST([HAVE_SNPRINTF])
-# if test "$ac_cv_func_wprintf" = yes; then
-# HAVE_WPRINTF=1
-# else
-# HAVE_WPRINTF=0
-# fi
-# AC_SUBST([HAVE_WPRINTF])
-#
-# AM_ICONV
-# AM_LANGINFO_CODESET
-# if test $ac_cv_header_locale_h = yes; then
-# AM_LC_MESSAGES
-# fi
-#
-# dnl intl/plural.c is generated from intl/plural.y. It requires bison,
-# dnl because plural.y uses bison specific features. It requires at least
-# dnl bison-1.26 because earlier versions generate a plural.c that doesn't
-# dnl compile.
-# dnl bison is only needed for the maintainer (who touches plural.y). But in
-# dnl order to avoid separate Makefiles or --enable-maintainer-mode, we put
-# dnl the rule in general Makefile. Now, some people carelessly touch the
-# dnl files or have a broken "make" program, hence the plural.c rule will
-# dnl sometimes fire. To avoid an error, defines BISON to ":" if it is not
-# dnl present or too old.
-# AC_CHECK_PROGS([INTLBISON], [bison])
-# if test -z "$INTLBISON"; then
-# ac_verc_fail=yes
-# else
-# dnl Found it, now check the version.
-# AC_MSG_CHECKING([version of bison])
-#changequote(<<,>>)dnl
-# ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
-# case $ac_prog_version in
-# '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
-# 1.2[6-9]* | 1.[3-9][0-9]* | [2-9].*)
-#changequote([,])dnl
-# ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
-# *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
-# esac
-# AC_MSG_RESULT([$ac_prog_version])
-# fi
-# if test $ac_verc_fail = yes; then
-# INTLBISON=:
-# fi
-#])
+AC_DEFUN([AM_INTL_SUBDIR],
+[
+ AC_REQUIRE([AC_PROG_INSTALL])dnl
+ AC_REQUIRE([AM_MKINSTALLDIRS])dnl
+ AC_REQUIRE([AC_PROG_CC])dnl
+ AC_REQUIRE([AC_CANONICAL_HOST])dnl
+ AC_REQUIRE([gt_GLIBC2])dnl
+ AC_REQUIRE([AC_PROG_RANLIB])dnl
+ AC_REQUIRE([AC_ISC_POSIX])dnl
+ AC_REQUIRE([AC_HEADER_STDC])dnl
+ AC_REQUIRE([AC_C_CONST])dnl
+ AC_REQUIRE([bh_C_SIGNED])dnl
+ AC_REQUIRE([AC_C_INLINE])dnl
+ AC_REQUIRE([AC_TYPE_OFF_T])dnl
+ AC_REQUIRE([AC_TYPE_SIZE_T])dnl
+ AC_REQUIRE([gl_AC_TYPE_LONG_LONG])dnl
+ AC_REQUIRE([gt_TYPE_LONGDOUBLE])dnl
+ AC_REQUIRE([gt_TYPE_WCHAR_T])dnl
+ AC_REQUIRE([gt_TYPE_WINT_T])dnl
+ AC_REQUIRE([gl_AC_HEADER_INTTYPES_H])
+ AC_REQUIRE([gl_AC_HEADER_STDINT_H])
+ AC_REQUIRE([gt_TYPE_INTMAX_T])
+ AC_REQUIRE([gt_PRINTF_POSIX])
+ AC_REQUIRE([AC_FUNC_ALLOCA])dnl
+ AC_REQUIRE([AC_FUNC_MMAP])dnl
+ AC_REQUIRE([gl_GLIBC21])dnl
+ AC_REQUIRE([gt_INTDIV0])dnl
+ AC_REQUIRE([gl_AC_TYPE_UINTMAX_T])dnl
+ AC_REQUIRE([gt_HEADER_INTTYPES_H])dnl
+ AC_REQUIRE([gt_INTTYPES_PRI])dnl
+ AC_REQUIRE([gl_XSIZE])dnl
+ AC_REQUIRE([gt_INTL_MACOSX])dnl
+
+ AC_CHECK_TYPE([ptrdiff_t], ,
+ [AC_DEFINE([ptrdiff_t], [long],
+ [Define as the type of the result of subtracting two pointers, if the system doesn't define it.])
+ ])
+ AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h stddef.h \
+stdlib.h string.h unistd.h sys/param.h])
+ AC_CHECK_FUNCS([asprintf fwprintf getcwd getegid geteuid getgid getuid \
+mempcpy munmap putenv setenv setlocale snprintf stpcpy strcasecmp strdup \
+strtoul tsearch wcslen __argz_count __argz_stringify __argz_next \
+__fsetlocking])
+
+ dnl Use the _snprintf function only if it is declared (because on NetBSD it
+ dnl is defined as a weak alias of snprintf; we prefer to use the latter).
+ gt_CHECK_DECL(_snprintf, [#include <stdio.h>])
+ gt_CHECK_DECL(_snwprintf, [#include <stdio.h>])
+
+ dnl Use the *_unlocked functions only if they are declared.
+ dnl (because some of them were defined without being declared in Solaris
+ dnl 2.5.1 but were removed in Solaris 2.6, whereas we want binaries built
+ dnl on Solaris 2.5.1 to run on Solaris 2.6).
+ dnl Don't use AC_CHECK_DECLS because it isn't supported in autoconf-2.13.
+ gt_CHECK_DECL(feof_unlocked, [#include <stdio.h>])
+ gt_CHECK_DECL(fgets_unlocked, [#include <stdio.h>])
+ gt_CHECK_DECL(getc_unlocked, [#include <stdio.h>])
+
+ case $gt_cv_func_printf_posix in
+ *yes) HAVE_POSIX_PRINTF=1 ;;
+ *) HAVE_POSIX_PRINTF=0 ;;
+ esac
+ AC_SUBST([HAVE_POSIX_PRINTF])
+ if test "$ac_cv_func_asprintf" = yes; then
+ HAVE_ASPRINTF=1
+ else
+ HAVE_ASPRINTF=0
+ fi
+ AC_SUBST([HAVE_ASPRINTF])
+ if test "$ac_cv_func_snprintf" = yes; then
+ HAVE_SNPRINTF=1
+ else
+ HAVE_SNPRINTF=0
+ fi
+ AC_SUBST([HAVE_SNPRINTF])
+ if test "$ac_cv_func_wprintf" = yes; then
+ HAVE_WPRINTF=1
+ else
+ HAVE_WPRINTF=0
+ fi
+ AC_SUBST([HAVE_WPRINTF])
+
+ AM_ICONV
+ AM_LANGINFO_CODESET
+ if test $ac_cv_header_locale_h = yes; then
+ gt_LC_MESSAGES
+ fi
+
+ if test -n "$INTL_MACOSX_LIBS"; then
+ CPPFLAGS="$CPPFLAGS -I/System/Library/Frameworks/CoreFoundation.framework/Headers"
+ fi
+
+ dnl intl/plural.c is generated from intl/plural.y. It requires bison,
+ dnl because plural.y uses bison specific features. It requires at least
+ dnl bison-1.26 because earlier versions generate a plural.c that doesn't
+ dnl compile.
+ dnl bison is only needed for the maintainer (who touches plural.y). But in
+ dnl order to avoid separate Makefiles or --enable-maintainer-mode, we put
+ dnl the rule in general Makefile. Now, some people carelessly touch the
+ dnl files or have a broken "make" program, hence the plural.c rule will
+ dnl sometimes fire. To avoid an error, defines BISON to ":" if it is not
+ dnl present or too old.
+ AC_CHECK_PROGS([INTLBISON], [bison])
+ if test -z "$INTLBISON"; then
+ ac_verc_fail=yes
+ else
+ dnl Found it, now check the version.
+ AC_MSG_CHECKING([version of bison])
+changequote(<<,>>)dnl
+ ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
+ case $ac_prog_version in
+ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
+ 1.2[6-9]* | 1.[3-9][0-9]* | [2-9].*)
+changequote([,])dnl
+ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
+ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
+ esac
+ AC_MSG_RESULT([$ac_prog_version])
+ fi
+ if test $ac_verc_fail = yes; then
+ INTLBISON=:
+ fi
+])
+
+
+dnl Checks for special options needed on MacOS X.
+dnl Defines INTL_MACOSX_LIBS.
+AC_DEFUN([gt_INTL_MACOSX],
+[
+ dnl Check for API introduced in MacOS X 10.2.
+ AC_CACHE_CHECK([for CFPreferencesCopyAppValue],
+ gt_cv_func_CFPreferencesCopyAppValue,
+ [gt_save_CPPFLAGS="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS -I/System/Library/Frameworks/CoreFoundation.framework/Headers"
+ gt_save_LIBS="$LIBS"
+ LIBS="$LIBS -framework CoreFoundation"
+ AC_TRY_LINK([#include <CFPreferences.h>],
+ [CFPreferencesCopyAppValue(NULL, NULL)],
+ [gt_cv_func_CFPreferencesCopyAppValue=yes],
+ [gt_cv_func_CFPreferencesCopyAppValue=no])
+ CPPFLAGS="$gt_save_CPPFLAGS"
+ LIBS="$gt_save_LIBS"])
+ if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then
+ AC_DEFINE([HAVE_CFPREFERENCESCOPYAPPVALUE], 1,
+ [Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in the CoreFoundation framework.])
+ fi
+ dnl Check for API introduced in MacOS X 10.3.
+ AC_CACHE_CHECK([for CFLocaleCopyCurrent], gt_cv_func_CFLocaleCopyCurrent,
+ [gt_save_CPPFLAGS="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS -I/System/Library/Frameworks/CoreFoundation.framework/Headers"
+ gt_save_LIBS="$LIBS"
+ LIBS="$LIBS -framework CoreFoundation"
+ AC_TRY_LINK([#include <CFLocale.h>], [CFLocaleCopyCurrent();],
+ [gt_cv_func_CFLocaleCopyCurrent=yes],
+ [gt_cv_func_CFLocaleCopyCurrent=no])
+ CPPFLAGS="$gt_save_CPPFLAGS"
+ LIBS="$gt_save_LIBS"])
+ if test $gt_cv_func_CFLocaleCopyCurrent = yes; then
+ AC_DEFINE([HAVE_CFLOCALECOPYCURRENT], 1,
+ [Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the CoreFoundation framework.])
+ fi
+ INTL_MACOSX_LIBS=
+ if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then
+ INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation"
+ fi
+ AC_SUBST([INTL_MACOSX_LIBS])
+])
dnl gt_CHECK_DECL(FUNC, INCLUDES)