2009-01-01 Yves Blusseau <yves.blusseau@zetam.org>

* configure.ac: check external intl library
	* Makefile.in: add compiler and linker flags to properly compile with
	intl library
	* include/grub/i18n.h: add a check to disable NLS
	* util/misc.c (grub_util_init_nls): new function
	* include/grub/util/misc.h: likewise
	* util/elf/grub-mkimage.c: use the new function below to initialize NLS
	* util/grub-editenv.c: likewise
	* util/grub-emu.c: likewise
	* util/grub-fstest.c: likewise
	* util/grub-mkdevicemap.c: likewise
	* util/grub-mkfont.c: likewise
	* util/grub-mkrelpath.c: likewise
	* util/grub-probe.c: likewise
	* util/i386/pc/grub-mkimage.c: likewise
	* util/i386/pc/grub-setup.c: likewise
	* util/sparc64/ieee1275/grub-mkimage.c: likewise
	* util/sparc64/ieee1275/grub-ofpathname.c: likewise
	* util/sparc64/ieee1275/grub-setup.c: likewise
	* util/mkisofs/mkisofs.h: add a check to disable NLS
	* util/mkisofs/mkisofs.c: likewise
This commit is contained in:
Yves Blusseau 2010-01-01 21:32:30 +01:00
parent cec573c894
commit 2f1a3acf75
20 changed files with 115 additions and 70 deletions

View file

@ -1,6 +1,6 @@
/*
* GRUB -- GRand Unified Bootloader
* Copyright (C) 2009 Free Software Foundation, Inc.
* Copyright (C) 2009,2010 Free Software Foundation, Inc.
*
* GRUB is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -19,17 +19,42 @@
#ifndef GRUB_I18N_H
#define GRUB_I18N_H 1
#ifdef GRUB_UTIL
# include <locale.h>
# include <libintl.h>
# define _(str) gettext(str)
#else
# define _(str) grub_gettext(str)
#include <config.h>
#include <grub/symbol.h>
const char *EXPORT_FUNC(grub_gettext_dummy) (const char *s);
extern const char *(*EXPORT_VAR(grub_gettext)) (const char *s);
#endif
/* NLS can be disabled through the configure --disable-nls option. */
#if ENABLE_NLS
# ifdef GRUB_UTIL
# include <locale.h>
# include <libintl.h>
# endif /* GRUB_UTIL */
#else /* ! ENABLE_NLS */
/* Disabled NLS.
The casts to 'const char *' serve the purpose of producing warnings
for invalid uses of the value returned from these functions.
On pre-ANSI systems without 'const', the config.h file is supposed to
contain "#define const". */
# ifdef GRUB_UTIL
# define gettext(Msgid) ((const char *) (Msgid))
# else
# define grub_gettext(str) ((const char *) (str))
# endif /* GRUB_UTIL */
#endif /* ENABLE_NLS */
#ifdef GRUB_UTIL
# define _(str) gettext(str)
#else
# define _(str) grub_gettext(str)
#endif /* GRUB_UTIL */
#define N_(str) str

View file

@ -1,6 +1,6 @@
/*
* GRUB -- GRand Unified Bootloader
* Copyright (C) 2002,2003,2005,2006,2007,2008,2009 Free Software Foundation, Inc.
* Copyright (C) 2002,2003,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc.
*
* GRUB is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -88,4 +88,6 @@ grub_int64_t grub_util_get_disk_size (char *name);
char *make_system_path_relative_to_its_root (const char *path);
void grub_util_init_nls (void);
#endif /* ! GRUB_UTIL_MISC_HEADER */