Home | History | Annotate | Download | only in scripts
      1 /*
      2  * Unloved program to convert a binary on stdin to a C include on stdout
      3  *
      4  * Jan 1999 Matt Mackall <mpm (at) 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 			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\n#include <linux/types.h>\n\nconst size_t %s_size = %d;\n",
     33 		       argv[1], total);
     34 
     35 	return 0;
     36 }
     37