cabal.mkDerivation: Use defaultMain if no Setup.{l,}hs exists.

This mirrors the default behaviour of cabal-install for the Simple build type
If it's in the for loop won't it always be compiled then?

I'll move it to a let if this PR is otherwise desired.