parent
a8587b5d42
commit
971ae637f1
@ -0,0 +1,65 @@ |
|||||||
|
#
|
||||||
|
# Copyright (C) 2010 OpenWrt.org
|
||||||
|
#
|
||||||
|
# This is free software, licensed under the GNU General Public License v2.
|
||||||
|
# See /LICENSE for more information.
|
||||||
|
#
|
||||||
|
|
||||||
|
include $(TOPDIR)/rules.mk |
||||||
|
|
||||||
|
PKG_NAME:=gettext
|
||||||
|
PKG_RELEASE:=2
|
||||||
|
|
||||||
|
PKG_MAINTAINER:=Jo-Philipp Wich <jow@openwrt.org>
|
||||||
|
|
||||||
|
include $(INCLUDE_DIR)/package.mk |
||||||
|
include $(INCLUDE_DIR)/host-build.mk |
||||||
|
|
||||||
|
define Package/libintl |
||||||
|
SECTION:=libs
|
||||||
|
CATEGORY:=Libraries
|
||||||
|
TITLE:=Stub header for the GNU Internationalization library
|
||||||
|
endef |
||||||
|
|
||||||
|
define Build/Prepare |
||||||
|
$(INSTALL_DIR) $(PKG_BUILD_DIR)
|
||||||
|
$(CP) ./src/* $(PKG_BUILD_DIR)/
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Build/Configure |
||||||
|
endef |
||||||
|
|
||||||
|
define Build/Compile |
||||||
|
endef |
||||||
|
|
||||||
|
define Build/InstallDev |
||||||
|
$(INSTALL_DIR) $(1)/usr/lib/libintl-stub/include
|
||||||
|
$(INSTALL_DATA) $(PKG_BUILD_DIR)/include/libintl.h $(1)/usr/lib/libintl-stub/include/
|
||||||
|
|
||||||
|
$(INSTALL_DIR) $(1)/usr/share/aclocal
|
||||||
|
$(INSTALL_DATA) $(PKG_BUILD_DIR)/m4/* $(1)/usr/share/aclocal/
|
||||||
|
endef |
||||||
|
|
||||||
|
define Host/Prepare |
||||||
|
mkdir -p $(HOST_BUILD_DIR)
|
||||||
|
endef |
||||||
|
|
||||||
|
define Host/Compile |
||||||
|
|
||||||
|
endef |
||||||
|
|
||||||
|
define Host/Install |
||||||
|
$(INSTALL_DIR) $(STAGING_DIR_HOST)/include
|
||||||
|
$(INSTALL_DATA) ./src/include/libintl.h $(STAGING_DIR_HOST)/include/
|
||||||
|
|
||||||
|
$(INSTALL_DIR) $(STAGING_DIR_HOST)/share/aclocal
|
||||||
|
$(INSTALL_DATA) ./src/m4/* $(STAGING_DIR_HOST)/share/aclocal/
|
||||||
|
endef |
||||||
|
|
||||||
|
define Package/libintl/install |
||||||
|
$(INSTALL_DIR) $(1)/tmp
|
||||||
|
touch $(1)/tmp/.libintl-placeholder
|
||||||
|
endef |
||||||
|
|
||||||
|
$(eval $(call HostBuild)) |
||||||
|
$(eval $(call BuildPackage,libintl)) |
@ -0,0 +1,53 @@ |
|||||||
|
/*
|
||||||
|
* This code is lifted from http://permalink.gmane.org/gmane.linux.gentoo.embedded/3218
|
||||||
|
*/ |
||||||
|
|
||||||
|
#ifndef _LIBINTL_H |
||||||
|
#define _LIBINTL_H 1 |
||||||
|
|
||||||
|
#include <locale.h> |
||||||
|
|
||||||
|
/* Undef gettext macros, if any... */ |
||||||
|
#undef gettext |
||||||
|
#undef dgettext |
||||||
|
#undef dcgettext |
||||||
|
#undef ngettext |
||||||
|
#undef dngettext |
||||||
|
#undef dcngettext |
||||||
|
#undef textdomain |
||||||
|
#undef bindtextdomain |
||||||
|
#undef bind_textdomain_codeset |
||||||
|
|
||||||
|
/* part of locale.h */ |
||||||
|
/* #undef setlocale */ |
||||||
|
|
||||||
|
#undef _ |
||||||
|
#undef N_ |
||||||
|
|
||||||
|
/* Define gettext stubs that map back to the original strings */ |
||||||
|
#define gettext(String) (String) |
||||||
|
#define dgettext(Domain, String) (String) |
||||||
|
#define dcgettext(Domain, String, Type) (String) |
||||||
|
|
||||||
|
#define ngettext(Singular, Plural, Count) \ |
||||||
|
((Count) == 1 ? (const char *) (Singular) : (const char *) (Plural)) |
||||||
|
|
||||||
|
#define dngettext(Domain, Singular, Plural, Count) \ |
||||||
|
((Count) == 1 ? (const char *) (Singular) : (const char *) (Plural)) |
||||||
|
|
||||||
|
#define dcngettext(Domain, Singular, Plural, Count, Category) \ |
||||||
|
((Count) == 1 ? (const char *) (Singular) : (const char *) (Plural)) |
||||||
|
|
||||||
|
#define _(String) (String) |
||||||
|
#define N_(String) String |
||||||
|
|
||||||
|
#ifndef _LOCALE_H |
||||||
|
/* #define setlocale(Category, Locale) ((char *)NULL) */ |
||||||
|
#endif |
||||||
|
|
||||||
|
/* No-ops for textdomain operations */ |
||||||
|
#define bindtextdomain(Domain, Directory) (Domain) |
||||||
|
#define bind_textdomain_codeset(Domain, Codeset) (Codeset) |
||||||
|
#define textdomain(String) (String) ?: "messages" |
||||||
|
|
||||||
|
#endif /* _LIBINTL_H */ |
@ -0,0 +1,21 @@ |
|||||||
|
# codeset.m4 serial 4 (gettext-0.18) |
||||||
|
dnl Copyright (C) 2000-2002, 2006, 2008-2010 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 From Bruno Haible. |
||||||
|
|
||||||
|
AC_DEFUN([AM_LANGINFO_CODESET], |
||||||
|
[ |
||||||
|
AC_CACHE_CHECK([for nl_langinfo and CODESET], [am_cv_langinfo_codeset], |
||||||
|
[AC_TRY_LINK([#include <langinfo.h>], |
||||||
|
[char* cs = nl_langinfo(CODESET); return !cs;], |
||||||
|
[am_cv_langinfo_codeset=yes], |
||||||
|
[am_cv_langinfo_codeset=no]) |
||||||
|
]) |
||||||
|
if test $am_cv_langinfo_codeset = yes; then |
||||||
|
AC_DEFINE([HAVE_LANGINFO_CODESET], [1], |
||||||
|
[Define if you have <langinfo.h> and nl_langinfo(CODESET).]) |
||||||
|
fi |
||||||
|
]) |
@ -0,0 +1,383 @@ |
|||||||
|
# gettext.m4 serial 63 (gettext-0.18) |
||||||
|
dnl Copyright (C) 1995-2010 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, 2008-2010. |
||||||
|
|
||||||
|
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(ifelse([$1], [], [old])[]ifelse([$1], [no-libtool], [old]), [old], |
||||||
|
[AC_DIAGNOSE([obsolete], [Use of AM_GNU_GETTEXT without [external] argument is deprecated.])]) |
||||||
|
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], []) |
@ -0,0 +1,294 @@ |
|||||||
|
# intl.m4 serial 17 (gettext-0.18) |
||||||
|
dnl Copyright (C) 1995-2009 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-2009. |
||||||
|
|
||||||
|
AC_PREREQ([2.52]) |
||||||
|
|
||||||
|
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_PROG_MKDIR_P])dnl defined by automake |
||||||
|
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([gl_VISIBILITY])dnl |
||||||
|
AC_REQUIRE([gt_INTL_SUBDIR_CORE])dnl |
||||||
|
AC_REQUIRE([AC_TYPE_LONG_LONG_INT])dnl |
||||||
|
AC_REQUIRE([gt_TYPE_WCHAR_T])dnl |
||||||
|
AC_REQUIRE([gt_TYPE_WINT_T])dnl |
||||||
|
AC_REQUIRE([gl_AC_HEADER_INTTYPES_H]) |
||||||
|
AC_REQUIRE([gt_TYPE_INTMAX_T]) |
||||||
|
AC_REQUIRE([gt_PRINTF_POSIX]) |
||||||
|
AC_REQUIRE([gl_GLIBC21])dnl |
||||||
|
AC_REQUIRE([gl_XSIZE])dnl |
||||||
|
AC_REQUIRE([gl_FCNTL_O_FLAGS])dnl |
||||||
|
AC_REQUIRE([gt_INTL_MACOSX])dnl |
||||||
|
|
||||||
|
dnl Support for automake's --enable-silent-rules. |
||||||
|
case "$enable_silent_rules" in |
||||||
|
yes) INTL_DEFAULT_VERBOSITY=0;; |
||||||
|
no) INTL_DEFAULT_VERBOSITY=1;; |
||||||
|
*) INTL_DEFAULT_VERBOSITY=1;; |
||||||
|
esac |
||||||
|
AC_SUBST([INTL_DEFAULT_VERBOSITY]) |
||||||
|
|
||||||
|
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([stddef.h stdlib.h string.h]) |
||||||
|
AC_CHECK_FUNCS([asprintf fwprintf newlocale putenv setenv setlocale \ |
||||||
|
snprintf strnlen wcslen wcsnlen mbrtowc wcrtomb]) |
||||||
|
|
||||||
|
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(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_newlocale" = yes; then |
||||||
|
HAVE_NEWLOCALE=1 |
||||||
|
else |
||||||
|
HAVE_NEWLOCALE=0 |
||||||
|
fi |
||||||
|
AC_SUBST([HAVE_NEWLOCALE]) |
||||||
|
if test "$ac_cv_func_wprintf" = yes; then |
||||||
|
HAVE_WPRINTF=1 |
||||||
|
else |
||||||
|
HAVE_WPRINTF=0 |
||||||
|
fi |
||||||
|
AC_SUBST([HAVE_WPRINTF]) |
||||||
|
|
||||||
|
AM_LANGINFO_CODESET |
||||||
|
gt_LC_MESSAGES |
||||||
|
|
||||||
|
dnl Compilation on mingw and Cygwin needs special Makefile rules, because |
||||||
|
dnl 1. when we install a shared library, we must arrange to export |
||||||
|
dnl auxiliary pointer variables for every exported variable, |
||||||
|
dnl 2. when we install a shared library and a static library simultaneously, |
||||||
|
dnl the include file specifies __declspec(dllimport) and therefore we |
||||||
|
dnl must arrange to define the auxiliary pointer variables for the |
||||||
|
dnl exported variables _also_ in the static library. |
||||||
|
if test "$enable_shared" = yes; then |
||||||
|
case "$host_os" in |
||||||
|
mingw* | cygwin*) is_woe32dll=yes ;; |
||||||
|
*) is_woe32dll=no ;; |
||||||
|
esac |
||||||
|
else |
||||||
|
is_woe32dll=no |
||||||
|
fi |
||||||
|
WOE32DLL=$is_woe32dll |
||||||
|
AC_SUBST([WOE32DLL]) |
||||||
|
|
||||||
|
dnl On mingw and Cygwin, we can activate special Makefile rules which add |
||||||
|
dnl version information to the shared libraries and executables. |
||||||
|
case "$host_os" in |
||||||
|
mingw* | cygwin*) is_woe32=yes ;; |
||||||
|
*) is_woe32=no ;; |
||||||
|
esac |
||||||
|
WOE32=$is_woe32 |
||||||
|
AC_SUBST([WOE32]) |
||||||
|
if test $WOE32 = yes; then |
||||||
|
dnl Check for a program that compiles Windows resource files. |
||||||
|
AC_CHECK_TOOL([WINDRES], [windres]) |
||||||
|
fi |
||||||
|
|
||||||
|
dnl Determine whether when creating a library, "-lc" should be passed to |
||||||
|
dnl libtool or not. On many platforms, it is required for the libtool option |
||||||
|
dnl -no-undefined to work. On HP-UX, however, the -lc - stored by libtool |
||||||
|
dnl in the *.la files - makes it impossible to create multithreaded programs, |
||||||
|
dnl because libtool also reorders the -lc to come before the -pthread, and |
||||||
|
dnl this disables pthread_create() <http://docs.hp.com/en/1896/pthreads.html>. |
||||||
|
case "$host_os" in |
||||||
|
hpux*) LTLIBC="" ;; |
||||||
|
*) LTLIBC="-lc" ;; |
||||||
|
esac |
||||||
|
AC_SUBST([LTLIBC]) |
||||||
|
|
||||||
|
dnl Rename some macros and functions used for locking. |
||||||
|
AH_BOTTOM([ |
||||||
|
#define __libc_lock_t gl_lock_t |
||||||
|
#define __libc_lock_define gl_lock_define |
||||||
|
#define __libc_lock_define_initialized gl_lock_define_initialized |
||||||
|
#define __libc_lock_init gl_lock_init |
||||||
|
#define __libc_lock_lock gl_lock_lock |
||||||
|
#define __libc_lock_unlock gl_lock_unlock |
||||||
|
#define __libc_lock_recursive_t gl_recursive_lock_t |
||||||
|
#define __libc_lock_define_recursive gl_recursive_lock_define |
||||||
|
#define __libc_lock_define_initialized_recursive gl_recursive_lock_define_initialized |
||||||
|
#define __libc_lock_init_recursive gl_recursive_lock_init |
||||||
|
#define __libc_lock_lock_recursive gl_recursive_lock_lock |
||||||
|
#define __libc_lock_unlock_recursive gl_recursive_lock_unlock |
||||||
|
#define glthread_in_use libintl_thread_in_use |
||||||
|
#define glthread_lock_init_func libintl_lock_init_func |
||||||
|
#define glthread_lock_lock_func libintl_lock_lock_func |
||||||
|
#define glthread_lock_unlock_func libintl_lock_unlock_func |
||||||
|
#define glthread_lock_destroy_func libintl_lock_destroy_func |
||||||
|
#define glthread_rwlock_init_multithreaded libintl_rwlock_init_multithreaded |
||||||
|
#define glthread_rwlock_init_func libintl_rwlock_init_func |
||||||
|
#define glthread_rwlock_rdlock_multithreaded libintl_rwlock_rdlock_multithreaded |
||||||
|
#define glthread_rwlock_rdlock_func libintl_rwlock_rdlock_func |
||||||
|
#define glthread_rwlock_wrlock_multithreaded libintl_rwlock_wrlock_multithreaded |
||||||
|
#define glthread_rwlock_wrlock_func libintl_rwlock_wrlock_func |
||||||
|
#define glthread_rwlock_unlock_multithreaded libintl_rwlock_unlock_multithreaded |
||||||
|
#define glthread_rwlock_unlock_func libintl_rwlock_unlock_func |
||||||
|
#define glthread_rwlock_destroy_multithreaded libintl_rwlock_destroy_multithreaded |
||||||
|
#define glthread_rwlock_destroy_func libintl_rwlock_destroy_func |
||||||
|
#define glthread_recursive_lock_init_multithreaded libintl_recursive_lock_init_multithreaded |
||||||
|
#define glthread_recursive_lock_init_func libintl_recursive_lock_init_func |
||||||
|
#define glthread_recursive_lock_lock_multithreaded libintl_recursive_lock_lock_multithreaded |
||||||
|
#define glthread_recursive_lock_lock_func libintl_recursive_lock_lock_func |
||||||
|
#define glthread_recursive_lock_unlock_multithreaded libintl_recursive_lock_unlock_multithreaded |
||||||
|
#define glthread_recursive_lock_unlock_func libintl_recursive_lock_unlock_func |
||||||
|
#define glthread_recursive_lock_destroy_multithreaded libintl_recursive_lock_destroy_multithreaded |
||||||
|
#define glthread_recursive_lock_destroy_func libintl_recursive_lock_destroy_func |
||||||
|
#define glthread_once_func libintl_once_func |
||||||
|
#define glthread_once_singlethreaded libintl_once_singlethreaded |
||||||
|
#define glthread_once_multithreaded libintl_once_multithreaded |
||||||
|
]) |
||||||
|
]) |
||||||
|
|
||||||
|
|
||||||
|
dnl Checks for the core files of the intl subdirectory: |
||||||
|
dnl dcigettext.c |
||||||
|
dnl eval-plural.h |
||||||
|
dnl explodename.c |
||||||
|
dnl finddomain.c |
||||||
|
dnl gettextP.h |
||||||
|
dnl gmo.h |
||||||
|
dnl hash-string.h hash-string.c |
||||||
|
dnl l10nflist.c |
||||||
|
dnl libgnuintl.h.in (except the *printf stuff) |
||||||
|
dnl loadinfo.h |
||||||
|
dnl loadmsgcat.c |
||||||
|
dnl localealias.c |
||||||
|
dnl log.c |
||||||
|
dnl plural-exp.h plural-exp.c |
||||||
|
dnl plural.y |
||||||
|
dnl Used by libglocale. |
||||||
|
AC_DEFUN([gt_INTL_SUBDIR_CORE], |
||||||
|
[ |
||||||
|
AC_REQUIRE([AC_C_INLINE])dnl |
||||||
|
AC_REQUIRE([AC_TYPE_SIZE_T])dnl |
||||||
|
AC_REQUIRE([gl_AC_HEADER_STDINT_H]) |
||||||
|
AC_REQUIRE([AC_FUNC_ALLOCA])dnl |
||||||
|
AC_REQUIRE([AC_FUNC_MMAP])dnl |
||||||
|
AC_REQUIRE([gt_INTDIV0])dnl |
||||||
|
AC_REQUIRE([gl_AC_TYPE_UINTMAX_T])dnl |
||||||
|
AC_REQUIRE([gt_INTTYPES_PRI])dnl |
||||||
|
AC_REQUIRE([gl_LOCK])dnl |
||||||
|
|
||||||
|
AC_TRY_LINK( |
||||||
|
[int foo (int a) { a = __builtin_expect (a, 10); return a == 10 ? 0 : 1; }], |
||||||
|
[], |
||||||
|
[AC_DEFINE([HAVE_BUILTIN_EXPECT], [1], |
||||||
|
[Define to 1 if the compiler understands __builtin_expect.])]) |
||||||
|
|
||||||
|
AC_CHECK_HEADERS([argz.h inttypes.h limits.h unistd.h sys/param.h]) |
||||||
|
AC_CHECK_FUNCS([getcwd getegid geteuid getgid getuid mempcpy munmap \ |
||||||
|
stpcpy strcasecmp strdup strtoul tsearch uselocale argz_count \ |
||||||
|
argz_stringify argz_next __fsetlocking]) |
||||||
|
|
||||||
|
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>]) |
||||||
|
|
||||||
|
AM_ICONV |
||||||
|
|
||||||
|
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 gt_CHECK_DECL(FUNC, INCLUDES) |
||||||
|
dnl Check whether a function is declared. |
||||||
|
AC_DEFUN([gt_CHECK_DECL], |
||||||
|
[ |
||||||
|
AC_CACHE_CHECK([whether $1 is declared], [ac_cv_have_decl_$1], |
||||||
|
[AC_TRY_COMPILE([$2], [ |
||||||
|
#ifndef $1 |
||||||
|
char *p = (char *) $1; |
||||||
|
#endif |
||||||
|
], ac_cv_have_decl_$1=yes, ac_cv_have_decl_$1=no)]) |
||||||
|
if test $ac_cv_have_decl_$1 = yes; then |
||||||
|
gt_value=1 |
||||||
|
else |
||||||
|
gt_value=0 |
||||||
|
fi |
||||||
|
AC_DEFINE_UNQUOTED([HAVE_DECL_]translit($1, [a-z], [A-Z]), [$gt_value], |
||||||
|
[Define to 1 if you have the declaration of `$1', and to 0 if you don't.]) |
||||||
|
]) |
@ -0,0 +1,19 @@ |
|||||||
|
# intldir.m4 serial 2 (gettext-0.18) |
||||||
|
dnl Copyright (C) 2006, 2009-2010 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. |
||||||
|
|
||||||
|
AC_PREREQ([2.52]) |
||||||
|
|
||||||
|
dnl Tells the AM_GNU_GETTEXT macro to consider an intl/ directory. |
||||||
|
AC_DEFUN([AM_GNU_GETTEXT_INTL_SUBDIR], []) |
@ -0,0 +1,51 @@ |
|||||||
|
# intlmacosx.m4 serial 3 (gettext-0.18) |
||||||
|
dnl Copyright (C) 2004-2010 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 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_LIBS="$LIBS" |
||||||
|
LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" |
||||||
|
AC_TRY_LINK([#include <CoreFoundation/CFPreferences.h>], |
||||||
|
[CFPreferencesCopyAppValue(NULL, NULL)], |
||||||
|
[gt_cv_func_CFPreferencesCopyAppValue=yes], |
||||||
|
[gt_cv_func_CFPreferencesCopyAppValue=no]) |
||||||
|
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_LIBS="$LIBS" |
||||||
|
LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" |
||||||
|
AC_TRY_LINK([#include <CoreFoundation/CFLocale.h>], [CFLocaleCopyCurrent();], |
||||||
|
[gt_cv_func_CFLocaleCopyCurrent=yes], |
||||||
|
[gt_cv_func_CFLocaleCopyCurrent=no]) |
||||||
|
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]) |
||||||
|
]) |
@ -0,0 +1,31 @@ |
|||||||
|
# lcmessage.m4 serial 6 (gettext-0.18) |
||||||
|
dnl Copyright (C) 1995-2002, 2004-2005, 2008-2010 Free Software Foundation, |
||||||
|
dnl 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. |
||||||
|
|
||||||
|
# Check whether LC_MESSAGES is available in <locale.h>. |
||||||
|
|
||||||
|
AC_DEFUN([gt_LC_MESSAGES], |
||||||
|
[ |
||||||
|
AC_CACHE_CHECK([for LC_MESSAGES], [gt_cv_val_LC_MESSAGES], |
||||||
|
[AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES], |
||||||
|
[gt_cv_val_LC_MESSAGES=yes], [gt_cv_val_LC_MESSAGES=no])]) |
||||||
|
if test $gt_cv_val_LC_MESSAGES = yes; then |
||||||
|
AC_DEFINE([HAVE_LC_MESSAGES], [1], |
||||||
|
[Define if your <locale.h> file defines LC_MESSAGES.]) |
||||||
|
fi |
||||||
|
]) |
@ -0,0 +1,32 @@ |
|||||||
|
# nls.m4 serial 5 (gettext-0.18) |
||||||
|
dnl Copyright (C) 1995-2003, 2005-2006, 2008-2010 Free Software Foundation, |
||||||
|
dnl 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-2003. |
||||||
|
|
||||||
|
AC_PREREQ([2.50]) |
||||||
|
|
||||||
|
AC_DEFUN([AM_NLS], |
||||||
|
[ |
||||||
|
AC_MSG_CHECKING([whether NLS is requested]) |
||||||
|
dnl Default is enabled NLS |
||||||
|
AC_ARG_ENABLE([nls], |
||||||
|
[ --disable-nls do not use Native Language Support], |
||||||
|
USE_NLS=$enableval, USE_NLS=yes) |
||||||
|
AC_MSG_RESULT([$USE_NLS]) |
||||||
|
AC_SUBST([USE_NLS]) |
||||||
|
]) |
@ -0,0 +1,449 @@ |
|||||||
|
# po.m4 serial 17 (gettext-0.18) |
||||||
|
dnl Copyright (C) 1995-2010 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-2003. |
||||||
|
|
||||||
|
AC_PREREQ([2.50]) |
||||||
|
|
||||||
|
dnl Checks for all prerequisites of the po subdirectory. |
||||||
|
AC_DEFUN([AM_PO_SUBDIRS], |
||||||
|
[ |
||||||
|
AC_REQUIRE([AC_PROG_MAKE_SET])dnl |
||||||
|
AC_REQUIRE([AC_PROG_INSTALL])dnl |
||||||
|
AC_REQUIRE([AM_PROG_MKDIR_P])dnl defined by automake |
||||||
|
AC_REQUIRE([AM_NLS])dnl |
||||||
|
|
||||||
|
dnl Release version of the gettext macros. This is used to ensure that |
||||||
|
dnl the gettext macros and po/Makefile.in.in are in sync. |
||||||
|
AC_SUBST([GETTEXT_MACRO_VERSION], [0.18]) |
||||||
|
|
||||||
|
dnl Perform the following tests also if --disable-nls has been given, |
||||||
|
dnl because they are needed for "make dist" to work. |
||||||
|
|
||||||
|
dnl Search for GNU msgfmt in the PATH. |
||||||
|
dnl The first test excludes Solaris msgfmt and early GNU msgfmt versions. |
||||||
|
dnl The second test excludes FreeBSD msgfmt. |
||||||
|
AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, |
||||||
|
[$ac_dir/$ac_word --statistics /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1 && |
||||||
|
(if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)], |
||||||
|
:) |
||||||
|
AC_PATH_PROG([GMSGFMT], [gmsgfmt], [$MSGFMT]) |
||||||
|
|
||||||
|
dnl Test whether it is GNU msgfmt >= 0.15. |
||||||
|
changequote(,)dnl |
||||||
|
case `$MSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in |
||||||
|
'' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) MSGFMT_015=: ;; |
||||||
|
*) MSGFMT_015=$MSGFMT ;; |
||||||
|
esac |
||||||
|
changequote([,])dnl |
||||||
|
AC_SUBST([MSGFMT_015]) |
||||||
|
changequote(,)dnl |
||||||
|
case `$GMSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in |
||||||
|
'' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) GMSGFMT_015=: ;; |
||||||
|
*) GMSGFMT_015=$GMSGFMT ;; |
||||||
|
esac |
||||||
|
changequote([,])dnl |
||||||
|
AC_SUBST([GMSGFMT_015]) |
||||||
|
|
||||||
|
dnl Search for GNU xgettext 0.12 or newer in the PATH. |
||||||
|
dnl The first test excludes Solaris xgettext and early GNU xgettext versions. |
||||||
|
dnl The second test excludes FreeBSD xgettext. |
||||||
|
AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, |
||||||
|
[$ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1 && |
||||||
|
(if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)], |
||||||
|
:) |
||||||
|
dnl Remove leftover from FreeBSD xgettext call. |
||||||
|
rm -f messages.po |
||||||
|
|
||||||
|
dnl Test whether it is GNU xgettext >= 0.15. |
||||||
|
changequote(,)dnl |
||||||
|
case `$XGETTEXT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in |
||||||
|
'' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) XGETTEXT_015=: ;; |
||||||
|
*) XGETTEXT_015=$XGETTEXT ;; |
||||||
|
esac |
||||||
|
changequote([,])dnl |
||||||
|
AC_SUBST([XGETTEXT_015]) |
||||||
|
|
||||||
|
dnl Search for GNU msgmerge 0.11 or newer in the PATH. |
||||||
|
AM_PATH_PROG_WITH_TEST(MSGMERGE, msgmerge, |
||||||
|
[$ac_dir/$ac_word --update -q /dev/null /dev/null >&]AS_MESSAGE_LOG_FD[ 2>&1], :) |
||||||
|
|
||||||
|
dnl Installation directories. |
||||||
|
dnl Autoconf >= 2.60 defines localedir. For older versions of autoconf, we |
||||||
|
dnl have to define it here, so that it can be used in po/Makefile. |
||||||
|
test -n "$localedir" || localedir='${datadir}/locale' |
||||||
|
AC_SUBST([localedir]) |
||||||
|
|
||||||
|
dnl Support for AM_XGETTEXT_OPTION. |
||||||
|
test -n "${XGETTEXT_EXTRA_OPTIONS+set}" || XGETTEXT_EXTRA_OPTIONS= |
||||||
|
AC_SUBST([XGETTEXT_EXTRA_OPTIONS]) |
||||||
|
|
||||||
|
AC_CONFIG_COMMANDS([po-directories], [[ |
||||||
|
for ac_file in $CONFIG_FILES; do |
||||||
|
# Support "outfile[:infile[:infile...]]" |
||||||
|
case "$ac_file" in |
||||||
|
*:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; |
||||||
|
esac |
||||||
|
# PO directories have a Makefile.in generated from Makefile.in.in. |
||||||
|
case "$ac_file" in */Makefile.in) |
||||||
|
# Adjust a relative srcdir. |
||||||
|
ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` |
||||||
|
ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`" |
||||||
|
ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` |
||||||
|
# In autoconf-2.13 it is called $ac_given_srcdir. |
||||||
|
# In autoconf-2.50 it is called $srcdir. |
||||||
|
test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" |
||||||
|
case "$ac_given_srcdir" in |
||||||
|
.) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; |
||||||
|
/*) top_srcdir="$ac_given_srcdir" ;; |
||||||
|
*) top_srcdir="$ac_dots$ac_given_srcdir" ;; |
||||||
|
esac |
||||||
|
# Treat a directory as a PO directory if and only if it has a |
||||||
|
# POTFILES.in file. This allows packages to have multiple PO |
||||||
|
# directories under different names or in different locations. |
||||||
|
if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then |
||||||
|
rm -f "$ac_dir/POTFILES" |
||||||
|
test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" |
||||||
|
cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ]*\$/d" -e "s,.*, $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES" |
||||||
|
POMAKEFILEDEPS="POTFILES.in" |
||||||
|
# ALL_LINGUAS, POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES depend |
||||||
|
# on $ac_dir but don't depend on user-specified configuration |
||||||
|
# parameters. |
||||||
|
if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then |
||||||
|
# The LINGUAS file contains the set of available languages. |
||||||
|
if test -n "$OBSOLETE_ALL_LINGUAS"; then |
||||||
|
test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" |
||||||
|
fi |
||||||
|
ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"` |
||||||
|
# Hide the ALL_LINGUAS assigment from automake < 1.5. |
||||||
|
eval 'ALL_LINGUAS''=$ALL_LINGUAS_' |
||||||
|
POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" |
||||||
|
else |
||||||
|
# The set of available languages was given in configure.in. |
||||||
|
# Hide the ALL_LINGUAS assigment from automake < 1.5. |
||||||
|
eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS' |
||||||
|
fi |
||||||
|
# Compute POFILES |
||||||
|
# as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po) |
||||||
|
# Compute UPDATEPOFILES |
||||||
|
# as $(foreach lang, $(ALL_LINGUAS), $(lang).po-update) |
||||||
|
# Compute DUMMYPOFILES |
||||||
|
# as $(foreach lang, $(ALL_LINGUAS), $(lang).nop) |
||||||
|
# Compute GMOFILES |
||||||
|
# as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).gmo) |
||||||
|
case "$ac_given_srcdir" in |
||||||
|
.) srcdirpre= ;; |
||||||
|
*) srcdirpre='$(srcdir)/' ;; |
||||||
|
esac |
||||||
|
POFILES= |
||||||
|
UPDATEPOFILES= |
||||||
|
DUMMYPOFILES= |
||||||
|
GMOFILES= |
||||||
|
for lang in $ALL_LINGUAS; do |
||||||
|
POFILES="$POFILES $srcdirpre$lang.po" |
||||||
|
UPDATEPOFILES="$UPDATEPOFILES $lang.po-update" |
||||||
|
DUMMYPOFILES="$DUMMYPOFILES $lang.nop" |
||||||
|
GMOFILES="$GMOFILES $srcdirpre$lang.gmo" |
||||||
|
done |
||||||
|
# CATALOGS depends on both $ac_dir and the user's LINGUAS |
||||||
|
# environment variable. |
||||||
|
INST_LINGUAS= |
||||||
|
if test -n "$ALL_LINGUAS"; then |
||||||
|
for presentlang in $ALL_LINGUAS; do |
||||||
|
useit=no |
||||||
|
if test "%UNSET%" != "$LINGUAS"; then |
||||||
|
desiredlanguages="$LINGUAS" |
||||||
|
else |
||||||
|
desiredlanguages="$ALL_LINGUAS" |
||||||
|
fi |
||||||
|
for desiredlang in $desiredlanguages; do |
||||||
|
# Use the presentlang catalog if desiredlang is |
||||||
|
# a. equal to presentlang, or |
||||||
|
# b. a variant of presentlang (because in this case, |
||||||
|
# presentlang can be used as a fallback for messages |
||||||
|
# which are not translated in the desiredlang catalog). |
||||||
|
case "$desiredlang" in |
||||||
|
"$presentlang"*) useit=yes;; |
||||||
|
esac |
||||||
|
done |
||||||
|
if test $useit = yes; then |
||||||
|
INST_LINGUAS="$INST_LINGUAS $presentlang" |
||||||
|
fi |
||||||
|
done |
||||||
|
fi |
||||||
|
CATALOGS= |
||||||
|
if test -n "$INST_LINGUAS"; then |
||||||
|
for lang in $INST_LINGUAS; do |
||||||
|
CATALOGS="$CATALOGS $lang.gmo" |
||||||
|
done |
||||||
|
fi |
||||||
|
test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile" |
||||||
|
sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile" |
||||||
|
for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do |
||||||
|
if test -f "$f"; then |
||||||
|
case "$f" in |
||||||
|
*.orig | *.bak | *~) ;; |
||||||
|
*) cat "$f" >> "$ac_dir/Makefile" ;; |
||||||
|
esac |
||||||
|
fi |
||||||
|
done |
||||||
|
fi |
||||||
|
;; |
||||||
|
esac |
||||||
|
done]], |
||||||
|
[# Capture the value of obsolete ALL_LINGUAS because we need it to compute |
||||||
|
# POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. But hide it |
||||||
|
# from automake < 1.5. |
||||||
|
eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"' |
||||||
|
# Capture the value of LINGUAS because we need it to compute CATALOGS. |
||||||
|
LINGUAS="${LINGUAS-%UNSET%}" |
||||||
|
]) |
||||||
|
]) |
||||||
|
|
||||||
|
dnl Postprocesses a Makefile in a directory containing PO files. |
||||||
|
AC_DEFUN([AM_POSTPROCESS_PO_MAKEFILE], |
||||||
|
[ |
||||||
|
# When this code is run, in config.status, two variables have already been |
||||||
|
# set: |
||||||
|
# - OBSOLETE_ALL_LINGUAS is the value of LINGUAS set in configure.in, |
||||||
|
# - LINGUAS is the value of the environment variable LINGUAS at configure |
||||||
|
# time. |
||||||
|
|
||||||
|
changequote(,)dnl |
||||||
|
# Adjust a relative srcdir. |
||||||
|
ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` |
||||||
|
ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`" |
||||||
|
ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` |
||||||
|
# In autoconf-2.13 it is called $ac_given_srcdir. |
||||||
|
# In autoconf-2.50 it is called $srcdir. |
||||||
|
test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" |
||||||
|
case "$ac_given_srcdir" in |
||||||
|
.) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; |
||||||
|
/*) top_srcdir="$ac_given_srcdir" ;; |
||||||
|
*) top_srcdir="$ac_dots$ac_given_srcdir" ;; |
||||||
|
esac |
||||||
|
|
||||||
|
# Find a way to echo strings without interpreting backslash. |
||||||
|
if test "X`(echo '\t') 2>/dev/null`" = 'X\t'; then |
||||||
|
gt_echo='echo' |
||||||
|
else |
||||||
|
if test "X`(printf '%s\n' '\t') 2>/dev/null`" = 'X\t'; then |
||||||
|
gt_echo='printf %s\n' |
||||||
|
else |
||||||
|
echo_func () { |
||||||
|
cat <<EOT |
||||||
|
$* |
||||||
|
EOT |
||||||
|
} |
||||||
|
gt_echo='echo_func' |
||||||
|
fi |
||||||
|
fi |
||||||
|
|
||||||
|
# A sed script that extracts the value of VARIABLE from a Makefile. |
||||||
|
sed_x_variable=' |
||||||
|
# Test if the hold space is empty. |
||||||
|
x |
||||||
|
s/P/P/ |
||||||
|
x |
||||||
|
ta |
||||||
|
# Yes it was empty. Look if we have the expected variable definition. |
||||||
|
/^[ ]*VARIABLE[ ]*=/{ |
||||||
|
# Seen the first line of the variable definition. |
||||||
|
s/^[ ]*VARIABLE[ ]*=// |
||||||
|
ba |
||||||
|
} |
||||||
|
bd |
||||||
|
:a |
||||||
|
# Here we are processing a line from the variable definition. |
||||||
|
# Remove comment, more precisely replace it with a space. |
||||||
|
s/#.*$/ / |
||||||
|
# See if the line ends in a backslash. |
||||||
|
tb |
||||||
|
:b |
||||||
|
s/\\$// |
||||||
|
# Print the line, without the trailing backslash. |
||||||
|
p |
||||||
|
tc |
||||||
|
# There was no trailing backslash. The end of the variable definition is |
||||||
|
# reached. Clear the hold space. |
||||||
|
s/^.*$// |
||||||
|
x |
||||||
|
bd |
||||||
|
:c |
||||||
|
# A trailing backslash means that the variable definition continues in the |
||||||
|
# next line. Put a nonempty string into the hold space to indicate this. |
||||||
|
s/^.*$/P/ |
||||||
|
x |
||||||
|
:d |
||||||
|
' |
||||||
|
changequote([,])dnl |
||||||
|
|
||||||
|
# Set POTFILES to the value of the Makefile variable POTFILES. |
||||||
|
sed_x_POTFILES=`$gt_echo "$sed_x_variable" | sed -e '/^ *#/d' -e 's/VARIABLE/POTFILES/g'` |
||||||
|
POTFILES=`sed -n -e "$sed_x_POTFILES" < "$ac_file"` |
||||||
|
# Compute POTFILES_DEPS as |
||||||
|
# $(foreach file, $(POTFILES), $(top_srcdir)/$(file)) |
||||||
|
POTFILES_DEPS= |
||||||
|
for file in $POTFILES; do |
||||||
|
POTFILES_DEPS="$POTFILES_DEPS "'$(top_srcdir)/'"$file" |
||||||
|
done |
||||||
|
POMAKEFILEDEPS="" |
||||||
|
|
||||||
|
if test -n "$OBSOLETE_ALL_LINGUAS"; then |
||||||
|
test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" |
||||||
|
fi |
||||||
|
if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then |
||||||
|
# The LINGUAS file contains the set of available languages. |
||||||
|
ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"` |
||||||
|
POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" |
||||||
|
else |
||||||
|
# Set ALL_LINGUAS to the value of the Makefile variable LINGUAS. |
||||||
|
sed_x_LINGUAS=`$gt_echo "$sed_x_variable" | sed -e '/^ *#/d' -e 's/VARIABLE/LINGUAS/g'` |
||||||
|
ALL_LINGUAS_=`sed -n -e "$sed_x_LINGUAS" < "$ac_file"` |
||||||
|
fi |
||||||
|
# Hide the ALL_LINGUAS assigment from automake < 1.5. |
||||||
|
eval 'ALL_LINGUAS''=$ALL_LINGUAS_' |
||||||
|
# Compute POFILES |
||||||
|
# as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po) |
||||||
|
# Compute UPDATEPOFILES |
||||||
|
# as $(foreach lang, $(ALL_LINGUAS), $(lang).po-update) |
||||||
|
# Compute DUMMYPOFILES |
||||||
|
# as $(foreach lang, $(ALL_LINGUAS), $(lang).nop) |
||||||
|
# Compute GMOFILES |
||||||
|
# as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).gmo) |
||||||
|
# Compute PROPERTIESFILES |
||||||
|
# as $(foreach lang, $(ALL_LINGUAS), $(top_srcdir)/$(DOMAIN)_$(lang).properties) |
||||||
|
# Compute CLASSFILES |
||||||
|
# as $(foreach lang, $(ALL_LINGUAS), $(top_srcdir)/$(DOMAIN)_$(lang).class) |
||||||
|
# Compute QMFILES |
||||||
|
# as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).qm) |
||||||
|
# Compute MSGFILES |
||||||
|
# as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(frob $(lang)).msg) |
||||||
|
# Compute RESOURCESDLLFILES |
||||||
|
# as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(frob $(lang))/$(DOMAIN).resources.dll) |
||||||
|
case "$ac_given_srcdir" in |
||||||
|
.) srcdirpre= ;; |
||||||
|
*) srcdirpre='$(srcdir)/' ;; |
||||||
|
esac |
||||||
|
POFILES= |
||||||
|
UPDATEPOFILES= |
||||||
|
DUMMYPOFILES= |
||||||
|
GMOFILES= |
||||||
|
PROPERTIESFILES= |
||||||
|
CLASSFILES= |
||||||
|
QMFILES= |
||||||
|
MSGFILES= |
||||||
|
RESOURCESDLLFILES= |
||||||
|
for lang in $ALL_LINGUAS; do |
||||||
|
POFILES="$POFILES $srcdirpre$lang.po" |
||||||
|
UPDATEPOFILES="$UPDATEPOFILES $lang.po-update" |
||||||
|
DUMMYPOFILES="$DUMMYPOFILES $lang.nop" |
||||||
|
GMOFILES="$GMOFILES $srcdirpre$lang.gmo" |
||||||
|
PROPERTIESFILES="$PROPERTIESFILES \$(top_srcdir)/\$(DOMAIN)_$lang.properties" |
||||||
|
CLASSFILES="$CLASSFILES \$(top_srcdir)/\$(DOMAIN)_$lang.class" |
||||||
|
QMFILES="$QMFILES $srcdirpre$lang.qm" |
||||||
|
frobbedlang=`echo $lang | sed -e 's/\..*$//' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'` |
||||||
|
MSGFILES="$MSGFILES $srcdirpre$frobbedlang.msg" |
||||||
|
frobbedlang=`echo $lang | sed -e 's/_/-/g' -e 's/^sr-CS/sr-SP/' -e 's/@latin$/-Latn/' -e 's/@cyrillic$/-Cyrl/' -e 's/^sr-SP$/sr-SP-Latn/' -e 's/^uz-UZ$/uz-UZ-Latn/'` |
||||||
|
RESOURCESDLLFILES="$RESOURCESDLLFILES $srcdirpre$frobbedlang/\$(DOMAIN).resources.dll" |
||||||
|
done |
||||||
|
# CATALOGS depends on both $ac_dir and the user's LINGUAS |
||||||
|
# environment variable. |
||||||
|
INST_LINGUAS= |
||||||
|
if test -n "$ALL_LINGUAS"; then |
||||||
|
for presentlang in $ALL_LINGUAS; do |
||||||
|
useit=no |
||||||
|
if test "%UNSET%" != "$LINGUAS"; then |
||||||
|
desiredlanguages="$LINGUAS" |
||||||
|
else |
||||||
|
desiredlanguages="$ALL_LINGUAS" |
||||||
|
fi |
||||||
|
for desiredlang in $desiredlanguages; do |
||||||
|
# Use the presentlang catalog if desiredlang is |
||||||
|
# a. equal to presentlang, or |
||||||
|
# b. a variant of presentlang (because in this case, |
||||||
|
# presentlang can be used as a fallback for messages |
||||||
|
# which are not translated in the desiredlang catalog). |
||||||
|
case "$desiredlang" in |
||||||
|
"$presentlang"*) useit=yes;; |
||||||
|
esac |
||||||
|
done |
||||||
|
if test $useit = yes; then |
||||||
|
INST_LINGUAS="$INST_LINGUAS $presentlang" |
||||||
|
fi |
||||||
|
done |
||||||
|
fi |
||||||
|
CATALOGS= |
||||||
|
JAVACATALOGS= |
||||||
|
QTCATALOGS= |
||||||
|
TCLCATALOGS= |
||||||
|
CSHARPCATALOGS= |
||||||
|
if test -n "$INST_LINGUAS"; then |
||||||
|
for lang in $INST_LINGUAS; do |
||||||
|
CATALOGS="$CATALOGS $lang.gmo" |
||||||
|
JAVACATALOGS="$JAVACATALOGS \$(DOMAIN)_$lang.properties" |
||||||
|
QTCATALOGS="$QTCATALOGS $lang.qm" |
||||||
|
frobbedlang=`echo $lang | sed -e 's/\..*$//' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'` |
||||||
|
TCLCATALOGS="$TCLCATALOGS $frobbedlang.msg" |
||||||
|
frobbedlang=`echo $lang | sed -e 's/_/-/g' -e 's/^sr-CS/sr-SP/' -e 's/@latin$/-Latn/' -e 's/@cyrillic$/-Cyrl/' -e 's/^sr-SP$/sr-SP-Latn/' -e 's/^uz-UZ$/uz-UZ-Latn/'` |
||||||
|
CSHARPCATALOGS="$CSHARPCATALOGS $frobbedlang/\$(DOMAIN).resources.dll" |
||||||
|
done |
||||||
|
fi |
||||||
|
|
||||||
|
sed -e "s|@POTFILES_DEPS@|$POTFILES_DEPS|g" -e "s|@POFILES@|$POFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@PROPERTIESFILES@|$PROPERTIESFILES|g" -e "s|@CLASSFILES@|$CLASSFILES|g" -e "s|@QMFILES@|$QMFILES|g" -e "s|@MSGFILES@|$MSGFILES|g" -e "s|@RESOURCESDLLFILES@|$RESOURCESDLLFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@JAVACATALOGS@|$JAVACATALOGS|g" -e "s|@QTCATALOGS@|$QTCATALOGS|g" -e "s|@TCLCATALOGS@|$TCLCATALOGS|g" -e "s|@CSHARPCATALOGS@|$CSHARPCATALOGS|g" -e 's,^#distdir:,distdir:,' < "$ac_file" > "$ac_file.tmp" |
||||||
|
if grep -l '@TCLCATALOGS@' "$ac_file" > /dev/null; then |
||||||
|
# Add dependencies that cannot be formulated as a simple suffix rule. |
||||||
|
for lang in $ALL_LINGUAS; do |
||||||
|
frobbedlang=`echo $lang | sed -e 's/\..*$//' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'` |
||||||
|
cat >> "$ac_file.tmp" <<EOF |
||||||
|
$frobbedlang.msg: $lang.po |
||||||
|
@echo "\$(MSGFMT) -c --tcl -d \$(srcdir) -l $lang $srcdirpre$lang.po"; \ |
||||||
|
\$(MSGFMT) -c --tcl -d "\$(srcdir)" -l $lang $srcdirpre$lang.po || { rm -f "\$(srcdir)/$frobbedlang.msg"; exit 1; } |
||||||
|
EOF |
||||||
|
done |
||||||
|
fi |
||||||
|
if grep -l '@CSHARPCATALOGS@' "$ac_file" > /dev/null; then |
||||||
|
# Add dependencies that cannot be formulated as a simple suffix rule. |
||||||
|
for lang in $ALL_LINGUAS; do |
||||||
|
frobbedlang=`echo $lang | sed -e 's/_/-/g' -e 's/^sr-CS/sr-SP/' -e 's/@latin$/-Latn/' -e 's/@cyrillic$/-Cyrl/' -e 's/^sr-SP$/sr-SP-Latn/' -e 's/^uz-UZ$/uz-UZ-Latn/'` |
||||||
|
cat >> "$ac_file.tmp" <<EOF |
||||||
|
$frobbedlang/\$(DOMAIN).resources.dll: $lang.po |
||||||
|
@echo "\$(MSGFMT) -c --csharp -d \$(srcdir) -l $lang $srcdirpre$lang.po -r \$(DOMAIN)"; \ |
||||||
|
\$(MSGFMT) -c --csharp -d "\$(srcdir)" -l $lang $srcdirpre$lang.po -r "\$(DOMAIN)" || { rm -f "\$(srcdir)/$frobbedlang.msg"; exit 1; } |
||||||
|
EOF |
||||||
|
done |
||||||
|
fi |
||||||
|
if test -n "$POMAKEFILEDEPS"; then |
||||||
|
cat >> "$ac_file.tmp" <<EOF |
||||||
|
Makefile: $POMAKEFILEDEPS |
||||||
|
EOF |
||||||
|
fi |
||||||
|
mv "$ac_file.tmp" "$ac_file" |
||||||
|
]) |
||||||
|
|
||||||
|
dnl Initializes the accumulator used by AM_XGETTEXT_OPTION. |
||||||
|
AC_DEFUN([AM_XGETTEXT_OPTION_INIT], |
||||||
|
[ |
||||||
|
XGETTEXT_EXTRA_OPTIONS= |
||||||
|
]) |
||||||
|
|
||||||
|
dnl Registers an option to be passed to xgettext in the po subdirectory. |
||||||
|
AC_DEFUN([AM_XGETTEXT_OPTION], |
||||||
|
[ |
||||||
|
AC_REQUIRE([AM_XGETTEXT_OPTION_INIT]) |
||||||
|
XGETTEXT_EXTRA_OPTIONS="$XGETTEXT_EXTRA_OPTIONS $1" |
||||||
|
]) |
Loading…
Reference in new issue