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 2003 Sun Microsystems, Inc.  All rights reserved.
24 * Use is subject to license terms.
25 */
26
27/*	Copyright (c) 1988 AT&T	*/
28/*	  All Rights Reserved  	*/
29
30
31#ifndef	_LANGINFO_H
32#define	_LANGINFO_H
33
34#pragma ident	"%Z%%M%	%I%	%E% SMI"	/* SVr4.0 1.2	*/
35
36#include <sys/feature_tests.h>
37#include <nl_types.h>
38
39#ifdef	__cplusplus
40extern "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#if defined(__STDC__)
148char   *nl_langinfo(nl_item);	/* get a string from the database	*/
149#else
150char   *nl_langinfo();		/* get a string from the database	*/
151#endif
152
153#ifdef	__cplusplus
154}
155#endif
156
157#endif	/* _LANGINFO_H */
158