{ if($
1 != "") flags
[$
1] =
"on"
if($
2 != "") flags
[$
2] =
"on"
if($
3 != "") flags
[$
3] =
"on"
if($
4 != "") flags
[$
4] =
"on"
if($
5 != "") flags
[$
5] =
"on"
/#ifdef/||/#elseif/ { if (flags[$2] != "") skip = -1; else skip = 1
/#ifndef/ { if (flags[$2] != "") skip = 1; else skip = -1
/#else/ { skip = -skip; print $0; next}
/#endif/ { skip = 0 ; print $0; next}
{ if(substr($
0,1,1) != "#") print "#" $
0; else print $
0;
{ if(substr($
0,1,1) ==
"#")
print substr($
0,2,length($
0)-1)