Tool for making the http-string.c file from http-strings
This commit is contained in:
parent
d1b791f693
commit
5230c1bb5d
40
tools/makestrings
Executable file
40
tools/makestrings
Executable file
|
@ -0,0 +1,40 @@
|
||||||
|
#!/usr/bin/perl
|
||||||
|
|
||||||
|
|
||||||
|
sub stringify {
|
||||||
|
my $name = shift(@_);
|
||||||
|
open(OUTPUTC, "> $name.c");
|
||||||
|
open(OUTPUTH, "> $name.h");
|
||||||
|
|
||||||
|
open(FILE, "$name");
|
||||||
|
|
||||||
|
while(<FILE>) {
|
||||||
|
if(/(.+) "(.+)"/) {
|
||||||
|
$var = $1;
|
||||||
|
$data = $2;
|
||||||
|
|
||||||
|
$datan = $data;
|
||||||
|
$datan =~ s/\\r/\r/g;
|
||||||
|
$datan =~ s/\\n/\n/g;
|
||||||
|
$datan =~ s/\\01/\01/g;
|
||||||
|
$datan =~ s/\\0/\0/g;
|
||||||
|
|
||||||
|
printf(OUTPUTC "const char $var\[%d] = \n", length($datan) + 1);
|
||||||
|
printf(OUTPUTC "/* \"$data\" */\n");
|
||||||
|
printf(OUTPUTC "{");
|
||||||
|
for($j = 0; $j < length($datan); $j++) {
|
||||||
|
printf(OUTPUTC "%#02x, ", unpack("C", substr($datan, $j, 1)));
|
||||||
|
}
|
||||||
|
printf(OUTPUTC "};\n");
|
||||||
|
|
||||||
|
printf(OUTPUTH "extern const char $var\[%d];\n", length($datan) + 1);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
close(OUTPUTC);
|
||||||
|
close(OUTPUTH);
|
||||||
|
}
|
||||||
|
stringify($ARGV[0]);
|
||||||
|
|
||||||
|
exit 0;
|
||||||
|
|
Loading…
Reference in a new issue