diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2007-07-05 18:01:53 +0200 |
---|---|---|
committer | Sascha Hauer <sha@octopus.labnet.pengutronix.de> | 2007-07-05 18:01:53 +0200 |
commit | 8785eb9c9978a7755f21880ae885aded89637696 (patch) | |
tree | 3e6613a3c1435d44c952512efbe0d77b730857ca /scripts | |
parent | a8b814d5299b2ed79d9f17d9a43fd352b52eb047 (diff) | |
download | barebox-8785eb9c9978a7755f21880ae885aded89637696.tar.gz barebox-8785eb9c9978a7755f21880ae885aded89637696.tar.xz |
svn_rev_429
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/bin2c.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/scripts/bin2c.c b/scripts/bin2c.c new file mode 100644 index 0000000000..96dd2bcbb4 --- /dev/null +++ b/scripts/bin2c.c @@ -0,0 +1,36 @@ +/* + * Unloved program to convert a binary on stdin to a C include on stdout + * + * Jan 1999 Matt Mackall <mpm@selenic.com> + * + * This software may be used and distributed according to the terms + * of the GNU General Public License, incorporated herein by reference. + */ + +#include <stdio.h> + +int main(int argc, char *argv[]) +{ + int ch, total=0; + + if (argc > 1) + printf("const char %s[] %s=\n", + argv[1], argc > 2 ? argv[2] : ""); + + do { + printf("\t\""); + while ((ch = getchar()) != EOF) + { + total++; + printf("\\x%02x",ch); + if (total % 16 == 0) + break; + } + printf("\"\n"); + } while (ch != EOF); + + if (argc > 1) + printf("\t;\n\nconst int %s_size = %d;\n", argv[1], total); + + return 0; +} |