diff options
Diffstat (limited to 'iconvdata')
-rw-r--r-- | iconvdata/Makefile | 6 | ||||
-rw-r--r-- | iconvdata/TESTS | 1 | ||||
-rw-r--r-- | iconvdata/gconv-modules | 4 | ||||
-rw-r--r-- | iconvdata/mik.c | 32 | ||||
-rw-r--r-- | iconvdata/testdata/MIK | 14 | ||||
-rw-r--r-- | iconvdata/testdata/MIK..UTF8 | 14 | ||||
-rwxr-xr-x | iconvdata/tst-tables.sh | 1 | ||||
-rw-r--r-- | iconvdata/utf-7.c | 8 |
8 files changed, 73 insertions, 7 deletions
diff --git a/iconvdata/Makefile b/iconvdata/Makefile index 1d3259179a..c7d5801c6c 100644 --- a/iconvdata/Makefile +++ b/iconvdata/Makefile @@ -58,7 +58,7 @@ modules := ISO8859-1 ISO8859-2 ISO8859-3 ISO8859-4 ISO8859-5 \ IBM1142 IBM1143 IBM1144 IBM1145 IBM1146 IBM1147 IBM1148 \ IBM1149 IBM1166 IBM1167 IBM4517 IBM4899 IBM4909 IBM4971 \ IBM5347 IBM9030 IBM9066 IBM9448 IBM12712 IBM16804 \ - IBM1364 IBM1371 IBM1388 IBM1390 IBM1399 ISO_11548-1 + IBM1364 IBM1371 IBM1388 IBM1390 IBM1399 ISO_11548-1 MIK modules.so := $(addsuffix .so, $(modules)) @@ -196,7 +196,7 @@ distribute := gconv-modules extra-module.mk gap.awk gaptab.awk gconv.map \ ibm9030.c ibm9030.h ibm9066.c ibm9066.h ibm9448.c ibm9448.h \ ibm12712.c ibm12712.h ibm16804.c ibm16804.h \ ibm1364.c ibm1364.h ibm1371.c ibm1371.h ibm1388.c ibm1388.h \ - ibm1390.c ibm1390.h ibm1399.c ibm1399.h iso_11548-1.c + ibm1390.c ibm1390.h ibm1399.c ibm1399.h iso_11548-1.c mik.c # We build the transformation modules only when we build shared libs. ifeq (yes,$(build-shared)) @@ -237,7 +237,7 @@ gen-8bit-gap-modules := koi8-r latin-greek latin-greek-1 ibm256 ibm273 \ iso8859-13 iso8859-14 iso8859-15 mac-uk sami-ws2 \ iso-ir-197 tis-620 koi8-u ibm874 cp10007 koi8-t \ georgian-ps georgian-academy iso-ir-209 mac-sami \ - iso8859-11 ibm866nav pt154 rk1048 + iso8859-11 ibm866nav pt154 rk1048 mik gen-special-modules := iso8859-7jp diff --git a/iconvdata/TESTS b/iconvdata/TESTS index 933c447096..b70e5051f0 100644 --- a/iconvdata/TESTS +++ b/iconvdata/TESTS @@ -165,3 +165,4 @@ IBM1388 IBM1388 N UTF8 IBM1390 IBM1390 N UTF8 IBM1399 IBM1399 N UTF8 ISO_11548-1 ISO_11548-1 - UTF8 +MIK MIK Y UTF8 diff --git a/iconvdata/gconv-modules b/iconvdata/gconv-modules index 421dc6739a..852c7b94a6 100644 --- a/iconvdata/gconv-modules +++ b/iconvdata/gconv-modules @@ -1903,3 +1903,7 @@ alias ISO/TR_11548-1/ ISO_11548-1// alias ISO11548-1// ISO_11548-1// module ISO_11548-1// INTERNAL ISO_11548-1 1 module INTERNAL ISO_11548-1// ISO_11548-1 1 + +# from to module cost +module MIK// INTERNAL MIK 1 +module INTERNAL MIK// MIK 1 diff --git a/iconvdata/mik.c b/iconvdata/mik.c new file mode 100644 index 0000000000..00a7fb3b7b --- /dev/null +++ b/iconvdata/mik.c @@ -0,0 +1,32 @@ +/* Conversion from and to MIK. + Copyright (C) 2006 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Alexander Shopov <ash@contact.bg>, 2006. + + 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, write to the Free + Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. */ + +#include <stdint.h> + +/* Get the conversion table. */ +#define TABLES <mik.h> + +#define CHARSET_NAME "MIK//" +#define HAS_HOLES 0 /* All 256 character are defined. */ + +#include <8bit-gap.c> + + + diff --git a/iconvdata/testdata/MIK b/iconvdata/testdata/MIK new file mode 100644 index 0000000000..9ae8d00969 --- /dev/null +++ b/iconvdata/testdata/MIK @@ -0,0 +1,14 @@ + ! " # $ % & ' ( ) * + , - . / +0 1 2 3 4 5 6 7 8 9 : ; < = > ? +@ A B C D E F G H I J K L M N O +P Q R S T U V W X Y Z [ \ ] ^ _ +` a b c d e f g h i j k l m n o +p q r s t u v w x y z { | } ~ + + + + + + + + diff --git a/iconvdata/testdata/MIK..UTF8 b/iconvdata/testdata/MIK..UTF8 new file mode 100644 index 0000000000..d47d5590ec --- /dev/null +++ b/iconvdata/testdata/MIK..UTF8 @@ -0,0 +1,14 @@ + ! " # $ % & ' ( ) * + , - . / +0 1 2 3 4 5 6 7 8 9 : ; < = > ? +@ A B C D E F G H I J K L M N O +P Q R S T U V W X Y Z [ \ ] ^ _ +` a b c d e f g h i j k l m n o +p q r s t u v w x y z { | } ~ +А Б В Г Д Е Ж З И Й К Л М Н О П +Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я +а б в г д е ж з и й к л м н о п +р с т у ф х ц ч ш щ ъ ы ь э ю я +└ ┴ ┬ ├ ─ ┼ ╣ ║ ╚ ╔ ╩ ╦ ╠ ═ ╬ ┐ +░ ▒ ▓ │ ┤ № § ╗ ╝ ┘ ┌ █ ▄ ▌ ▐ ▀ +α ß Γ π Σ σ µ τ Φ Θ Ω δ ∞ φ ε ∩ +≡ ± ≥ ≤ ⌠ ⌡ ÷ ≈ ° ∙ · √ ⁿ ² ■ diff --git a/iconvdata/tst-tables.sh b/iconvdata/tst-tables.sh index 2c1c9d04d9..506adbcd7c 100755 --- a/iconvdata/tst-tables.sh +++ b/iconvdata/tst-tables.sh @@ -207,6 +207,7 @@ cat <<EOF | TSCII PT154 RK1048 + MIK # # Multibyte encodings come here # diff --git a/iconvdata/utf-7.c b/iconvdata/utf-7.c index 6943833a67..b58b11fdcb 100644 --- a/iconvdata/utf-7.c +++ b/iconvdata/utf-7.c @@ -44,7 +44,7 @@ A-Z a-z 0-9 ' ( ) , - . / : ? space tab lf cr */ -static const unsigned char direct_tab[128/8] = +static const unsigned char direct_tab[128 / 8] = { 0x00, 0x26, 0x00, 0x00, 0x81, 0xf3, 0xff, 0x87, 0xfe, 0xff, 0xff, 0x07, 0xfe, 0xff, 0xff, 0x07 @@ -62,7 +62,7 @@ isdirect (uint32_t ch) ! " # $ % & * ; < = > @ [ ] ^ _ ` { | } */ -static const unsigned char xdirect_tab[128/8] = +static const unsigned char xdirect_tab[128 / 8] = { 0x00, 0x26, 0x00, 0x00, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0x3f @@ -79,7 +79,7 @@ isxdirect (uint32_t ch) A-Z a-z 0-9 + / - */ -static const unsigned char xbase64_tab[128/8] = +static const unsigned char xbase64_tab[128 / 8] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0xff, 0x03, 0xfe, 0xff, 0xff, 0x07, 0xfe, 0xff, 0xff, 0x07 @@ -170,7 +170,7 @@ base64 (unsigned int i) } \ else if (__builtin_expect (ch == '+', 1)) \ { \ - if (__builtin_expect (inptr + 2 >= inend, 0)) \ + if (__builtin_expect (inptr + 2 > inend, 0)) \ { \ /* Not enough input available. */ \ result = __GCONV_INCOMPLETE_INPUT; \ |