summary refs log tree commit diff
path: root/iconvdata
diff options
context:
space:
mode:
Diffstat (limited to 'iconvdata')
-rw-r--r--iconvdata/Makefile26
-rw-r--r--iconvdata/bug-iconv6.c52
-rw-r--r--iconvdata/ebcdic-es-a.c8
-rw-r--r--iconvdata/ebcdic-es.c8
-rw-r--r--iconvdata/ebcdic-is-friss.c8
-rw-r--r--iconvdata/ebcdic-uk.c8
-rw-r--r--iconvdata/gconv-modules26
-rw-r--r--iconvdata/hp-greek8.c29
-rw-r--r--iconvdata/hp-roman8.c8
-rw-r--r--iconvdata/hp-roman9.c29
-rw-r--r--iconvdata/hp-thai8.c29
-rw-r--r--iconvdata/hp-turkish8.c29
-rw-r--r--iconvdata/iso8859-16.c9
-rw-r--r--iconvdata/iso8859-9e.c7
-rwxr-xr-xiconvdata/tst-tables.sh4
-rw-r--r--iconvdata/viscii.c9
16 files changed, 246 insertions, 43 deletions
diff --git a/iconvdata/Makefile b/iconvdata/Makefile
index bf52d52f8f..4ac5de30e5 100644
--- a/iconvdata/Makefile
+++ b/iconvdata/Makefile
@@ -25,14 +25,14 @@ subdir	:= iconvdata
 modules	:= ISO8859-1 ISO8859-2 ISO8859-3 ISO8859-4 ISO8859-5		 \
 	   ISO8859-6 ISO8859-7 ISO8859-8 ISO8859-9 ISO8859-10		 \
 	   ISO8859-11 ISO8859-13 ISO8859-14 ISO8859-15 ISO8859-16	 \
-	   T.61 ISO_6937 SJIS KOI-8 HP-ROMAN8 EBCDIC-AT-DE		 \
+	   T.61 ISO_6937 SJIS KOI-8 HP-ROMAN8 HP-ROMAN9 EBCDIC-AT-DE	 \
 	   EBCDIC-AT-DE-A EBCDIC-CA-FR EUC-KR UHC JOHAB libJIS libKSC	 \
 	   BIG5 EUC-JP libGB EUC-CN libCNS EUC-TW ISO646 EBCDIC-DK-NO	 \
 	   EBCDIC-DK-NO-A EBCDIC-ES EBCDIC-ES-A EBCDIC-ES-S EBCDIC-FI-SE \
 	   EBCDIC-FI-SE-A EBCDIC-FR EBCDIC-IS-FRISS EBCDIC-IT EBCDIC-PT	 \
 	   EBCDIC-UK EBCDIC-US IBM037 IBM038 IBM274 IBM275 IBM423	 \
 	   IBM500 IBM870 IBM871 IBM891 IBM903 IBM904 IBM905 IBM1047	 \
-	   IBM874 CP737 CP775 ISO-2022-KR				 \
+	   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	 \
@@ -67,7 +67,7 @@ include ../Makeconfig
 
 ifeq (yes,$(build-shared))
 tests = bug-iconv1 bug-iconv2 tst-loading tst-e2big tst-iconv4 bug-iconv4 \
-	tst-iconv6 bug-iconv5
+	tst-iconv6 bug-iconv5 bug-iconv6
 ifeq ($(have-thread-library),yes)
 tests += bug-iconv3
 endif
@@ -198,7 +198,8 @@ distribute := gconv-modules extra-module.mk gap.awk gaptab.awk gconv.map    \
 	      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 mik.c   \
-	      brf.c mac-centraleurope.c
+	      brf.c mac-centraleurope.c hp-roman9.c hp-turkish8.c	    \
+	      hp-thai8.c hp-greek8.c
 
 # We build the transformation modules only when we build shared libs.
 ifeq (yes,$(build-shared))
@@ -217,13 +218,11 @@ install-others	= $(addprefix $(inst_gconvdir)/, $(modules.so))	\
 # We can build the conversion tables for numerous charsets automatically.
 
 gen-8bit-modules := iso8859-2 iso8859-3 iso8859-4 iso8859-6 iso8859-9 koi-8 \
