Ooops. It helps to p4 add the new file.
authorNicholas Clark <nick@ccl4.org>
Tue, 24 Apr 2007 23:16:12 +0000 (23:16 +0000)
committerNicholas Clark <nick@ccl4.org>
Tue, 24 Apr 2007 23:16:12 +0000 (23:16 +0000)
p4raw-id: //depot/perl@31060

generate_uudmap.c [new file with mode: 0644]

diff --git a/generate_uudmap.c b/generate_uudmap.c
new file mode 100644 (file)
index 0000000..5b940f7
--- /dev/null
@@ -0,0 +1,44 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <ctype.h>
+
+static const char PL_uuemap[]
+= "`!\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_";
+
+typedef unsigned char U8;
+
+/* This will ensure it is all zeros.  */
+static char PL_uudmap[256];
+
+int main() {
+  size_t i;
+  char *p;
+
+  for (i = 0; i < sizeof(PL_uuemap) - 1; ++i)
+    PL_uudmap[(U8)PL_uuemap[i]] = i;
+  /*
+   * Because ' ' and '`' map to the same value,
+   * we need to decode them both the same.
+   */
+  PL_uudmap[(U8)' '] = 0;
+
+  i = sizeof(PL_uudmap);
+  p = PL_uudmap;
+
+  fputs("{\n    ", stdout);
+  while (i--) {
+    printf("%d", *p);
+    p++;
+    if (i) {
+      fputs(", ", stdout);
+      if (!(i & 15)) {
+       fputs("\n    ", stdout);
+      }
+    }
+  }
+  puts("\n}");
+
+  return 0;
+}
+
+