blob: 3c2ef1cdb026ba05ee666bb6045e0ed8cffa6b7b [file] [log] [blame]
adamdunkelsca9ddcb2003-03-19 14:13:31 +00001#!/usr/bin/perl
2
3
4sub stringify {
5 my $name = shift(@_);
6 open(OUTPUTC, "> $name.c");
7 open(OUTPUTH, "> $name.h");
8
9 open(FILE, "$name");
10
11 while(<FILE>) {
12 if(/(.+) "(.+)"/) {
13 $var = $1;
14 $data = $2;
15
16 $datan = $data;
17 $datan =~ s/\\r/\r/g;
18 $datan =~ s/\\n/\n/g;
adamdunkels051cf872004-09-09 21:15:34 +000019 $datan =~ s/\\01/\01/g;
adamdunkelsca9ddcb2003-03-19 14:13:31 +000020 $datan =~ s/\\0/\0/g;
21
adamdunkels2c488822003-09-04 19:32:13 +000022 printf(OUTPUTC "const char $var\[%d] = \n", length($datan) + 1);
adamdunkelsca9ddcb2003-03-19 14:13:31 +000023 printf(OUTPUTC "/* \"$data\" */\n");
24 printf(OUTPUTC "{");
25 for($j = 0; $j < length($datan); $j++) {
26 printf(OUTPUTC "%#02x, ", unpack("C", substr($datan, $j, 1)));
27 }
28 printf(OUTPUTC "};\n");
29
adamdunkels2c488822003-09-04 19:32:13 +000030 printf(OUTPUTH "extern const char $var\[%d];\n", length($datan) + 1);
adamdunkelsca9ddcb2003-03-19 14:13:31 +000031
32 }
33 }
34 close(OUTPUTC);
35 close(OUTPUTH);
36}
adamdunkelsca9ddcb2003-03-19 14:13:31 +000037stringify("http-strings");
adamdunkelsece21772003-06-30 23:23:12 +000038stringify("http-user-agent-string");
adamdunkelsca9ddcb2003-03-19 14:13:31 +000039stringify("smtp-strings");
40stringify("html-strings");
adamdunkelsd3d4ec62004-09-05 07:12:12 +000041stringify("ircc-strings");
adamdunkels051cf872004-09-09 21:15:34 +000042stringify("popc-strings");
adamdunkelsca9ddcb2003-03-19 14:13:31 +000043
44exit 0;
45