(maintainability) write plist key-value pairs on a single line
I think that's more readable
allow spaces in '#  if 0'
move preprocessor rules into repository section
(minor) dash instead of underscore in support rule names
(minor) add preprocessor- prefix to all related rules
(minor) move some pieces of code
combine all preprocessor rules into a single one
(minor) don't escape chars in [] regex group
don't consume a newline terminating a macro