1*10465441SEvalZero#!/usr/bin/perl 2*10465441SEvalZero 3*10465441SEvalZero 4*10465441SEvalZerosub stringify { 5*10465441SEvalZero my $name = shift(@_); 6*10465441SEvalZero open(OUTPUTC, "> $name.c"); 7*10465441SEvalZero open(OUTPUTH, "> $name.h"); 8*10465441SEvalZero 9*10465441SEvalZero open(FILE, "$name"); 10*10465441SEvalZero 11*10465441SEvalZero while(<FILE>) { 12*10465441SEvalZero if(/(.+) "(.+)"/) { 13*10465441SEvalZero $var = $1; 14*10465441SEvalZero $data = $2; 15*10465441SEvalZero 16*10465441SEvalZero $datan = $data; 17*10465441SEvalZero $datan =~ s/\\r/\r/g; 18*10465441SEvalZero $datan =~ s/\\n/\n/g; 19*10465441SEvalZero $datan =~ s/\\01/\01/g; 20*10465441SEvalZero $datan =~ s/\\0/\0/g; 21*10465441SEvalZero 22*10465441SEvalZero printf(OUTPUTC "const char $var\[%d] = \n", length($datan) + 1); 23*10465441SEvalZero printf(OUTPUTC "/* \"$data\" */\n"); 24*10465441SEvalZero printf(OUTPUTC "{"); 25*10465441SEvalZero for($j = 0; $j < length($datan); $j++) { 26*10465441SEvalZero printf(OUTPUTC "%#02x, ", unpack("C", substr($datan, $j, 1))); 27*10465441SEvalZero } 28*10465441SEvalZero printf(OUTPUTC "0 };\n"); 29*10465441SEvalZero 30*10465441SEvalZero printf(OUTPUTH "extern const char $var\[%d];\n", length($datan) + 1); 31*10465441SEvalZero 32*10465441SEvalZero } 33*10465441SEvalZero } 34*10465441SEvalZero close(OUTPUTC); 35*10465441SEvalZero close(OUTPUTH); 36*10465441SEvalZero} 37*10465441SEvalZerostringify("webclient-strings"); 38*10465441SEvalZero 39*10465441SEvalZeroexit 0; 40*10465441SEvalZero 41