1 /* intl.h - internationalization 2 Copyright (C) 1998-2018 Free Software Foundation, Inc. 3 4 GCC is free software; you can redistribute it and/or modify 5 it under the terms of the GNU General Public License as published by 6 the Free Software Foundation; either version 3, or (at your option) 7 any later version. 8 9 GCC is distributed in the hope that it will be useful, 10 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 GNU General Public License for more details. 13 14 You should have received a copy of the GNU General Public License 15 along with GCC; see the file COPYING3. If not see 16 <http://www.gnu.org/licenses/>. */ 17 18 #ifndef GCC_INTL_H 19 #define GCC_INTL_H 20 21 #ifdef HAVE_LOCALE_H 22 # include <locale.h> 23 #endif 24 25 #ifndef HAVE_SETLOCALE 26 # define setlocale(category, locale) (locale) 27 #endif 28 29 #ifdef ENABLE_NLS 30 #include <libintl.h> 31 extern void gcc_init_libintl (void); 32 extern size_t gcc_gettext_width (const char *); 33 #else 34 /* Stubs. */ 35 # undef textdomain 36 # define textdomain(domain) (domain) 37 # undef bindtextdomain 38 # define bindtextdomain(domain, directory) (domain) 39 # undef gettext 40 # define gettext(msgid) (msgid) 41 # define ngettext(singular,plural,n) fake_ngettext (singular, plural, n) 42 # define gcc_init_libintl() /* nothing */ 43 # define gcc_gettext_width(s) strlen (s) 44 45 extern const char *fake_ngettext (const char *singular, const char *plural, 46 unsigned long int n); 47 48 #endif 49 50 #ifndef _ 51 # define _(msgid) gettext (msgid) 52 #endif 53 54 #ifndef N_ 55 # define N_(msgid) msgid 56 #endif 57 58 #ifndef G_ 59 # define G_(gmsgid) gmsgid 60 #endif 61 62 extern char *get_spaces (const char *); 63 64 extern const char *open_quote; 65 extern const char *close_quote; 66 extern const char *locale_encoding; 67 extern bool locale_utf8; 68 69 #endif /* intl.h */ 70