Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6
[linux-2.6] / scripts / bin2c.c
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
12 int 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                 {
24                         total++;
25                         printf("\\x%02x",ch);
26                         if (total % 16 == 0)
27                                 break;
28                 }
29                 printf("\"\n");
30         } while (ch != EOF);
31
32         if (argc > 1)
33                 printf("\t;\n\nconst int %s_size = %d;\n", argv[1], total);
34
35         return 0;
36 }