diff options
Diffstat (limited to 'meta/packages/console-tools/console-tools-0.3.2/config/gettext.m4')
-rw-r--r-- | meta/packages/console-tools/console-tools-0.3.2/config/gettext.m4 | 370 |
1 files changed, 370 insertions, 0 deletions
diff --git a/meta/packages/console-tools/console-tools-0.3.2/config/gettext.m4 b/meta/packages/console-tools/console-tools-0.3.2/config/gettext.m4 new file mode 100644 index 0000000000..e4d524cf0f --- /dev/null +++ b/meta/packages/console-tools/console-tools-0.3.2/config/gettext.m4 | |||
@@ -0,0 +1,370 @@ | |||
1 | # Macro to add for using GNU gettext. | ||
2 | # Ulrich Drepper <drepper@cygnus.com>, 1995. | ||
3 | # | ||
4 | # This file can be copied and used freely without restrictions. It can | ||
5 | # be used in projects which are not available under the GNU General Public | ||
6 | # License or the GNU Library General Public License but which still want | ||
7 | # to provide support for the GNU gettext functionality. | ||
8 | # Please note that the actual code of the GNU gettext library is covered | ||
9 | # by the GNU Library General Public License, and the rest of the GNU | ||
10 | # gettext package package is covered by the GNU General Public License. | ||
11 | # They are *not* in the public domain. | ||
12 | |||
13 | # serial 10 | ||
14 | |||
15 | dnl Usage: AM_WITH_NLS([TOOLSYMBOL], [NEEDSYMBOL], [LIBDIR]). | ||
16 | dnl If TOOLSYMBOL is specified and is 'use-libtool', then a libtool library | ||
17 | dnl $(top_builddir)/intl/libintl.la will be created (shared and/or static, | ||
18 | dnl depending on --{enable,disable}-{shared,static} and on the presence of | ||
19 | dnl AM-DISABLE-SHARED). Otherwise, a static library | ||
20 | dnl $(top_builddir)/intl/libintl.a will be created. | ||
21 | dnl If NEEDSYMBOL is specified and is 'need-ngettext', then GNU gettext | ||
22 | dnl implementations (in libc or libintl) without the ngettext() function | ||
23 | dnl will be ignored. | ||
24 | dnl LIBDIR is used to find the intl libraries. If empty, | ||
25 | dnl the value `$(top_builddir)/intl/' is used. | ||
26 | dnl | ||
27 | dnl The result of the configuration is one of three cases: | ||
28 | dnl 1) GNU gettext, as included in the intl subdirectory, will be compiled | ||
29 | dnl and used. | ||
30 | dnl Catalog format: GNU --> install in $(datadir) | ||
31 | dnl Catalog extension: .mo after installation, .gmo in source tree | ||
32 | dnl 2) GNU gettext has been found in the system's C library. | ||
33 | dnl Catalog format: GNU --> install in $(datadir) | ||
34 | dnl Catalog extension: .mo after installation, .gmo in source tree | ||
35 | dnl 3) No internationalization, always use English msgid. | ||
36 | dnl Catalog format: none | ||
37 | dnl Catalog extension: none | ||
38 | dnl The use of .gmo is historical (it was needed to avoid overwriting the | ||
39 | dnl GNU format catalogs when building on a platform with an X/Open gettext), | ||
40 | dnl but we keep it in order not to force irrelevant filename changes on the | ||
41 | dnl maintainers. | ||
42 | dnl | ||
43 | AC_DEFUN([AM_WITH_NLS], | ||
44 | [AC_MSG_CHECKING([whether NLS is requested]) | ||
45 | dnl Default is enabled NLS | ||
46 | AC_ARG_ENABLE(nls, | ||
47 | [ --disable-nls do not use Native Language Support], | ||
48 | USE_NLS=$enableval, USE_NLS=yes) | ||
49 | AC_MSG_RESULT($USE_NLS) | ||
50 | AC_SUBST(USE_NLS) | ||
51 | |||
52 | BUILD_INCLUDED_LIBINTL=no | ||
53 | USE_INCLUDED_LIBINTL=no | ||
54 | INTLLIBS= | ||
55 | |||
56 | dnl If we use NLS figure out what method | ||
57 | if test "$USE_NLS" = "yes"; then | ||
58 | AC_DEFINE(ENABLE_NLS, 1, | ||
59 | [Define to 1 if translation of program messages to the user's native language | ||
60 | is requested.]) | ||
61 | AC_MSG_CHECKING([whether included gettext is requested]) | ||
62 | AC_ARG_WITH(included-gettext, | ||
63 | [ --with-included-gettext use the GNU gettext library included here], | ||
64 | nls_cv_force_use_gnu_gettext=$withval, | ||
65 | nls_cv_force_use_gnu_gettext=no) | ||
66 | AC_MSG_RESULT($nls_cv_force_use_gnu_gettext) | ||
67 | |||
68 | nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext" | ||
69 | if test "$nls_cv_force_use_gnu_gettext" != "yes"; then | ||
70 | dnl User does not insist on using GNU NLS library. Figure out what | ||
71 | dnl to use. If GNU gettext is available we use this. Else we have | ||
72 | dnl to fall back to GNU NLS library. | ||
73 | CATOBJEXT=NONE | ||
74 | |||
75 | dnl Add a version number to the cache macros. | ||
76 | define(gt_cv_func_gnugettext_libc, [gt_cv_func_gnugettext]ifelse([$2], need-ngettext, 2, 1)[_libc]) | ||
77 | define(gt_cv_func_gnugettext_libintl, [gt_cv_func_gnugettext]ifelse([$2], need-ngettext, 2, 1)[_libintl]) | ||
78 | |||
79 | AC_CHECK_HEADER(libintl.h, | ||
80 | [AC_CACHE_CHECK([for GNU gettext in libc], gt_cv_func_gnugettext_libc, | ||
81 | [AC_TRY_LINK([#include <libintl.h> | ||
82 | extern int _nl_msg_cat_cntr;], | ||
83 | [bindtextdomain ("", ""); | ||
84 | return (int) gettext ("")]ifelse([$2], need-ngettext, [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr], | ||
85 | gt_cv_func_gnugettext_libc=yes, | ||
86 | gt_cv_func_gnugettext_libc=no)]) | ||
87 | |||
88 | if test "$gt_cv_func_gnugettext_libc" != "yes"; then | ||
89 | AC_CACHE_CHECK([for GNU gettext in libintl], | ||
90 | gt_cv_func_gnugettext_libintl, | ||
91 | [gt_save_LIBS="$LIBS" | ||
92 | LIBS="$LIBS -lintl $LIBICONV" | ||
93 | AC_TRY_LINK([#include <libintl.h> | ||
94 | extern int _nl_msg_cat_cntr;], | ||
95 | [bindtextdomain ("", ""); | ||
96 | return (int) gettext ("")]ifelse([$2], need-ngettext, [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr], | ||
97 | gt_cv_func_gnugettext_libintl=yes, | ||
98 | gt_cv_func_gnugettext_libintl=no) | ||
99 | LIBS="$gt_save_LIBS"]) | ||
100 | fi | ||
101 | |||
102 | dnl If an already present or preinstalled GNU gettext() is found, | ||
103 | dnl use it. But if this macro is used in GNU gettext, and GNU | ||
104 | dnl gettext is already preinstalled in libintl, we update this | ||
105 | dnl libintl. (Cf. the install rule in intl/Makefile.in.) | ||
106 | if test "$gt_cv_func_gnugettext_libc" = "yes" \ | ||
107 | || { test "$gt_cv_func_gnugettext_libintl" = "yes" \ | ||
108 | && test "$PACKAGE" != gettext; }; then | ||
109 | AC_DEFINE(HAVE_GETTEXT, 1, | ||
110 | [Define if the GNU gettext() function is already present or preinstalled.]) | ||
111 | |||
112 | if test "$gt_cv_func_gnugettext_libintl" = "yes"; then | ||
113 | dnl If iconv() is in a separate libiconv library, then anyone | ||
114 | dnl linking with libintl{.a,.so} also needs to link with | ||
115 | dnl libiconv. | ||
116 | INTLLIBS="-lintl $LIBICONV" | ||
117 | fi | ||
118 | |||
119 | gt_save_LIBS="$LIBS" | ||
120 | LIBS="$LIBS $INTLLIBS" | ||
121 | AC_CHECK_FUNCS(dcgettext) | ||
122 | LIBS="$gt_save_LIBS" | ||
123 | |||
124 | dnl Search for GNU msgfmt in the PATH. | ||
125 | AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, | ||
126 | [$ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1], :) | ||
127 | AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) | ||
128 | |||
129 | dnl Search for GNU xgettext in the PATH. | ||
130 | AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, | ||
131 | [$ac_dir/$ac_word --omit-header /dev/null >/dev/null 2>&1], :) | ||
132 | |||
133 | CATOBJEXT=.gmo | ||
134 | fi | ||
135 | ]) | ||
136 | |||
137 | if test "$CATOBJEXT" = "NONE"; then | ||
138 | dnl GNU gettext is not found in the C library. | ||
139 | dnl Fall back on GNU gettext library. | ||
140 | nls_cv_use_gnu_gettext=yes | ||
141 | fi | ||
142 | fi | ||
143 | |||
144 | if test "$nls_cv_use_gnu_gettext" = "yes"; then | ||
145 | dnl Mark actions used to generate GNU NLS library. | ||
146 | INTLOBJS="\$(GETTOBJS)" | ||
147 | AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, | ||
148 | [$ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1], :) | ||
149 | AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) | ||
150 | AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, | ||
151 | [$ac_dir/$ac_word --omit-header /dev/null >/dev/null 2>&1], :) | ||
152 | AC_SUBST(MSGFMT) | ||
153 | BUILD_INCLUDED_LIBINTL=yes | ||
154 | USE_INCLUDED_LIBINTL=yes | ||
155 | CATOBJEXT=.gmo | ||
156 | INTLLIBS="ifelse([$3],[],\$(top_builddir)/intl,[$3])/libintl.ifelse([$1], use-libtool, [l], [])a $LIBICONV" | ||
157 | LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'` | ||
158 | fi | ||
159 | |||
160 | dnl This could go away some day; the PATH_PROG_WITH_TEST already does it. | ||
161 | dnl Test whether we really found GNU msgfmt. | ||
162 | if test "$GMSGFMT" != ":"; then | ||
163 | dnl If it is no GNU msgfmt we define it as : so that the | ||
164 | dnl Makefiles still can work. | ||
165 | if $GMSGFMT --statistics /dev/null >/dev/null 2>&1; then | ||
166 | : ; | ||
167 | else | ||
168 | AC_MSG_RESULT( | ||
169 | [found msgfmt program is not GNU msgfmt; ignore it]) | ||
170 | GMSGFMT=":" | ||
171 | fi | ||
172 | fi | ||
173 | |||
174 | dnl This could go away some day; the PATH_PROG_WITH_TEST already does it. | ||
175 | dnl Test whether we really found GNU xgettext. | ||
176 | if test "$XGETTEXT" != ":"; then | ||
177 | dnl If it is no GNU xgettext we define it as : so that the | ||
178 | dnl Makefiles still can work. | ||
179 | if $XGETTEXT --omit-header /dev/null >/dev/null 2>&1; then | ||
180 | : ; | ||
181 | else | ||
182 | AC_MSG_RESULT( | ||
183 | [found xgettext program is not GNU xgettext; ignore it]) | ||
184 | XGETTEXT=":" | ||
185 | fi | ||
186 | fi | ||
187 | |||
188 | dnl We need to process the po/ directory. | ||
189 | POSUB=po | ||
190 | fi | ||
191 | AC_OUTPUT_COMMANDS( | ||
192 | [for ac_file in $CONFIG_FILES; do | ||
193 | # Support "outfile[:infile[:infile...]]" | ||
194 | case "$ac_file" in | ||
195 | *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; | ||
196 | esac | ||
197 | # PO directories have a Makefile.in generated from Makefile.in.in. | ||
198 | case "$ac_file" in */Makefile.in) | ||
199 | # Adjust a relative srcdir. | ||
200 | ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` | ||
201 | ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`" | ||
202 | ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` | ||
203 | # In autoconf-2.13 it is called $ac_given_srcdir. | ||
204 | # In autoconf-2.50 it is called $srcdir. | ||
205 | test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" | ||
206 | case "$ac_given_srcdir" in | ||
207 | .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; | ||
208 | /*) top_srcdir="$ac_given_srcdir" ;; | ||
209 | *) top_srcdir="$ac_dots$ac_given_srcdir" ;; | ||
210 | esac | ||
211 | if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then | ||
212 | rm -f "$ac_dir/POTFILES" | ||
213 | test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" | ||
214 | sed -e "/^#/d" -e "/^[ ]*\$/d" -e "s,.*, $top_srcdir/& \\\\," -e "\$s/\(.*\) \\\\/\1/" < "$ac_given_srcdir/$ac_dir/POTFILES.in" > "$ac_dir/POTFILES" | ||
215 | test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile" | ||
216 | sed -e "/POTFILES =/r $ac_dir/POTFILES" "$ac_dir/Makefile.in" > "$ac_dir/Makefile" | ||
217 | fi | ||
218 | ;; | ||
219 | esac | ||
220 | done]) | ||
221 | |||
222 | |||
223 | dnl If this is used in GNU gettext we have to set BUILD_INCLUDED_LIBINTL | ||
224 | dnl to 'yes' because some of the testsuite requires it. | ||
225 | if test "$PACKAGE" = gettext; then | ||
226 | BUILD_INCLUDED_LIBINTL=yes | ||
227 | fi | ||
228 | |||
229 | dnl intl/plural.c is generated from intl/plural.y. It requires bison, | ||
230 | dnl because plural.y uses bison specific features. It requires at least | ||
231 | dnl bison-1.26 because earlier versions generate a plural.c that doesn't | ||
232 | dnl compile. | ||
233 | dnl bison is only needed for the maintainer (who touches plural.y). But in | ||
234 | dnl order to avoid separate Makefiles or --enable-maintainer-mode, we put | ||
235 | dnl the rule in general Makefile. Now, some people carelessly touch the | ||
236 | dnl files or have a broken "make" program, hence the plural.c rule will | ||
237 | dnl sometimes fire. To avoid an error, defines BISON to ":" if it is not | ||
238 | dnl present or too old. | ||
239 | AC_CHECK_PROGS([INTLBISON], [bison]) | ||
240 | if test -z "$INTLBISON"; then | ||
241 | ac_verc_fail=yes | ||
242 | else | ||
243 | dnl Found it, now check the version. | ||
244 | AC_MSG_CHECKING([version of bison]) | ||
245 | changequote(<<,>>)dnl | ||
246 | ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'` | ||
247 | case $ac_prog_version in | ||
248 | '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; | ||
249 | 1.2[6-9]* | 1.[3-9][0-9]* | [2-9].*) | ||
250 | changequote([,])dnl | ||
251 | ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; | ||
252 | *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; | ||
253 | esac | ||
254 | AC_MSG_RESULT([$ac_prog_version]) | ||
255 | fi | ||
256 | if test $ac_verc_fail = yes; then | ||
257 | INTLBISON=: | ||
258 | fi | ||
259 | |||
260 | dnl These rules are solely for the distribution goal. While doing this | ||
261 | dnl we only have to keep exactly one list of the available catalogs | ||
262 | dnl in configure.in. | ||
263 | for lang in $ALL_LINGUAS; do | ||
264 | GMOFILES="$GMOFILES $lang.gmo" | ||
265 | POFILES="$POFILES $lang.po" | ||
266 | done | ||
267 | |||
268 | dnl Make all variables we use known to autoconf. | ||
269 | AC_SUBST(BUILD_INCLUDED_LIBINTL) | ||
270 | AC_SUBST(USE_INCLUDED_LIBINTL) | ||
271 | AC_SUBST(CATALOGS) | ||
272 | AC_SUBST(CATOBJEXT) | ||
273 | AC_SUBST(GMOFILES) | ||
274 | AC_SUBST(INTLLIBS) | ||
275 | AC_SUBST(INTLOBJS) | ||
276 | AC_SUBST(POFILES) | ||
277 | AC_SUBST(POSUB) | ||
278 | |||
279 | dnl For backward compatibility. Some configure.ins may be using this. | ||
280 | nls_cv_header_intl= | ||
281 | nls_cv_header_libgt= | ||
282 | |||
283 | dnl For backward compatibility. Some Makefiles may be using this. | ||
284 | DATADIRNAME=share | ||
285 | AC_SUBST(DATADIRNAME) | ||
286 | |||
287 | dnl For backward compatibility. Some Makefiles may be using this. | ||
288 | INSTOBJEXT=.mo | ||
289 | AC_SUBST(INSTOBJEXT) | ||
290 | |||
291 | dnl For backward compatibility. Some Makefiles may be using this. | ||
292 | GENCAT=gencat | ||
293 | AC_SUBST(GENCAT) | ||
294 | ]) | ||
295 | |||
296 | dnl Usage: Just like AM_WITH_NLS, which see. | ||
297 | AC_DEFUN([AM_GNU_GETTEXT], | ||
298 | [AC_REQUIRE([AC_PROG_MAKE_SET])dnl | ||
299 | AC_REQUIRE([AC_PROG_CC])dnl | ||
300 | AC_REQUIRE([AC_CANONICAL_HOST])dnl | ||
301 | AC_REQUIRE([AC_PROG_RANLIB])dnl | ||
302 | AC_REQUIRE([AC_ISC_POSIX])dnl | ||
303 | AC_REQUIRE([AC_HEADER_STDC])dnl | ||
304 | AC_REQUIRE([AC_C_CONST])dnl | ||
305 | AC_REQUIRE([AC_C_INLINE])dnl | ||
306 | AC_REQUIRE([AC_TYPE_OFF_T])dnl | ||
307 | AC_REQUIRE([AC_TYPE_SIZE_T])dnl | ||
308 | AC_REQUIRE([AC_FUNC_ALLOCA])dnl | ||
309 | AC_REQUIRE([AC_FUNC_MMAP])dnl | ||
310 | AC_REQUIRE([jm_GLIBC21])dnl | ||
311 | |||
312 | AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h stddef.h \ | ||
313 | stdlib.h string.h unistd.h sys/param.h]) | ||
314 | AC_CHECK_FUNCS([feof_unlocked fgets_unlocked getcwd getegid geteuid \ | ||
315 | getgid getuid mempcpy munmap putenv setenv setlocale stpcpy strchr strcasecmp \ | ||
316 | strdup strtoul tsearch __argz_count __argz_stringify __argz_next]) | ||
317 | |||
318 | AM_ICONV | ||
319 | AM_LANGINFO_CODESET | ||
320 | AM_LC_MESSAGES | ||
321 | AM_WITH_NLS([$1],[$2],[$3]) | ||
322 | |||
323 | if test "x$CATOBJEXT" != "x"; then | ||
324 | if test "x$ALL_LINGUAS" = "x"; then | ||
325 | LINGUAS= | ||
326 | else | ||
327 | AC_MSG_CHECKING(for catalogs to be installed) | ||
328 | NEW_LINGUAS= | ||
329 | for presentlang in $ALL_LINGUAS; do | ||
330 | useit=no | ||
331 | for desiredlang in ${LINGUAS-$ALL_LINGUAS}; do | ||
332 | # Use the presentlang catalog if desiredlang is | ||
333 | # a. equal to presentlang, or | ||
334 | # b. a variant of presentlang (because in this case, | ||
335 | # presentlang can be used as a fallback for messages | ||
336 | # which are not translated in the desiredlang catalog). | ||
337 | case "$desiredlang" in | ||
338 | "$presentlang"*) useit=yes;; | ||
339 | esac | ||
340 | done | ||
341 | if test $useit = yes; then | ||
342 | NEW_LINGUAS="$NEW_LINGUAS $presentlang" | ||
343 | fi | ||
344 | done | ||
345 | LINGUAS=$NEW_LINGUAS | ||
346 | AC_MSG_RESULT($LINGUAS) | ||
347 | fi | ||
348 | |||
349 | dnl Construct list of names of catalog files to be constructed. | ||
350 | if test -n "$LINGUAS"; then | ||
351 | for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done | ||
352 | fi | ||
353 | fi | ||
354 | |||
355 | dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly | ||
356 | dnl find the mkinstalldirs script in another subdir but $(top_srcdir). | ||
357 | dnl Try to locate is. | ||
358 | MKINSTALLDIRS= | ||
359 | if test -n "$ac_aux_dir"; then | ||
360 | MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" | ||
361 | fi | ||
362 | if test -z "$MKINSTALLDIRS"; then | ||
363 | MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" | ||
364 | fi | ||
365 | AC_SUBST(MKINSTALLDIRS) | ||
366 | |||
367 | dnl Enable libtool support if the surrounding package wishes it. | ||
368 | INTL_LIBTOOL_SUFFIX_PREFIX=ifelse([$1], use-libtool, [l], []) | ||
369 | AC_SUBST(INTL_LIBTOOL_SUFFIX_PREFIX) | ||
370 | ]) | ||