Blame gnulib/lib/langinfo.in.h

Packit 06dd63
/* Substitute for and wrapper around <langinfo.h>.
Packit 06dd63
   Copyright (C) 2009-2019 Free Software Foundation, Inc.
Packit 06dd63
Packit 06dd63
   This program is free software; you can redistribute it and/or modify
Packit 06dd63
   it under the terms of the GNU Lesser General Public License as published by
Packit 06dd63
   the Free Software Foundation; either version 2.1, or (at your option)
Packit 06dd63
   any later version.
Packit 06dd63
Packit 06dd63
   This program is distributed in the hope that it will be useful,
Packit 06dd63
   but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit 06dd63
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
Packit 06dd63
   GNU Lesser General Public License for more details.
Packit 06dd63
Packit 06dd63
   You should have received a copy of the GNU Lesser General Public License
Packit 06dd63
   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
Packit 06dd63
Packit 06dd63
/*
Packit 06dd63
 * POSIX <langinfo.h> for platforms that lack it or have an incomplete one.
Packit 06dd63
 * <http://www.opengroup.org/onlinepubs/9699919799/basedefs/langinfo.h.html>
Packit 06dd63
 */
Packit 06dd63
Packit 06dd63
#ifndef _@GUARD_PREFIX@_LANGINFO_H
Packit 06dd63
Packit 06dd63
#if __GNUC__ >= 3
Packit 06dd63
@PRAGMA_SYSTEM_HEADER@
Packit 06dd63
#endif
Packit 06dd63
@PRAGMA_COLUMNS@
Packit 06dd63
Packit 06dd63
/* The include_next requires a split double-inclusion guard.  */
Packit 06dd63
#if @HAVE_LANGINFO_H@
Packit 06dd63
# @INCLUDE_NEXT@ @NEXT_LANGINFO_H@
Packit 06dd63
#endif
Packit 06dd63
Packit 06dd63
#ifndef _@GUARD_PREFIX@_LANGINFO_H
Packit 06dd63
#define _@GUARD_PREFIX@_LANGINFO_H
Packit 06dd63
Packit 06dd63
Packit 06dd63
#if !@HAVE_LANGINFO_H@
Packit 06dd63
Packit 06dd63
/* A platform that lacks <langinfo.h>.  */
Packit 06dd63
Packit 06dd63
/* Assume that it also lacks <nl_types.h> and the nl_item type.  */
Packit 06dd63
# if !GNULIB_defined_nl_item
Packit 06dd63
typedef int nl_item;
Packit 06dd63
#  define GNULIB_defined_nl_item 1
Packit 06dd63
# endif
Packit 06dd63
Packit 06dd63
/* nl_langinfo items of the LC_CTYPE category */
Packit 06dd63
# define CODESET     10000
Packit 06dd63
/* nl_langinfo items of the LC_NUMERIC category */
Packit 06dd63
# define RADIXCHAR   10001
Packit 06dd63
# define DECIMAL_POINT RADIXCHAR
Packit 06dd63
# define THOUSEP     10002
Packit 06dd63
# define THOUSANDS_SEP THOUSEP
Packit 06dd63
# define GROUPING    10114
Packit 06dd63
/* nl_langinfo items of the LC_TIME category */
Packit 06dd63
# define D_T_FMT     10003
Packit 06dd63
# define D_FMT       10004
Packit 06dd63
# define T_FMT       10005
Packit 06dd63
# define T_FMT_AMPM  10006
Packit 06dd63
# define AM_STR      10007
Packit 06dd63
# define PM_STR      10008
Packit 06dd63
# define DAY_1       10009
Packit 06dd63
# define DAY_2       (DAY_1 + 1)
Packit 06dd63
# define DAY_3       (DAY_1 + 2)
Packit 06dd63
# define DAY_4       (DAY_1 + 3)
Packit 06dd63
# define DAY_5       (DAY_1 + 4)
Packit 06dd63
# define DAY_6       (DAY_1 + 5)
Packit 06dd63
# define DAY_7       (DAY_1 + 6)
Packit 06dd63
# define ABDAY_1     10016
Packit 06dd63
# define ABDAY_2     (ABDAY_1 + 1)
Packit 06dd63
# define ABDAY_3     (ABDAY_1 + 2)
Packit 06dd63
# define ABDAY_4     (ABDAY_1 + 3)
Packit 06dd63
# define ABDAY_5     (ABDAY_1 + 4)
Packit 06dd63
# define ABDAY_6     (ABDAY_1 + 5)
Packit 06dd63
# define ABDAY_7     (ABDAY_1 + 6)
Packit 06dd63
# define MON_1       10023
Packit 06dd63
# define MON_2       (MON_1 + 1)
Packit 06dd63
# define MON_3       (MON_1 + 2)
Packit 06dd63
# define MON_4       (MON_1 + 3)
Packit 06dd63
# define MON_5       (MON_1 + 4)
Packit 06dd63
# define MON_6       (MON_1 + 5)
Packit 06dd63
# define MON_7       (MON_1 + 6)
Packit 06dd63
# define MON_8       (MON_1 + 7)
Packit 06dd63
# define MON_9       (MON_1 + 8)
Packit 06dd63
# define MON_10      (MON_1 + 9)
Packit 06dd63
# define MON_11      (MON_1 + 10)
Packit 06dd63
# define MON_12      (MON_1 + 11)
Packit 06dd63
# define ALTMON_1    10200
Packit 06dd63
# define ALTMON_2    (ALTMON_1 + 1)
Packit 06dd63
# define ALTMON_3    (ALTMON_1 + 2)
Packit 06dd63
# define ALTMON_4    (ALTMON_1 + 3)
Packit 06dd63
# define ALTMON_5    (ALTMON_1 + 4)
Packit 06dd63
# define ALTMON_6    (ALTMON_1 + 5)
Packit 06dd63
# define ALTMON_7    (ALTMON_1 + 6)
Packit 06dd63
# define ALTMON_8    (ALTMON_1 + 7)
Packit 06dd63
# define ALTMON_9    (ALTMON_1 + 8)
Packit 06dd63
# define ALTMON_10   (ALTMON_1 + 9)
Packit 06dd63
# define ALTMON_11   (ALTMON_1 + 10)
Packit 06dd63
# define ALTMON_12   (ALTMON_1 + 11)
Packit 06dd63
# define ABMON_1     10035
Packit 06dd63
# define ABMON_2     (ABMON_1 + 1)
Packit 06dd63
# define ABMON_3     (ABMON_1 + 2)
Packit 06dd63
# define ABMON_4     (ABMON_1 + 3)
Packit 06dd63
# define ABMON_5     (ABMON_1 + 4)
Packit 06dd63
# define ABMON_6     (ABMON_1 + 5)
Packit 06dd63
# define ABMON_7     (ABMON_1 + 6)
Packit 06dd63
# define ABMON_8     (ABMON_1 + 7)
Packit 06dd63
# define ABMON_9     (ABMON_1 + 8)
Packit 06dd63
# define ABMON_10    (ABMON_1 + 9)
Packit 06dd63
# define ABMON_11    (ABMON_1 + 10)
Packit 06dd63
# define ABMON_12    (ABMON_1 + 11)
Packit 06dd63
# define ERA         10047
Packit 06dd63
# define ERA_D_FMT   10048
Packit 06dd63
# define ERA_D_T_FMT 10049
Packit 06dd63
# define ERA_T_FMT   10050
Packit 06dd63
# define ALT_DIGITS  10051
Packit 06dd63
/* nl_langinfo items of the LC_MONETARY category */
Packit 06dd63
# define CRNCYSTR    10052
Packit 06dd63
# define CURRENCY_SYMBOL   CRNCYSTR
Packit 06dd63
# define INT_CURR_SYMBOL   10100
Packit 06dd63
# define MON_DECIMAL_POINT 10101
Packit 06dd63
# define MON_THOUSANDS_SEP 10102
Packit 06dd63
# define MON_GROUPING      10103
Packit 06dd63
# define POSITIVE_SIGN     10104
Packit 06dd63
# define NEGATIVE_SIGN     10105
Packit 06dd63
# define FRAC_DIGITS       10106
Packit 06dd63
# define INT_FRAC_DIGITS   10107
Packit 06dd63
# define P_CS_PRECEDES     10108
Packit 06dd63
# define N_CS_PRECEDES     10109
Packit 06dd63
# define P_SEP_BY_SPACE    10110
Packit 06dd63
# define N_SEP_BY_SPACE    10111
Packit 06dd63
# define P_SIGN_POSN       10112
Packit 06dd63
# define N_SIGN_POSN       10113
Packit 06dd63
/* nl_langinfo items of the LC_MESSAGES category */
Packit 06dd63
# define YESEXPR     10053
Packit 06dd63
# define NOEXPR      10054
Packit 06dd63
Packit 06dd63
#else
Packit 06dd63
Packit 06dd63
/* A platform that has <langinfo.h>.  */
Packit 06dd63
Packit 06dd63
# if !@HAVE_LANGINFO_CODESET@
Packit 06dd63
#  define CODESET     10000
Packit 06dd63
#  define GNULIB_defined_CODESET 1
Packit 06dd63
# endif
Packit 06dd63
Packit 06dd63
# if !@HAVE_LANGINFO_T_FMT_AMPM@
Packit 06dd63
#  define T_FMT_AMPM  10006
Packit 06dd63
#  define GNULIB_defined_T_FMT_AMPM 1
Packit 06dd63
# endif
Packit 06dd63
Packit 06dd63
# if !@HAVE_LANGINFO_ALTMON@
Packit 06dd63
#  define ALTMON_1    10200
Packit 06dd63
#  define ALTMON_2    (ALTMON_1 + 1)
Packit 06dd63
#  define ALTMON_3    (ALTMON_1 + 2)
Packit 06dd63
#  define ALTMON_4    (ALTMON_1 + 3)
Packit 06dd63
#  define ALTMON_5    (ALTMON_1 + 4)
Packit 06dd63
#  define ALTMON_6    (ALTMON_1 + 5)
Packit 06dd63
#  define ALTMON_7    (ALTMON_1 + 6)
Packit 06dd63
#  define ALTMON_8    (ALTMON_1 + 7)
Packit 06dd63
#  define ALTMON_9    (ALTMON_1 + 8)
Packit 06dd63
#  define ALTMON_10   (ALTMON_1 + 9)
Packit 06dd63
#  define ALTMON_11   (ALTMON_1 + 10)
Packit 06dd63
#  define ALTMON_12   (ALTMON_1 + 11)
Packit 06dd63
#  define GNULIB_defined_ALTMON 1
Packit 06dd63
# endif
Packit 06dd63
Packit 06dd63
# if !@HAVE_LANGINFO_ERA@
Packit 06dd63
#  define ERA         10047
Packit 06dd63
#  define ERA_D_FMT   10048
Packit 06dd63
#  define ERA_D_T_FMT 10049
Packit 06dd63
#  define ERA_T_FMT   10050
Packit 06dd63
#  define ALT_DIGITS  10051
Packit 06dd63
#  define GNULIB_defined_ERA 1
Packit 06dd63
# endif
Packit 06dd63
Packit 06dd63
# if !@HAVE_LANGINFO_YESEXPR@
Packit 06dd63
#  define YESEXPR     10053
Packit 06dd63
#  define NOEXPR      10054
Packit 06dd63
#  define GNULIB_defined_YESEXPR 1
Packit 06dd63
# endif
Packit 06dd63
Packit 06dd63
#endif
Packit 06dd63
Packit 06dd63
/* The definitions of _GL_FUNCDECL_RPL etc. are copied here.  */
Packit 06dd63
Packit 06dd63
/* The definition of _GL_WARN_ON_USE is copied here.  */
Packit 06dd63
Packit 06dd63
/* Declare overridden functions.  */
Packit 06dd63
Packit 06dd63
Packit 06dd63
/* Return a piece of locale dependent information.
Packit 06dd63
   Note: The difference between nl_langinfo (CODESET) and locale_charset ()
Packit 06dd63
   is that the latter normalizes the encoding names to GNU conventions.  */
