diff options
Diffstat (limited to 'mbsupport.h')
-rw-r--r-- | mbsupport.h | 59 |
1 files changed, 19 insertions, 40 deletions
diff --git a/mbsupport.h b/mbsupport.h index 6008da77..f4e1a821 100644 --- a/mbsupport.h +++ b/mbsupport.h @@ -3,7 +3,7 @@ */ /* - * Copyright (C) 2004, 2005, 2011 the Free Software Foundation, Inc. + * Copyright (C) 2004, 2005, 2011, 2012 the Free Software Foundation, Inc. * * This file is part of GAWK, the GNU implementation of the * AWK Programming Language. @@ -23,48 +23,27 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */ -/* - * This file is needed because we test for i18n support in 3 different - * places, and we want a consistent definition in all of them. Following - * the ``Don't Repeat Yourself'' principle from "The Pragmatic Programmer", - * we centralize the tests here. - * - * This test is the union of all the current tests. - */ -#ifdef HAVE_STDLIB_H -#include <stdlib.h> -#endif +#ifdef __DJGPP__ +# undef MB_CUR_MAX +# define MB_CUR_MAX 1 -#ifndef NO_MBSUPPORT +/* All this glop is for DGJPP */ -#if defined(HAVE_ISWCTYPE) \ - && defined(HAVE_LOCALE_H) \ - && defined(HAVE_MBRLEN) \ - && defined(HAVE_MBRTOWC) \ - && defined(HAVE_WCHAR_H) \ - && defined(HAVE_WCRTOMB) \ - && defined(HAVE_WCSCOLL) \ - && defined(HAVE_WCTYPE) \ - && defined(HAVE_WCTYPE_H) \ - && defined(HAVE_WCTYPE_T) \ - && defined(HAVE_WINT_T) \ - && defined(HAVE_ISWLOWER) \ - && defined(HAVE_ISWUPPER) \ - && defined(HAVE_TOWLOWER) \ - && defined(HAVE_TOWUPPER) \ - && (defined(HAVE_STDLIB_H) && defined(MB_CUR_MAX)) \ -/* We can handle multibyte strings. */ -# define MBS_SUPPORT 1 -#else -# define MBS_SUPPORT 0 -#endif +#define towupper toupper +#define towlower tolower +#define iswalnum isalnum +#define iswalpha isalpha +#define iswupper isupper +#define iswlower islower -#else /* NO_MBSUPPORT is defined */ -# define MBS_SUPPORT 0 -#endif +#define mbrtowc(wcp, s, e, mbs) (-1) +#define mbrlen(s, e, mbs) strlen(s) +#define wcrtomb(wc, b, mbs) (-1) +#define wcslen strlen +#define wctob(wc) (EOF) -#if ! MBS_SUPPORT -# undef MB_CUR_MAX -# define MB_CUR_MAX 1 +extern wctype_t wctype(const char *name); +extern int iswctype(wint_t wc, wctype_t desc); +extern int wcscoll(const wchar_t *ws1, const wchar_t *ws2); #endif |