1# bison-i18n.m4 serial 2
2
3dnl Copyright (C) 2005-2006, 2009-2012 Free Software Foundation, Inc.
4
5dnl This file is free software; the Free Software Foundation
6dnl gives unlimited permission to copy and/or distribute it,
7dnl with or without modifications, as long as this notice is preserved.
8
9dnl From Bruno Haible.
10
11dnl Support for internationalization of bison-generated parsers.
12
13dnl BISON_I18N
14dnl should be used in configure.ac, after AM_GNU_GETTEXT. If USE_NLS is yes, it
15dnl sets BISON_LOCALEDIR to indicate where to find the bison-runtime.mo files
16dnl and defines YYENABLE_NLS if there are bison-runtime.mo files at all.
17AC_DEFUN([BISON_I18N],
18[
19  if test -z "$USE_NLS"; then
20    echo "The BISON-I18N macro is used without being preceded by AM-GNU-GETTEXT." 1>&2
21    exit 1
22  fi
23  BISON_LOCALEDIR=
24  BISON_USE_NLS=no
25  if test "$USE_NLS" = yes; then
26    dnl Determine bison's localedir.
27    dnl AC_PROG_YACC sets the YACC variable; other macros set the BISON variable.
28    dnl But even is YACC is called "yacc", it may be a script that invokes bison
29    dnl and accepts the --print-localedir option.
30    dnl YACC's default value is empty; BISON's default value is :.
31    if (${YACC-${BISON-:}} --print-localedir) >/dev/null 2>&1; then
32      BISON_LOCALEDIR=`${YACC-${BISON-:}} --print-localedir`
33    fi
34    AC_SUBST([BISON_LOCALEDIR])
35    if test -n "$BISON_LOCALEDIR"; then
36      dnl There is no need to enable internationalization if the user doesn't
37      dnl want message catalogs.  So look at the language/locale names for
38      dnl which the user wants message catalogs.  This is $LINGUAS.  If unset
39      dnl or empty, he wants all of them.
40      USER_LINGUAS="${LINGUAS-%UNSET%}"
41      if test -n "$USER_LINGUAS"; then
42        BISON_USE_NLS=yes
43      fi
44    fi
45  fi
46  if test $BISON_USE_NLS = yes; then
47    AC_DEFINE([YYENABLE_NLS], 1,
48      [Define to 1 to internationalize bison runtime messages.])
49  fi
50])
51