mirror of
https://gcc.gnu.org/git/gcc.git
synced 2024-11-23 19:03:59 +08:00
db50aea625
This patch updates gettext.m4 and related .m4 files and adds gettext-runtime as a gmp/mpfr/... style host library, allowing newer libintl to be used. This patch /does not/ add build-time tools required for internationalizing (msgfmt et al), instead, it just updates the runtime library. The result should be a distribution that acts exactly the same when a copy of gettext is present, and disables internationalization otherwise. There should be no changes in behavior when gettext is included in-tree. When gettext is not included in tree, nor available on the system, the programs will be built without localization. ChangeLog: PR bootstrap/12596 * .gitignore: Add '/gettext*'. * configure.ac (host_libs): Replace intl with gettext. (hbaseargs, bbaseargs, baseargs): Split baseargs into {h,b}baseargs. (skip_barg): New flag. Skips appending current flag to bbaseargs. <library exemptions>: Exempt --with-libintl-{type,prefix} from target and build machine argument passing. * configure: Regenerate. * Makefile.def (host_modules): Replace intl module with gettext module. (configure-ld): Depend on configure-gettext. * Makefile.in: Regenerate. config/ChangeLog: * intlmacosx.m4: Import from gettext-0.22 (serial 8). * gettext.m4: Sync with gettext-0.22 (serial 77). * gettext-sister.m4 (ZW_GNU_GETTEXT_SISTER_DIR): Load gettext's uninstalled-config.sh, or call AM_GNU_GETTEXT if missing. * iconv.m4: Sync with gettext-0.22 (serial 26). contrib/ChangeLog: * prerequisites.sha512: Add gettext. * prerequisites.md5: Add gettext. * download_prerequisites: Add gettext. gcc/ChangeLog: * configure: Regenerate. * aclocal.m4: Regenerate. * Makefile.in (LIBDEPS): Remove (potential) ./ prefix from LIBINTL_DEP. * doc/install.texi: Document new (notable) flags added by the optional gettext tree and by AM_GNU_GETTEXT. Document libintl/libc with gettext dependency. libcpp/ChangeLog: * configure: Regenerate. * aclocal.m4: Regenerate. libstdc++-v3/ChangeLog: * configure: Regenerate.
92 lines
2.9 KiB
Plaintext
92 lines
2.9 KiB
Plaintext
# intl sister-directory configuration rules.
|
|
#
|
|
|
|
# The idea behind this macro is that there's no need to repeat all the
|
|
# autoconf probes done by the intl directory - it's already done them
|
|
# for us. In fact, there's no need even to look at the cache for the
|
|
# answers. All we need to do is nab a few pieces of information.
|
|
# The intl directory is set up to make this easy, by generating a
|
|
# small file which can be sourced as a shell script; then we produce
|
|
# the necessary substitutions and definitions for this directory.
|
|
|
|
AC_DEFUN([ZW_GNU_GETTEXT_SISTER_DIR],
|
|
[
|
|
m4_pushdef([gettext_builddir],
|
|
m4_default([$1], [../gettext]))
|
|
m4_pushdef([gettext_cfg],
|
|
gettext_builddir[/uninstalled-config.sh])
|
|
if test -f gettext_cfg; then
|
|
relative_builddir='[$(top_builddir)/]gettext_builddir'
|
|
. gettext_cfg
|
|
else
|
|
# The sister gettext directory doesn't exist and won't collect information on
|
|
# using gettext for us. Call a bundled AM_GNU_GETTEXT.
|
|
AM_GNU_GETTEXT([external])
|
|
fi
|
|
m4_popdef([gettext_cfg])
|
|
m4_popdef([gettext_builddir])
|
|
|
|
AC_SUBST([USE_NLS])
|
|
AC_SUBST([LIBINTL])
|
|
AC_SUBST([LIBINTL_DEP])
|
|
AC_SUBST([INCINTL])
|
|
AC_SUBST([XGETTEXT])
|
|
AC_SUBST([GMSGFMT])
|
|
AC_SUBST([POSUB])
|
|
|
|
AC_MSG_CHECKING([whether NLS is requested])
|
|
if test x"$USE_NLS" != xyes; then
|
|
AC_MSG_RESULT(no)
|
|
else
|
|
AC_MSG_RESULT(yes)
|
|
AC_DEFINE(ENABLE_NLS, 1,
|
|
[Define to 1 if translation of program messages to the
|
|
user's native language is requested.])
|
|
|
|
AC_MSG_CHECKING(for catalogs to be installed)
|
|
# Look for .po and .gmo files in the source directory.
|
|
CATALOGS= AC_SUBST(CATALOGS)
|
|
XLINGUAS=
|
|
for cat in $srcdir/po/*.gmo $srcdir/po/*.po; do
|
|
# If there aren't any .gmo files the shell will give us the
|
|
# literal string "../path/to/srcdir/po/*.gmo" which has to be
|
|
# weeded out.
|
|
case "$cat" in *\**)
|
|
continue;;
|
|
esac
|
|
# The quadruple backslash is collapsed to a double backslash
|
|
# by the backticks, then collapsed again by the double quotes,
|
|
# leaving us with one backslash in the sed expression (right
|
|
# before the dot that mustn't act as a wildcard).
|
|
cat=`echo $cat | sed -e "s!$srcdir/po/!!" -e "s!\\\\.po!.gmo!"`
|
|
lang=`echo $cat | sed -e "s!\\\\.gmo!!"`
|
|
# The user is allowed to set LINGUAS to a list of languages to
|
|
# install catalogs for. If it's empty that means "all of them."
|
|
if test "x$LINGUAS" = x; then
|
|
CATALOGS="$CATALOGS $cat"
|
|
XLINGUAS="$XLINGUAS $lang"
|
|
else
|
|
case "$LINGUAS" in *$lang*)
|
|
CATALOGS="$CATALOGS $cat"
|
|
XLINGUAS="$XLINGUAS $lang"
|
|
;;
|
|
esac
|
|
fi
|
|
done
|
|
LINGUAS="$XLINGUAS"
|
|
AC_MSG_RESULT($LINGUAS)
|
|
|
|
dnl Set up some additional variables which our po/Make-in files
|
|
dnl may need.
|
|
|
|
dnl For backward compatibility. Some Makefiles may be using these.
|
|
DATADIRNAME=share
|
|
AC_SUBST(DATADIRNAME)
|
|
INSTOBJEXT=.mo
|
|
AC_SUBST(INSTOBJEXT)
|
|
GENCAT=gencat
|
|
AC_SUBST(GENCAT)
|
|
CATOBJEXT=.gmo
|
|
AC_SUBST(CATOBJEXT)
|
|
fi])
|