diff options
author | zack <zack@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-10-19 15:17:39 +0000 |
---|---|---|
committer | zack <zack@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-10-19 15:17:39 +0000 |
commit | eb7186891856a0581365fb285ab212f91b1d2ac7 (patch) | |
tree | 081319da8a2e78a4efbfcb39e1acf6aca8752c83 /gcc/intl.c | |
parent | af12f29db9b76408d5225feb09ee477ca2a8dacb (diff) | |
download | gcc-eb7186891856a0581365fb285ab212f91b1d2ac7.tar.gz |
* aclocal.m4 (AM_WITH_NLS): AC_DEFINE HAVE_LIBINTL_H and
USE_INCLUDED_LIBINTL when appropriate.
* configure, config.in: Regenerate.
* Makefile.in (datadir): Set to @datadir@.
(intl.o): Also depend on $(CONFIG_H) and system.h.
* intl.c: Factor out common gettext initialization sequence.
(gcc_init_libintl): New function.
* intl.h: Include intl/libgnuintl.h if USE_INCLUDED_LIBINTL;
otherwise include libintl.h if HAVE_LIBINTL_H; otherwise turn
off NLS. Add multiple include guard. No need to #ifdef-guard
an #undef. Prototype gcc_init_libintl here.
* collect2.c (main), cppmain.c (general_init), gcc.c (main),
gcov.c (main), protoize.c (main), toplev.c (toplev_main):
Use gcc_init_libintl.
intl:
* Makefile.in: Don't copy libgnuintl.h anywhere.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46348 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/intl.c')
-rw-r--r-- | gcc/intl.c | 46 |
1 files changed, 43 insertions, 3 deletions
diff --git a/gcc/intl.c b/gcc/intl.c index 761daf33e06..feefc3e5f63 100644 --- a/gcc/intl.c +++ b/gcc/intl.c @@ -1,6 +1,46 @@ -/* intl.c - internationalization */ +/* Message translation utilities. + Copyright (C) 2001 Free Software Foundation, Inc. -#include "ansidecl.h" +This file is part of GCC. + +GCC is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2, or (at your option) any later +version. + +GCC is distributed in the hope that it will be useful, but WITHOUT ANY +WARRANTY; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with GCC; see the file COPYING. If not, write to the Free +Software Foundation, 59 Temple Place - Suite 330, Boston, MA +02111-1307, USA. */ + +#include "config.h" +#include "system.h" #include "intl.h" -const char localedir[] = LOCALEDIR; +#ifdef ENABLE_NLS + +/* Initialize the translation library for GCC. This performs the + appropriate sequence of calls - setlocale, bindtextdomain, + textdomain. LC_CTYPE determines the character set used by the + terminal, so it has be set to output messages correctly. */ + +void +gcc_init_libintl () +{ +#ifdef HAVE_LC_MESSAGES + setlocale (LC_CTYPE, ""); + setlocale (LC_MESSAGES, ""); +#else + setlocale (LC_ALL, ""); +#endif + + (void) bindtextdomain (PACKAGE, LOCALEDIR); + (void) textdomain (PACKAGE); +} + +#endif |