1 /* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License, Version 1.0 only 6 * (the "License"). You may not use this file except in compliance 7 * with the License. 8 * 9 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10 * or http://www.opensolaris.org/os/licensing. 11 * See the License for the specific language governing permissions 12 * and limitations under the License. 13 * 14 * When distributing Covered Code, include this CDDL HEADER in each 15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16 * If applicable, add the following below this CDDL HEADER, with the 17 * fields enclosed by brackets "[]" replaced with your own identifying 18 * information: Portions Copyright [yyyy] [name of copyright owner] 19 * 20 * CDDL HEADER END 21 */ 22 /* 23 * Copyright 2014 Garrett D'Amore <garrett@damore.org> 24 * 25 * Copyright 2003 Sun Microsystems, Inc. All rights reserved. 26 * Use is subject to license terms. 27 */ 28 29 /* Copyright (c) 1988 AT&T */ 30 /* All Rights Reserved */ 31 32 33 #ifndef _LANGINFO_H 34 #define _LANGINFO_H 35 36 #include <sys/feature_tests.h> 37 #include <nl_types.h> 38 39 #ifdef __cplusplus 40 extern "C" { 41 #endif 42 43 /* 44 * The seven days of the week in their full beauty 45 */ 46 47 #define DAY_1 1 /* sunday */ 48 #define DAY_2 2 /* monday */ 49 #define DAY_3 3 /* tuesday */ 50 #define DAY_4 4 /* wednesday */ 51 #define DAY_5 5 /* thursday */ 52 #define DAY_6 6 /* friday */ 53 #define DAY_7 7 /* saturday */ 54 55 /* 56 * The abbreviated seven days of the week 57 */ 58 59 #define ABDAY_1 8 /* sun */ 60 #define ABDAY_2 9 /* mon */ 61 #define ABDAY_3 10 /* tue */ 62 #define ABDAY_4 11 /* wed */ 63 #define ABDAY_5 12 /* thu */ 64 #define ABDAY_6 13 /* fri */ 65 #define ABDAY_7 14 /* sat */ 66 67 /* 68 * The full names of the twelve months... 69 */ 70 71 #define MON_1 15 /* january */ 72 #define MON_2 16 /* february */ 73 #define MON_3 17 /* march */ 74 #define MON_4 18 /* april */ 75 #define MON_5 19 /* may */ 76 #define MON_6 20 /* june */ 77 #define MON_7 21 /* july */ 78 #define MON_8 22 /* august */ 79 #define MON_9 23 /* september */ 80 #define MON_10 24 /* october */ 81 #define MON_11 25 /* november */ 82 #define MON_12 26 /* december */ 83 84 /* 85 * ... and their abbreviated form 86 */ 87 88 #define ABMON_1 27 /* jan */ 89 #define ABMON_2 28 /* feb */ 90 #define ABMON_3 29 /* mar */ 91 #define ABMON_4 30 /* apr */ 92 #define ABMON_5 31 /* may */ 93 #define ABMON_6 32 /* jun */ 94 #define ABMON_7 33 /* jul */ 95 #define ABMON_8 34 /* aug */ 96 #define ABMON_9 35 /* sep */ 97 #define ABMON_10 36 /* oct */ 98 #define ABMON_11 37 /* nov */ 99 #define ABMON_12 38 /* dec */ 100 101 /* 102 * plus some special strings you might need to know 103 */ 104 105 #define RADIXCHAR 39 /* radix character */ 106 #define THOUSEP 40 /* separator for thousand */ 107 /* YESSTR and NOSTR marked as legacy in XPG5 and removed in SUSv3 */ 108 #if !defined(_XPG6) || defined(__EXTENSIONS__) 109 #define YESSTR 41 /* affirmative response for yes/no queries */ 110 #define NOSTR 42 /* negative response for yes/no queries */ 111 #endif /* !defined(_XPG6) || defined(__EXTENSIONS__ */ 112 #define CRNCYSTR 43 /* currency symbol */ 113 114 /* 115 * Default string used to format date and time 116 * e.g. Sunday, August 24 21:08:38 MET 1986 117 */ 118 119 #define D_T_FMT 44 /* string for formatting date and time */ 120 #define D_FMT 45 /* date format */ 121 #define T_FMT 46 /* time format */ 122 #define AM_STR 47 /* am string */ 123 #define PM_STR 48 /* pm string */ 124 125 /* 126 * Additions for XPG4 (XSH4) Compliance 127 */ 128 129 #define CODESET 49 /* codeset name */ 130 #define T_FMT_AMPM 50 /* am or pm time format string */ 131 #define ERA 51 /* era description segments */ 132 #define ERA_D_FMT 52 /* era date format string */ 133 #define ERA_D_T_FMT 53 /* era date and time format string */ 134 #define ERA_T_FMT 54 /* era time format string */ 135 #define ALT_DIGITS 55 /* alternative symbols for digits */ 136 #define YESEXPR 56 /* affirmative response expression */ 137 #define NOEXPR 57 /* negative response expression */ 138 #define _DATE_FMT 58 /* strftime format for date(1) */ 139 140 #if defined(__EXTENSIONS__) || !defined(_XOPEN_SOURCE) 141 #define MAXSTRMSG 58 /* Maximum number of strings in langinfo */ 142 #endif /* defined(__EXTENSIONS__) || !defined(_XOPEN_SOURCE) */ 143 144 /* 145 * and the definitions of functions langinfo(3C) 146 */ 147 char *nl_langinfo(nl_item); /* get a string from the database */ 148 149 #if defined(_XPG7) || !defined(_STRICT_SYMBOLS) 150 #ifndef _LOCALE_T 151 #define _LOCALE_T 152 typedef struct _locale *locale_t; 153 #endif 154 155 char *nl_langinfo_l(nl_item, locale_t); 156 #endif 157 158 #ifdef __cplusplus 159 } 160 #endif 161 162 #endif /* _LANGINFO_H */