-		    hp-roman8 ebcdic-at-de ebcdic-at-de-a ebcdic-ca-fr	    \
-		    ebcdic-dk-no ebcdic-dk-no-a ebcdic-es ebcdic-es-a	    \
-		    ebcdic-es-s ebcdic-fi-se ebcdic-fi-se-a ebcdic-fr	    \
-		    ebcdic-is-friss ebcdic-it ebcdic-pt ebcdic-uk ebcdic-us \
+		    ebcdic-at-de ebcdic-at-de-a ebcdic-ca-fr ebcdic-dk-no   \
+		    ebcdic-dk-no-a ebcdic-es-s ebcdic-fi-se ebcdic-fi-se-a  \
+		    ebcdic-fr ebcdic-it ebcdic-pt ebcdic-us \
 		    ibm037 ibm038 ibm274 ibm275 ibm423 ibm500 ibm870 ibm871 \
-		    ibm891 ibm903 ibm904 ibm905 ibm1047 iso8859-16 viscii   \
-		    iso8859-9e
+		    ibm891 ibm903 ibm904 ibm905 ibm1047   \
 
 gen-8bit-gap-modules := koi8-r latin-greek latin-greek-1 ibm256 ibm273	   \
 			ibm277 ibm278 ibm280 ibm281 ibm284 ibm285 ibm290   \
@@ -240,8 +239,11 @@ 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 mik brf \
-			mac-centraleurope koi8-ru
+			iso8859-11 ibm866nav pt154 rk1048 mik brf	   \
+			mac-centraleurope koi8-ru hp-roman8 hp-roman9	   \
+			ebcdic-es ebcdic-es-a ebcdic-is-friss ebcdic-uk    \
+			iso8859-16 viscii iso8859-9e hp-turkish8	   \
+			hp-thai8 hp-greek8
 
 gen-special-modules := iso8859-7jp
 
diff --git a/iconvdata/bug-iconv6.c b/iconvdata/bug-iconv6.c
new file mode 100644
index 0000000000..f920954bc2
--- /dev/null
+++ b/iconvdata/bug-iconv6.c
@@ -0,0 +1,52 @@
+#include <string.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <errno.h>
+#include <iconv.h>
+#include <locale.h>
+
+static const char testbuf[] = {
+	0xEF, 0xBE, 0x9F, 0xD0, 0xB4, 0xEF, 0xBE, 0x9F, 0x29, 0xEF, 0xBE, 0x8E,
+	0xEF, 0xBE, 0x9F, 0xEF, 0xBD, 0xB6, 0xEF, 0xBD, 0xB0, 0xEF, 0xBE, 0x9D
+};
+
+static int
+do_test (void)
+{
+  setlocale (LC_ALL, "en_US.UTF-8");
+  iconv_t ic = iconv_open ("ISO-2022-JP//TRANSLIT", "UTF-8");
+  if (ic == (iconv_t) -1)
+    {
+      puts ("iconv_open failed");
+      return 1;
+    }
+  size_t outremain = sizeof testbuf;
+  char outbuf[outremain];
+  char *inp = (char *) testbuf;
+  char *outp = outbuf;
+  size_t inremain = sizeof testbuf;
+
+  int ret = iconv (ic, &inp, &inremain, &outp, &outremain);
+
+  int result = 0;
+  if (ret == (size_t) -1)
+    {
+      if (errno == E2BIG)
+	puts ("buffer too small reported.  OK");
+      else
+	{
+	  printf ("iconv failed with %d (%m)\n", errno);
+	  result = 0;
+	}
+    }
+  else
+    {
+      printf ("iconv returned %d\n", ret);
+      result = 1;
+    }
+
+  return result;
+}
+
+#define TEST_FUNCTION do_test ()
+#include "../test-skeleton.c"
diff --git a/iconvdata/ebcdic-es-a.c b/iconvdata/ebcdic-es-a.c
index ca8c980e6d..d056820cff 100644
--- a/iconvdata/ebcdic-es-a.c
+++ b/iconvdata/ebcdic-es-a.c
@@ -1,5 +1,5 @@
 /* Conversion from and to EBCDIC-ES-A.
-   Copyright (C) 1998 Free Software Foundation, Inc.
+   Copyright (C) 1998, 2007 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
 
@@ -20,10 +20,10 @@
 
 #include <stdint.h>
 
-/* Get the conversion table.  */
-#include <ebcdic-es-a.h>
+/* Specify the conversion table.  */
+#define TABLES <ebcdic-es-a.h>
 
 #define CHARSET_NAME	"EBCDIC-ES-A//"
 #define HAS_HOLES	1	/* Not all 256 character are defined.  */
 