Packit 06dd63
Packit 06dd63
#if @GNULIB_NL_LANGINFO@
Packit 06dd63
# if @REPLACE_NL_LANGINFO@
Packit 06dd63
#  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
Packit 06dd63
#   undef nl_langinfo
Packit 06dd63
#   define nl_langinfo rpl_nl_langinfo
Packit 06dd63
#  endif
Packit 06dd63
_GL_FUNCDECL_RPL (nl_langinfo, char *, (nl_item item));
Packit 06dd63
_GL_CXXALIAS_RPL (nl_langinfo, char *, (nl_item item));
Packit 06dd63
# else
Packit 06dd63
#  if !@HAVE_NL_LANGINFO@
Packit 06dd63
_GL_FUNCDECL_SYS (nl_langinfo, char *, (nl_item item));
Packit 06dd63
#  endif
Packit 06dd63
_GL_CXXALIAS_SYS (nl_langinfo, char *, (nl_item item));
Packit 06dd63
# endif
Packit 06dd63
_GL_CXXALIASWARN (nl_langinfo);
Packit 06dd63
#elif defined GNULIB_POSIXCHECK
Packit 06dd63
# undef nl_langinfo
Packit 06dd63
# if HAVE_RAW_DECL_NL_LANGINFO
Packit 06dd63
_GL_WARN_ON_USE (nl_langinfo, "nl_langinfo is not portable - "
Packit 06dd63
                 "use gnulib module nl_langinfo for portability");
Packit 06dd63
# endif
Packit 06dd63
#endif
Packit 06dd63
Packit 06dd63
Packit 06dd63
#endif /* _@GUARD_PREFIX@_LANGINFO_H */
Packit 06dd63
#endif /* _@GUARD_PREFIX@_LANGINFO_H */