1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339
|
/* Replaces <langinfo.h>, and allows our code to work on systems that don't
* have that. */
#ifndef PERL_LANGINFO_H
#define PERL_LANGINFO_H 1
#include "config.h"
#if defined(I_LANGINFO)
# include <langinfo.h>
#else
typedef int nl_item; /* Substitute 'int' for emulated nl_langinfo() */
#endif
/* NOTE that this file is parsed by ext/XS-APItest/t/locale.t, so be careful
* with changes */
/* If foo doesn't exist define it to a negative number. */
#ifndef CODESET
# define CODESET -1
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef D_T_FMT
# define D_T_FMT -2
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef D_FMT
# define D_FMT -3
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef T_FMT
# define T_FMT -4
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef T_FMT_AMPM
# define T_FMT_AMPM -5
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef AM_STR
# define AM_STR -6
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef PM_STR
# define PM_STR -7
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef DAY_1
# define DAY_1 -8
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef DAY_2
# define DAY_2 -9
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef DAY_3
# define DAY_3 -10
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef DAY_4
# define DAY_4 -11
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef DAY_5
# define DAY_5 -12
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef DAY_6
# define DAY_6 -13
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef DAY_7
# define DAY_7 -14
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ABDAY_1
# define ABDAY_1 -15
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ABDAY_2
# define ABDAY_2 -16
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ABDAY_3
# define ABDAY_3 -17
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ABDAY_4
# define ABDAY_4 -18
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ABDAY_5
# define ABDAY_5 -19
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ABDAY_6
# define ABDAY_6 -20
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ABDAY_7
# define ABDAY_7 -21
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef MON_1
# define MON_1 -22
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef MON_2
# define MON_2 -23
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef MON_3
# define MON_3 -24
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef MON_4
# define MON_4 -25
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef MON_5
# define MON_5 -26
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef MON_6
# define MON_6 -27
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef MON_7
# define MON_7 -28
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef MON_8
# define MON_8 -29
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef MON_9
# define MON_9 -30
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef MON_10
# define MON_10 -31
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef MON_11
# define MON_11 -32
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef MON_12
# define MON_12 -33
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ABMON_1
# define ABMON_1 -34
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ABMON_2
# define ABMON_2 -35
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ABMON_3
# define ABMON_3 -36
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ABMON_4
# define ABMON_4 -37
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ABMON_5
# define ABMON_5 -38
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ABMON_6
# define ABMON_6 -39
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ABMON_7
# define ABMON_7 -40
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ABMON_8
# define ABMON_8 -41
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ABMON_9
# define ABMON_9 -42
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ABMON_10
# define ABMON_10 -43
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ABMON_11
# define ABMON_11 -44
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ABMON_12
# define ABMON_12 -45
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ERA
# define ERA -46
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ERA_D_FMT
# define ERA_D_FMT -47
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ERA_D_T_FMT
# define ERA_D_T_FMT -48
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ERA_T_FMT
# define ERA_T_FMT -49
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef ALT_DIGITS
# define ALT_DIGITS -50
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef RADIXCHAR
# define RADIXCHAR -51
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef THOUSEP
# define THOUSEP -52
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef YESEXPR
# define YESEXPR -53
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef YESSTR
# define YESSTR -54
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef NOEXPR
# define NOEXPR -55
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef NOSTR
# define NOSTR -56
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#ifndef CRNCYSTR
# define CRNCYSTR -57
# define HAS_MISSING_LANGINFO_ITEM_
#endif
/* The rest of the items are gnu extensions, and are not #defined by its
* langinfo.h. There is a slight possibility that one of these numbers could
* conflict with some other value, in which case after much gnashing of teeth
* you will find this comment, and end up having to adjust the numbers. But
* glibc values are not (so far) negative.
*
* Android is special in that it doesn't define any of these, but has the
* corresponding category */
#if defined(__ANDROID__) || ! defined(HAS_NL_LANGINFO) || ! defined(LC_ADDRESS)
# define _NL_ADDRESS_POSTAL_FMT -58
# define _NL_ADDRESS_COUNTRY_NAME -59
# define _NL_ADDRESS_COUNTRY_POST -60
# define _NL_ADDRESS_COUNTRY_AB2 -61
# define _NL_ADDRESS_COUNTRY_AB3 -62
# define _NL_ADDRESS_COUNTRY_CAR -63
# define _NL_ADDRESS_COUNTRY_NUM -64
# define _NL_ADDRESS_COUNTRY_ISBN -65
# define _NL_ADDRESS_LANG_NAME -66
# define _NL_ADDRESS_LANG_AB -67
# define _NL_ADDRESS_LANG_TERM -68
# define _NL_ADDRESS_LANG_LIB -69
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#if defined(__ANDROID__) || ! defined(HAS_NL_LANGINFO) || ! defined(LC_IDENTIFICATION)
# define _NL_IDENTIFICATION_TITLE -70
# define _NL_IDENTIFICATION_SOURCE -71
# define _NL_IDENTIFICATION_ADDRESS -72
# define _NL_IDENTIFICATION_CONTACT -73
# define _NL_IDENTIFICATION_EMAIL -74
# define _NL_IDENTIFICATION_TEL -75
# define _NL_IDENTIFICATION_FAX -76
# define _NL_IDENTIFICATION_LANGUAGE -77
# define _NL_IDENTIFICATION_TERRITORY -78
# define _NL_IDENTIFICATION_AUDIENCE -79
# define _NL_IDENTIFICATION_APPLICATION -80
# define _NL_IDENTIFICATION_ABBREVIATION -81
# define _NL_IDENTIFICATION_REVISION -82
# define _NL_IDENTIFICATION_DATE -83
# define _NL_IDENTIFICATION_CATEGORY -84
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#if defined(__ANDROID__) || ! defined(HAS_NL_LANGINFO) || ! defined(LC_MEASUREMENT)
# define _NL_MEASUREMENT_MEASUREMENT -85
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#if defined(__ANDROID__) || ! defined(HAS_NL_LANGINFO) || ! defined(LC_NAME)
# define _NL_NAME_NAME_FMT -86
# define _NL_NAME_NAME_GEN -87
# define _NL_NAME_NAME_MR -88
# define _NL_NAME_NAME_MRS -89
# define _NL_NAME_NAME_MISS -90
# define _NL_NAME_NAME_MS -91
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#if defined(__ANDROID__) || ! defined(HAS_NL_LANGINFO) || ! defined(LC_PAPER)
# define _NL_PAPER_HEIGHT -92
# define _NL_PAPER_WIDTH -93
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#if defined(__ANDROID__) || ! defined(HAS_NL_LANGINFO) || ! defined(LC_TELEPHONE)
# define _NL_TELEPHONE_TEL_INT_FMT -94
# define _NL_TELEPHONE_TEL_DOM_FMT -95
# define _NL_TELEPHONE_INT_SELECT -96
# define _NL_TELEPHONE_INT_PREFIX -97
# define HAS_MISSING_LANGINFO_ITEM_
#endif
/* All these categories have to be emulated if not available on the platform */
#if ! LC_CTYPE_AVAIL_ \
|| ! LC_MESSAGES_AVAIL_ \
|| ! LC_MONETARY_AVAIL_ \
|| ! LC_NUMERIC_AVAIL_ \
|| ! LC_TIME_AVAIL_ \
|| ! LC_ADDRESS_AVAIL_ \
|| ! LC_IDENTIFICATION_AVAIL_ \
|| ! LC_MEASUREMENT_AVAIL_ \
|| ! LC_NAME_AVAIL_ \
|| ! LC_PAPER_AVAIL_ \
|| ! LC_TELEPHONE_AVAIL_
# define HAS_MISSING_LANGINFO_ITEM_
#endif
#endif /* PERL_LANGINFO_H */
|