Root/scripts/bin2c.c

Source at commit cdde9cf73945d547acd3e96f9508c79e84ad0bf1 created 9 years 4 months ago.
By Maarten ter Huurne, MMC: JZ4740: Added support for CPU frequency changing
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        {
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}
37

Archive Download this file



interactive