-#include <8bit-generic.c>
+#include <8bit-gap.c>
diff --git a/iconvdata/ebcdic-es.c b/iconvdata/ebcdic-es.c
index 4b471452bb..bb447c0376 100644
--- a/iconvdata/ebcdic-es.c
+++ b/iconvdata/ebcdic-es.c
@@ -1,5 +1,5 @@
 /* Conversion from and to EBCDIC-ES.
-   Copyright (C) 1998 Free Software Foundation, Inc.
+   Copyright (C) 1998, 2007 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
 
@@ -20,10 +20,10 @@
 
 #include <stdint.h>
 
-/* Get the conversion table.  */
-#include <ebcdic-es.h>
+/* Specify the conversion table.  */
+#define TABLES <ebcdic-es.h>
 
 #define CHARSET_NAME	"EBCDIC-ES//"
 #define HAS_HOLES	1	/* Not all 256 character are defined.  */
 
-#include <8bit-generic.c>
+#include <8bit-gap.c>
diff --git a/iconvdata/ebcdic-is-friss.c b/iconvdata/ebcdic-is-friss.c
index cf9416f9ba..0a05ab2c9d 100644
--- a/iconvdata/ebcdic-is-friss.c
+++ b/iconvdata/ebcdic-is-friss.c
@@ -1,5 +1,5 @@
 /* Conversion from and to EBCDIC-IS-FRISS.
-   Copyright (C) 1998 Free Software Foundation, Inc.
+   Copyright (C) 1998, 2007 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
 
@@ -20,10 +20,10 @@
 
 #include <stdint.h>
 
-/* Get the conversion table.  */
-#include <ebcdic-is-friss.h>
+/* Specify the conversion table.  */
+#define TABLES <ebcdic-is-friss.h>
 
 #define CHARSET_NAME	"EBCDIC-IS-FRISS//"
 #define HAS_HOLES	1	/* Not all 256 character are defined.  */
 
-#include <8bit-generic.c>
+#include <8bit-gap.c>
diff --git a/iconvdata/ebcdic-uk.c b/iconvdata/ebcdic-uk.c
index 7137a80981..ea9ff705ae 100644
--- a/iconvdata/ebcdic-uk.c
+++ b/iconvdata/ebcdic-uk.c
@@ -1,5 +1,5 @@
 /* Conversion from and to EBCDIC-UK.
-   Copyright (C) 1998 Free Software Foundation, Inc.
+   Copyright (C) 1998, 2007 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
 
@@ -20,10 +20,10 @@
 
 #include <stdint.h>
 
-/* Get the conversion table.  */
-#include <ebcdic-uk.h>
+/* Specify the conversion table.  */
+#define TABLES <ebcdic-uk.h>
 
 #define CHARSET_NAME	"EBCDIC-UK//"
 #define HAS_HOLES	1	/* Not all 256 character are defined.  */
 
-#include <8bit-generic.c>
+#include <8bit-gap.c>
diff --git a/iconvdata/gconv-modules b/iconvdata/gconv-modules
index a8fcd8f0b3..a14dbbe9d6 100644
--- a/iconvdata/gconv-modules
+++ b/iconvdata/gconv-modules
@@ -1927,3 +1927,29 @@ alias	ISO8859-9E//		ISO-8859-9E//
 alias	ISO88599E//		ISO-8859-9E//
 module	ISO-8859-9E//		INTERNAL		ISO8859-9E	1
 module	INTERNAL		ISO-8859-9E//		ISO8859-9E	1
