Document your ABIs!
Most of the time when programming in C, your API IS your ABI; but there are various cases where use of a pre-processor will break this symmetry.
I should be able to interface with your library without running a pre-processor over the headers first.