linux/scripts/basic/bin2c.c
<<
>>
Prefs
   1/*
   2 * Unloved program to convert a binary on stdin to a C include on stdout
   3 *
   4 * Jan 1999 Matt Mackall <mpm@selenic.com>
   5 *
   6 * This software may be used and distributed according to the terms
   7 * of the GNU General Public License, incorporated herein by reference.
   8 */
   9
  10#include <stdio.h>
  11
  12int main(int argc, char *argv[])
  13{
  14        int ch, total = 0;
  15
  16        if (argc > 1)
  17                printf("const char %s[] %s=\n",
  18                        argv[1], argc > 2 ? argv[2] : "");
  19
  20        do {
  21                printf("\t\"");
  22                while ((ch = getchar()) != EOF) {
  23                        total++;
  24                        printf("\\x%02x", ch);
  25                        if (total % 16 == 0)
  26                                break;
  27                }
  28                printf("\"\n");
  29        } while (ch != EOF);
  30
  31        if (argc > 1)
  32                printf("\t;\n\nconst int %s_size = %d;\n", argv[1], total);
  33
  34        return 0;
  35}
  36