33 lines
619 B
Awk
33 lines
619 B
Awk
|
/^@@/ {
|
||
|
fname = $2
|
||
|
}
|
||
|
|
||
|
/^@COMMENT/ {
|
||
|
print "\n// " $2 " " $3 " " $4 " " $5
|
||
|
}
|
||
|
|
||
|
/^typedef/ {
|
||
|
n = split($0, decl, "(")
|
||
|
n = split(decl[1], rets, "typedef ")
|
||
|
n = split(decl[3], arglist, ")")
|
||
|
n = split(arglist[1], the_args, ",")
|
||
|
argstr = "( "
|
||
|
actuals = "( "
|
||
|
for (i = 1; i <= n; i++)
|
||
|
{
|
||
|
argstr = argstr the_args[i] " arg" i
|
||
|
actuals = actuals " arg" i
|
||
|
if (i != n)
|
||
|
{
|
||
|
argstr = argstr ", "
|
||
|
actuals = actuals ", "
|
||
|
}
|
||
|
}
|
||
|
argstr = argstr " )"
|
||
|
actuals = actuals " )"
|
||
|
print "inline " rets[2] fname " " argstr
|
||
|
print "{"
|
||
|
print " _w32imp->" fname actuals
|
||
|
print "}"
|
||
|
print ""
|
||
|
}
|