C Preprocessor testing definedness of multiple macros
Try:
#if defined(_WIN32) || defined(_WIN64)// do stuff#endif
The defined macro tests whether or not a name is defined and lets you apply logical operators to the result.
I think it should be possible this way:
#if defined block1 || defined block2 /*or any other boolean operator*/ /*Code*/#endif
More information here