]> git.ipfire.org Git - thirdparty/glibc.git/blobdiff - locale/C-collate.c
Add 'codepoint_collation' support for LC_COLLATE.
[thirdparty/glibc.git] / locale / C-collate.c
index 7211eb1498793a8ff77f858bfc8a9bb08d467c7b..bc93819f32a55f98dabf6730f572e95a331455d5 100644 (file)
@@ -1,13 +1,72 @@
-/* Generated by GNU locale 0.1.
-   Copyright (C) 1995 Free Software Foundation, Inc.
-This is free software; see the source for copying conditions.
-There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
-PARTICULAR PURPOSE.  */
+/* Copyright (C) 1995-2021 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
 
+   The GNU C Library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Lesser General Public
+   License as published by the Free Software Foundation; either
+   version 2.1 of the License, or (at your option) any later version.
+
+   The GNU C Library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Lesser General Public License for more details.
+
+   You should have received a copy of the GNU Lesser General Public
+   License along with the GNU C Library; if not, see
+   <https://www.gnu.org/licenses/>.  */
+
+#include <endian.h>
+#include <stdint.h>
 #include "localeinfo.h"
 
-const struct locale_data _nl_C_LC_COLLATE =
+#include "C-collate-seq.c"
+
+const struct __locale_data _nl_C_LC_COLLATE attribute_hidden =
 {
-  NULL, 0, /* no file mapped */
+  _nl_C_name,
+  NULL, 0, 0,                  /* no file mapped */
+  { NULL, },                   /* no cached data */
+  UNDELETABLE,
   0,
+  19,
+  {
+    /* _NL_COLLATE_NRULES */
+    { .word = 0 },
+    /* _NL_COLLATE_RULESETS */
+    { .string = NULL },
+    /* _NL_COLLATE_TABLEMB */
+    { .string = NULL },
+    /* _NL_COLLATE_WEIGHTMB */
+    { .string = NULL },
+    /* _NL_COLLATE_EXTRAMB */
+    { .string = NULL },
+    /* _NL_COLLATE_INDIRECTMB */
+    { .string = NULL },
+    /* _NL_COLLATE_GAP1 */
+    { .string = NULL },
+    /* _NL_COLLATE_GAP2 */
+    { .string = NULL },
+    /* _NL_COLLATE_GAP3 */
+    { .string = NULL },
+    /* _NL_COLLATE_TABLEWC */
+    { .string = NULL },
+    /* _NL_COLLATE_WEIGHTWC */
+    { .string = NULL },
+    /* _NL_COLLATE_EXTRAWC */
+    { .string = NULL },
+    /* _NL_COLLATE_INDIRECTWC */
+    { .string = NULL },
+    /* _NL_COLLATE_SYMB_HASH_SIZEMB */
+    { .string = NULL },
+    /* _NL_COLLATE_SYMB_TABLEMB */
+    { .string = NULL },
+    /* _NL_COLLATE_SYMB_EXTRAMB */
+    { .string = NULL },
+    /* _NL_COLLATE_COLLSEQMB */
+    { .string = collseqmb },
+    /* _NL_COLLATE_COLLSEQWC */
+    { .string = (const char *) collseqwc },
+    /* _NL_COLLATE_CODESET */
+    { .string = _nl_C_codeset }
+  }
 };