Force-include 'cabal_macros.h' when compiling C sources.

When compiling c-sources, GHC is now passed `-optc-include -optc/path/to/cabal_macros.h`. Note that `-optP-include` (which is used when compiling Haskell sources) doesn't work for this case.

Fixes #1434.