| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | #include <stdio.h> | 
 | 2 | #include <string.h> | 
 | 3 | #include <stdlib.h> | 
 | 4 |  | 
 | 5 | int main( int argc, const char * argv [] ) | 
 | 6 | { | 
 | 7 |     const char * varname; | 
 | 8 |     int i = 0; | 
 | 9 |     int c; | 
 | 10 |     int id = 0; | 
 | 11 |  | 
 | 12 |     if(argv[1] && strcmp(argv[1],"-i")==0) | 
 | 13 |     { | 
 | 14 |     	argv++; | 
 | 15 |     	argc--; | 
 | 16 |     	id=1; | 
 | 17 |     } | 
 | 18 |     	 | 
 | 19 |     if(argc==1) | 
 | 20 |     { | 
 | 21 |     	fprintf(stderr, "bin2hex: [-i] firmware\n"); | 
 | 22 |     	exit(1); | 
 | 23 |     } | 
 | 24 |      | 
 | 25 |     varname = argv[1]; | 
 | 26 |     printf( "/* automatically generated by bin2hex */\n" ); | 
 | 27 |     printf( "static unsigned char %s [] %s =\n{\n", varname , id?"__initdata":""); | 
 | 28 |  | 
 | 29 |     while ( ( c = getchar( ) ) != EOF ) | 
 | 30 |     { | 
 | 31 | 	if ( i != 0 && i % 10 == 0 ) | 
 | 32 | 	    printf( "\n" ); | 
 | 33 | 	printf( "0x%02lx,", c & 0xFFl ); | 
 | 34 | 	i++; | 
 | 35 |     } | 
 | 36 |  | 
 | 37 |     printf( "};\nstatic int %sLen =  %d;\n", varname, i ); | 
 | 38 |     return 0; | 
 | 39 | } |