+
+#	from			to			module		cost
+alias	ROMAN9//		HP-ROMAN9//
+alias	R9//			HP-ROMAN9//
+alias	HPROMAN9//		HP-ROMAN9//
+module	HP-ROMAN9//		INTERNAL		HP-ROMAN9	1
+module	INTERNAL		HP-ROMAN9//		HP-ROMAN9	1
+
+#	from			to			module		cost
+alias	TURKISH8//		HP-TURKISH8//
+alias	HPTURKISH8//		HP-TURKISH8//
+alias	OSF10010006//		HP-TURKISH8//
+module	HP-TURKISH8//		INTERNAL		HP-TURKISH8	1
+module	INTERNAL		HP-TURKISH8//		HP-TURKISH8	1
+
+#	from			to			module		cost
+alias	THAI8//			HP-THAI8//
+alias	HPTHAI8//		HP-THAI8//
+module	HP-THAI8//		INTERNAL		HP-THAI8	1
+module	INTERNAL		HP-THAI8//		HP-THAI8	1
+
+#	from			to			module		cost
+alias	HPGREEK8//		HP-GREEK8//
+alias	OSF10010004//		HP-GREEK8//
+module	HP-GREEK8//		INTERNAL		HP-GREEK8	1
+module	INTERNAL		HP-GREEK8//		HP-GREEK8	1
diff --git a/iconvdata/hp-greek8.c b/iconvdata/hp-greek8.c
new file mode 100644
index 0000000000..617608c341
--- /dev/null
+++ b/iconvdata/hp-greek8.c
@@ -0,0 +1,29 @@
+/* Conversion from and to HP-GREEK8.
+   Copyright (C) 2007 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+   Contributed by Ulrich Drepper <drepper@redhat.com>, 2007.
+
+   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>
+
+/* Specify the conversion table.  */
+#define TABLES <hp-greek8.h>
+
+#define CHARSET_NAME	"HP-GREEK8//"
+#define HAS_HOLES	1	/* Not all 256 character are defined.  */
+
+#include <8bit-gap.c>
diff --git a/iconvdata/hp-roman8.c b/iconvdata/hp-roman8.c
index 9833a071fb..ec29d82773 100644
--- a/iconvdata/hp-roman8.c
+++ b/iconvdata/hp-roman8.c
@@ -1,5 +1,5 @@
 /* Conversion from and to HP-ROMAN8.
-   Copyright (C) 1997, 1998 Free Software Foundation, Inc.
+   Copyright (C) 1997, 1998, 2007 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
 
@@ -20,10 +20,10 @@
 
 #include <stdint.h>
 
-/* Get the conversion table.  */
-#include <hp-roman8.h>
+/* Specify the conversion table.  */
+#define TABLES <hp-roman8.h>
 
 #define CHARSET_NAME	"HP-ROMAN8//"
 #define HAS_HOLES	1	/* Not all 256 character are defined.  */
 
