Remove dead generators for cyrillic encoding conversion tables
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>
Mon, 29 Jul 2024 17:38:19 +0000 (20:38 +0300)
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>
Mon, 29 Jul 2024 17:38:19 +0000 (20:38 +0300)
These tools were used to read the koi-iso.tab, koi-win.tab, and
koi-alt.tab files, which contained the mappings between the
single-byte cyrillic encodings. However, those data files were removed
in commit 4c3c8c048d, back in 2003. These code generators have been
unused and unusable ever since.

The generated tables live in cyrillic_and_mic.c. There has been one
change to the tables since they were generated in 1999, in commit
f4b7624eb07a. So if we resurrected the original data tables, that
change would need to be taken into account.

So this code is very dead. The tables in cyrillic_and_mic.c, which
were originally generated by these tools, are now the authoritative
source for these mappings.

Reviewed-by: Tom Lane, Aleksander Alekseev
Discussion: https://www.postgresql.org/message-id/flat/a821c3dc-36ec-4cee-8b41-7ccaa17adb18@iki.fi

src/backend/utils/mb/README
src/backend/utils/mb/iso.c [deleted file]
src/backend/utils/mb/win1251.c [deleted file]
src/backend/utils/mb/win866.c [deleted file]

index ef3662689135bf736d68f62125442b849123cfaa..4447881ead07dd27e012ff7b9e03d748982bed52 100644 (file)
@@ -8,9 +8,6 @@ mbutils.c:  public functions for the backend only.
 stringinfo_mb.c: public backend-only multibyte-aware stringinfo functions
 wstrcmp.c: strcmp for mb
 wstrncmp.c:    strncmp for mb
-win866.c:  a tool to generate KOI8 <--> CP866 conversion table
-iso.c:     a tool to generate KOI8 <--> ISO8859-5 conversion table
-win1251.c: a tool to generate KOI8 <--> CP1251 conversion table
 
 See also in src/common/:
 
diff --git a/src/backend/utils/mb/iso.c b/src/backend/utils/mb/iso.c
deleted file mode 100644 (file)
index d5dae56..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * make KOI8->ISO8859-5 and ISO8859-5->KOI8 translation table
- * from koi-iso.tab.
- *
- * Tatsuo Ishii
- *
- * src/backend/utils/mb/iso.c
- */
-
-#include <stdio.h>
-
-
-main()
-{
-   int         i;
-   char        koitab[128],
-               isotab[128];
-   char        buf[4096];
-   int         koi,
-               iso;
-
-   for (i = 0; i < 128; i++)
-       koitab[i] = isotab[i] = 0;
-
-   while (fgets(buf, sizeof(buf), stdin) != NULL)
-   {
-       if (*buf == '#')
-           continue;
-       sscanf(buf, "%d %x", &koi, &iso);
-       if (koi < 128 || koi > 255 || iso < 128 || iso > 255)
-       {
-           fprintf(stderr, "invalid value %d\n", koi);
-           exit(1);
-       }
-       koitab[koi - 128] = iso;
-       isotab[iso - 128] = koi;
-   }
-
-   i = 0;
-   printf("static char koi2iso[] = {\n");
-   while (i < 128)
-   {
-       int         j = 0;
-
-       while (j < 8)
-       {
-           printf("0x%02x", koitab[i++]);
-           j++;
-           if (i >= 128)
-               break;
-           printf(", ");
-       }
-       printf("\n");
-   }
-   printf("};\n");
-
-   i = 0;
-   printf("static char iso2koi[] = {\n");
-   while (i < 128)
-   {
-       int         j = 0;
-
-       while (j < 8)
-       {
-           printf("0x%02x", isotab[i++]);
-           j++;
-           if (i >= 128)
-               break;
-           printf(", ");
-       }
-       printf("\n");
-   }
-   printf("};\n");
-}
diff --git a/src/backend/utils/mb/win1251.c b/src/backend/utils/mb/win1251.c
deleted file mode 100644 (file)
index 75129e6..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * make KOI8->CP1251(win-1251) and CP1251(win-1251)->KOI8 translation table
- * from koi-win.tab.
- *
- * Tatsuo Ishii
- *
- * src/backend/utils/mb/win1251.c
- */
-
-#include <stdio.h>
-
-
-main()
-{
-   int         i;
-   char        koitab[128],
-               wintab[128];
-   char        buf[4096];
-   int         koi,
-               win;
-
-   for (i = 0; i < 128; i++)
-       koitab[i] = wintab[i] = 0;
-
-   while (fgets(buf, sizeof(buf), stdin) != NULL)
-   {
-       if (*buf == '#')
-           continue;
-       sscanf(buf, "%d %d", &koi, &win);
-       if (koi < 128 || koi > 255 || win < 128 || win > 255)
-       {
-           fprintf(stderr, "invalid value %d\n", koi);
-           exit(1);
-       }
-       koitab[koi - 128] = win;
-       wintab[win - 128] = koi;
-   }
-
-   i = 0;
-   printf("static char koi2win[] = {\n");
-   while (i < 128)
-   {
-       int         j = 0;
-
-       while (j < 8)
-       {
-           printf("0x%02x", koitab[i++]);
-           j++;
-           if (i >= 128)
-               break;
-           printf(", ");
-       }
-       printf("\n");
-   }
-   printf("};\n");
-
-   i = 0;
-   printf("static char win2koi[] = {\n");
-   while (i < 128)
-   {
-       int         j = 0;
-
-       while (j < 8)
-       {
-           printf("0x%02x", wintab[i++]);
-           j++;
-           if (i >= 128)
-               break;
-           printf(", ");
-       }
-       printf("\n");
-   }
-   printf("};\n");
-}
diff --git a/src/backend/utils/mb/win866.c b/src/backend/utils/mb/win866.c
deleted file mode 100644 (file)
index f98c376..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * make KOI8->CP866(ALT) and CP866(ALT)->KOI8 translation table
- * from koi-alt.tab.
- *
- * Tatsuo Ishii
- *
- * src/backend/utils/mb/win866.c
- */
-
-#include <stdio.h>
-
-
-main()
-{
-   int         i;
-   char        koitab[128],
-               alttab[128];
-   char        buf[4096];
-   int         koi,
-               alt;
-
-   for (i = 0; i < 128; i++)
-       koitab[i] = alttab[i] = 0;
-
-   while (fgets(buf, sizeof(buf), stdin) != NULL)
-   {
-       if (*buf == '#')
-           continue;
-       sscanf(buf, "%d %d", &koi, &alt);
-       if (koi < 128 || koi > 255 || alt < 128 || alt > 255)
-       {
-           fprintf(stderr, "invalid value %d\n", koi);
-           exit(1);
-       }
-       koitab[koi - 128] = alt;
-       alttab[alt - 128] = koi;
-   }
-
-   i = 0;
-   printf("static char koi2alt[] = {\n");
-   while (i < 128)
-   {
-       int         j = 0;
-
-       while (j < 8)
-       {
-           printf("0x%02x", koitab[i++]);
-           j++;
-           if (i >= 128)
-               break;
-           printf(", ");
-       }
-       printf("\n");
-   }
-   printf("};\n");
-
-   i = 0;
-   printf("static char alt2koi[] = {\n");
-   while (i < 128)
-   {
-       int         j = 0;
-
-       while (j < 8)
-       {
-           printf("0x%02x", alttab[i++]);
-           j++;
-           if (i >= 128)
-               break;
-           printf(", ");
-       }
-       printf("\n");
-   }
-   printf("};\n");
-}