parser: support #default

It behaves like #define, but will not override already-set value.
It is almost equivalent to
 #ifndef var
 #define var value
 #endif
but will override value if var was defined to True
(i.e. without particular value).