-#include <8bit-generic.c>
+#include <8bit-gap.c>
diff --git a/iconvdata/hp-roman9.c b/iconvdata/hp-roman9.c
new file mode 100644
index 0000000000..2f14815762
--- /dev/null
+++ b/iconvdata/hp-roman9.c
@@ -0,0 +1,29 @@
+/* Conversion from and to HP-ROMAN9.
+   Copyright (C) 2007 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+   Contributed by Ulrich Drepper <drepper@redhat.com>, 2007.
+
+   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>
+
+/* Specify the conversion table.  */
+#define TABLES <hp-roman9.h>
+
+#define CHARSET_NAME	"HP-ROMAN9//"
+#define HAS_HOLES	1	/* Not all 256 character are defined.  */
+
+#include <8bit-gap.c>
diff --git a/iconvdata/hp-thai8.c b/iconvdata/hp-thai8.c
new file mode 100644
index 0000000000..a8f0b4a511
--- /dev/null
+++ b/iconvdata/hp-thai8.c
@@ -0,0 +1,29 @@
+/* Conversion from and to HP-THAI8.
+   Copyright (C) 2007 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+   Contributed by Ulrich Drepper <drepper@redhat.com>, 2007.
+
+   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>
+
+/* Specify the conversion table.  */
+#define TABLES <hp-thai8.h>
+
+#define CHARSET_NAME	"HP-THAI8//"
+#define HAS_HOLES	1	/* Not all 256 character are defined.  */
+
+#include <8bit-gap.c>
diff --git a/iconvdata/hp-turkish8.c b/iconvdata/hp-turkish8.c
new file mode 100644
index 0000000000..5de0f14bdf
--- /dev/null
+++ b/iconvdata/hp-turkish8.c
@@ -0,0 +1,29 @@
+/* Conversion from and to HP-TURKISH8.
+   Copyright (C) 2007 Free Software Foundation, Inc.
+   This file is part of the GNU C Library.
+   Contributed by Ulrich Drepper <drepper@redhat.com>, 2007.
+
+   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>
+
+/* Specify the conversion table.  */
+#define TABLES <hp-turkish8.h>
+
+#define CHARSET_NAME	"HP-TURKISH8//"
+#define HAS_HOLES	1	/* Not all 256 character are defined.  */
+
+#include <8bit-gap.c>
diff --git a/iconvdata/iso8859-16.c b/iconvdata/iso8859-16.c
index 39857a628a..41ed591629 100644
--- a/iconvdata/iso8859-16.c
+++ b/iconvdata/iso8859-16.c
@@ -1,5 +1,5 @@
 /* Conversion from and to ISO 8859-16.
-   Copyright (C) 2000 Free Software Foundation, Inc.
+   Copyright (C) 2000, 2007 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 2000.
 
@@ -18,11 +18,12 @@
    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
    02111-1307 USA.  */
 
-/* Get the conversion table.  */
 #include <stdint.h>
-#include <iso8859-16.h>
+
+/* Specify the conversion table.  */
+#define TABLES <iso8859-16.h>
 
 #define CHARSET_NAME "ISO-8859-16//"
 #define HAS_HOLES	0	/* All 256 character are defined.  */
 
-#include <8bit-generic.c>
+#include <8bit-gap.c>
diff --git a/iconvdata/iso8859-9e.c b/iconvdata/iso8859-9e.c
index 7048edac6f..300466399f 100644
--- a/iconvdata/iso8859-9e.c
+++ b/iconvdata/iso8859-9e.c
@@ -18,11 +18,12 @@
    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
    02111-1307 USA.  */
 
-/* Get the conversion table.  */
 #include <stdint.h>
-#include <iso8859-9e.h>
+
+/* Specify the conversion table.  */
+#define TABLES <iso8859-9e.h>
 
 #define CHARSET_NAME "ISO-8859-9E//"
 #define HAS_HOLES	0	/* All 256 character are defined.  */
 
-#include <8bit-generic.c>
+#include <8bit-gap.c>
diff --git a/iconvdata/tst-tables.sh b/iconvdata/tst-tables.sh
index f240e51f36..59bc3f4bac 100755
--- a/iconvdata/tst-tables.sh
+++ b/iconvdata/tst-tables.sh
@@ -80,6 +80,10 @@ cat <<EOF |
   LATIN-GREEK
   LATIN-GREEK-1
   HP-ROMAN8
+  HP-ROMAN9
+  HP-TURKISH8
+  HP-THAI8
+  HP-GREEK8
   EBCDIC-AT-DE
   EBCDIC-AT-DE-A
   EBCDIC-CA-FR
diff --git a/iconvdata/viscii.c b/iconvdata/viscii.c
index 8e7d87e92b..672513d4d4 100644
--- a/iconvdata/viscii.c
+++ b/iconvdata/viscii.c
@@ -1,5 +1,5 @@
 /* Conversion from and to VISCII.
-   Copyright (C) 2000 Free Software Foundation, Inc.
+   Copyright (C) 2000, 2007 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 2000.
 
@@ -18,11 +18,12 @@
    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
    02111-1307 USA.  */
 
-/* Get the conversion table.  */
 #include <stdint.h>
-#include <viscii.h>
+
+/* Specify the conversion table.  */
+#define TABLES <viscii.h>
 
 #define CHARSET_NAME	"VISCII//"
 #define HAS_HOLES	0	/* All 256 character are defined.  */
 
-#include <8bit-generic.c>
+#include <8bit-gap.c>