From 799c8d6905433ad56f26ccab4855b36f1d1ddbfc Mon Sep 17 00:00:00 2001 From: Mike FABIAN Date: Thu, 7 Sep 2017 15:28:28 +0200 Subject: Add new codepage charmaps/IBM858 [BZ #21084] MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This code page is identical to code page 850 except that X'D5' has been changed from LI61 (dotless i) to SC20 (euro symbol). The code points from /x01 to /x1f in the /localedata/charmaps/IBM858 file have the same mapping as those in localedata/charmaps/ANSI_X3.4-1968. That means they disagree with with ftp://ftp.software.ibm.com/software/globalization/gcoc/attachments/CP00858.txt in that range. For example, localedata/charmaps/IBM858 and localedata/charmaps/ANSI_X3.4-1968 have: “ /x01 START OF HEADING (SOH)” whereas CP00858.txt has: “01 SS000000 Smiling Face” That means that CP00858.txt is not really ASCII-compatible and to make it ASCII-compatible we deviate fro CP00858.txt in the code points from /x01 to /x1f. [BZ #21084] * benchtests/strcoll-inputs/filelist#en_US.UTF-8: Add IBM858 and ibm858.c. * iconvdata/Makefile: Add IBM858. * iconvdata/gconv-modules: Add IBM858. * iconvdata/ibm858.c: New file. * iconvdata/tst-tables.sh: Add IBM858 * localedata/charmaps/IBM858: New file. --- iconvdata/Makefile | 16 ++++++++-------- iconvdata/gconv-modules | 7 +++++++ iconvdata/ibm858.c | 27 +++++++++++++++++++++++++++ iconvdata/tst-tables.sh | 1 + 4 files changed, 43 insertions(+), 8 deletions(-) create mode 100644 iconvdata/ibm858.c (limited to 'iconvdata') diff --git a/iconvdata/Makefile b/iconvdata/Makefile index a0e297e..504d195 100644 --- a/iconvdata/Makefile +++ b/iconvdata/Makefile @@ -36,9 +36,9 @@ modules := ISO8859-1 ISO8859-2 ISO8859-3 ISO8859-4 ISO8859-5 \ IBM874 CP737 CP775 ISO-2022-KR HP-TURKISH8 HP-THAI8 HP-GREEK8 \ KOI8-R LATIN-GREEK LATIN-GREEK-1 IBM256 IBM273 IBM277 IBM278 \ IBM280 IBM281 IBM284 IBM285 IBM290 IBM297 IBM420 IBM424 \ - IBM437 IBM850 IBM851 IBM852 IBM855 IBM857 IBM860 IBM861 \ - IBM862 IBM863 IBM864 IBM865 IBM868 IBM869 IBM875 IBM880 \ - IBM866 CP1258 IBM922 IBM1124 IBM1129 IBM932 IBM943 \ + IBM437 IBM850 IBM851 IBM852 IBM855 IBM857 IBM858 IBM860 \ + IBM861 IBM862 IBM863 IBM864 IBM865 IBM868 IBM869 IBM875 \ + IBM880 IBM866 CP1258 IBM922 IBM1124 IBM1129 IBM932 IBM943 \ IBM856 IBM930 IBM933 IBM935 IBM937 IBM939 IBM1046 \ IBM1132 IBM1133 IBM1160 IBM1161 IBM1162 IBM1163 IBM1164 \ IBM918 IBM1004 IBM1026 CP1125 CP1250 CP1251 CP1252 CP1253 \ @@ -153,11 +153,11 @@ gen-8bit-modules := iso8859-2 iso8859-3 iso8859-4 iso8859-6 iso8859-9 koi-8 \ gen-8bit-gap-modules := koi8-r latin-greek latin-greek-1 ibm256 ibm273 \ ibm277 ibm278 ibm280 ibm281 ibm284 ibm285 ibm290 \ ibm297 ibm420 ibm424 ibm437 ibm850 ibm851 ibm852 \ - ibm855 ibm857 ibm860 ibm861 ibm862 ibm863 ibm864 \ - ibm865 ibm868 ibm869 ibm875 ibm880 ibm918 ibm1004 \ - ibm1026 cp1125 cp1250 cp1251 cp1252 cp1253 cp1254 \ - cp1256 cp1257 ibm866 iso8859-5 iso8859-7 iso8859-8 \ - iso8859-10 macintosh iec_p27-1 asmo_449 \ + ibm855 ibm857 ibm858 ibm860 ibm861 ibm862 ibm863 \ + ibm864 ibm865 ibm868 ibm869 ibm875 ibm880 ibm918 \ + ibm1004 ibm1026 cp1125 cp1250 cp1251 cp1252 cp1253 \ + cp1254 cp1256 cp1257 ibm866 iso8859-5 iso8859-7 \ + iso8859-8 iso8859-10 macintosh iec_p27-1 asmo_449 \ csn_369103 cwi dec-mcs ecma-cyrillic gost_19768-74 \ greek-ccitt greek7 greek7-old inis inis-8 \ inis-cyrillic iso_2033 iso_5427 iso_5427-ext \ diff --git a/iconvdata/gconv-modules b/iconvdata/gconv-modules index 19bec0c..1c48bc3 100644 --- a/iconvdata/gconv-modules +++ b/iconvdata/gconv-modules @@ -744,6 +744,13 @@ module IBM850// INTERNAL IBM850 1 module INTERNAL IBM850// IBM850 1 # from to module cost +alias CP858// IBM858// +alias 858// IBM858// +alias CSPC858MULTILINGUAL// IBM858// +module IBM858// INTERNAL IBM858 1 +module INTERNAL IBM858// IBM858 1 + +# from to module cost alias CP851// IBM851// alias 851// IBM851// alias CSIBM851// IBM851// diff --git a/iconvdata/ibm858.c b/iconvdata/ibm858.c new file mode 100644 index 0000000..ed2a48e --- /dev/null +++ b/iconvdata/ibm858.c @@ -0,0 +1,27 @@ +/* Conversion from and to IBM858. + Copyright (C) 2017 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 + . */ + +#include + +/* Get the conversion table. */ +#define TABLES + +#define CHARSET_NAME "IBM858//" +#define HAS_HOLES 1 /* Not all 256 character are defined. */ + +#include <8bit-gap.c> diff --git a/iconvdata/tst-tables.sh b/iconvdata/tst-tables.sh index a027f5d..77338f0 100755 --- a/iconvdata/tst-tables.sh +++ b/iconvdata/tst-tables.sh @@ -125,6 +125,7 @@ cat <