summaryrefslogtreecommitdiffstats
path: root/mdk-stage1/dietlibc/include/locale.h
diff options
context:
space:
mode:
Diffstat (limited to 'mdk-stage1/dietlibc/include/locale.h')
-rw-r--r--mdk-stage1/dietlibc/include/locale.h86
1 files changed, 82 insertions, 4 deletions
diff --git a/mdk-stage1/dietlibc/include/locale.h b/mdk-stage1/dietlibc/include/locale.h
index acbeec8c1..5cd002019 100644
--- a/mdk-stage1/dietlibc/include/locale.h
+++ b/mdk-stage1/dietlibc/include/locale.h
@@ -1,6 +1,84 @@
-#warning "there is no locale support for diet libc yet"
+#ifndef _LOCALE_H
+#define _LOCALE_H
-#define setlocale(a,b) 0
-#define bindtextdomain
-#define textdomain
+#include <sys/cdefs.h>
+enum {
+ LC_CTYPE = 0,
+ LC_NUMERIC = 1,
+ LC_TIME = 2,
+ LC_COLLATE = 3,
+ LC_MONETARY = 4,
+ LC_MESSAGES = 5,
+ LC_ALL = 6,
+ LC_PAPER = 7,
+ LC_NAME = 8,
+ LC_ADDRESS = 9,
+ LC_TELEPHONE = 10,
+ LC_MEASUREMENT = 11,
+ LC_IDENTIFICATION = 12
+};
+
+/* Structure giving information about numeric and monetary notation. */
+struct lconv {
+ /* Numeric (non-monetary) information. */
+ char *decimal_point;
+ char *thousands_sep;
+ /* Each element is the number of digits in each group;
+ elements with higher indices are farther left.
+ An element with value CHAR_MAX means that no further grouping is done.
+ An element with value 0 means that the previous element is used
+ for all groups farther left. */
+ char *grouping;
+
+ /* Monetary information. */
+
+ /* First three chars are a currency symbol from ISO 4217.
+ Fourth char is the separator. Fifth char is '\0'. */
+ char *int_curr_symbol;
+ char *currency_symbol; /* Local currency symbol. */
+ char *mon_decimal_point; /* Decimal point character. */
+ char *mon_thousands_sep; /* Thousands separator. */
+ char *mon_grouping; /* Like `grouping' element (above). */
+ char *positive_sign; /* Sign for positive values. */
+ char *negative_sign; /* Sign for negative values. */
+ char int_frac_digits; /* Int'l fractional digits. */
+ char frac_digits; /* Local fractional digits. */
+ /* 1 if currency_symbol precedes a positive value, 0 if succeeds. */
+ char p_cs_precedes;
+ /* 1 iff a space separates currency_symbol from a positive value. */
+ char p_sep_by_space;
+ /* 1 if currency_symbol precedes a negative value, 0 if succeeds. */
+ char n_cs_precedes;
+ /* 1 iff a space separates currency_symbol from a negative value. */
+ char n_sep_by_space;
+ /* Positive and negative sign positions:
+ 0 Parentheses surround the quantity and currency_symbol.
+ 1 The sign string precedes the quantity and currency_symbol.
+ 2 The sign string follows the quantity and currency_symbol.
+ 3 The sign string immediately precedes the currency_symbol.
+ 4 The sign string immediately follows the currency_symbol. */
+ char p_sign_posn;
+ char n_sign_posn;
+ /* 1 if int_curr_symbol precedes a positive value, 0 if succeeds. */
+ char int_p_cs_precedes;
+ /* 1 iff a space separates int_curr_symbol from a positive value. */
+ char int_p_sep_by_space;
+ /* 1 if int_curr_symbol precedes a negative value, 0 if succeeds. */
+ char int_n_cs_precedes;
+ /* 1 iff a space separates int_curr_symbol from a negative value. */
+ char int_n_sep_by_space;
+ /* Positive and negative sign positions:
+ 0 Parentheses surround the quantity and int_curr_symbol.
+ 1 The sign string precedes the quantity and int_curr_symbol.
+ 2 The sign string follows the quantity and int_curr_symbol.
+ 3 The sign string immediately precedes the int_curr_symbol.
+ 4 The sign string immediately follows the int_curr_symbol. */
+ char int_p_sign_posn;
+ char int_n_sign_posn;
+};
+
+char *setlocale (int category, const char *locale) __THROW;
+struct lconv *localeconv (void) __THROW;
+
+#endif