#!/usr/bin/perl -s
while(<STDIN>) {
foreach $a (@ARGV) {
if (/<$a>/) {
$y = 1;
print "\n" if $r;
print "char ${a}[] =\n" if !$d && !$g;
print "#define $a \\\n" if $d && !$g;
undef $r;
}
}
if ((!/:/ && !$p) || (!/<$a.*>/ && $p)) {
if ($y && $r) {
$r =~ s/(.*)\\$/$1/ if $d && !$g;
$r =~ s/(\t*"[^"]*")(.*)/$1;$2/ if !$d && !$g;
print $r;
}
$y = 0;
}
if ($y) {
print $r;
s#$matchstr#
$c = $1;
$o = $3;
$b = $2;
$o =~ s/\s*(.*?)\s*/$1/;
$b =~ s/([\da-f]{2})\s/\\x$1/g;
$b = "\"$b\"" if $b;
sprintf("\t%s%s\t/* %s %s%s\t*/%s", $b, "\t" x (3-int(leng
+th($b)/8)), $c, $o, "\t" x (4-int((length($o.$c)+4)/8)), $d ? "\\" :
+"");#e if !$g;
$r = $_;
}
}
Can anyone comment on this?