Fix compiler detection to not use 'cc -v'
Fix compiler detection to not use 'cc -v'

The output of 'cc -v' can be localized and is not intended to be
machine-readable. Switch to using 'cc -dM -E' instead. Reject ancient
GCC versions at the same time.

Solo5/solo5,Solo5/solo5,mato/solo5,mato/solo5,mato/solo5,Weichen81/solo5,Weichen81/solo5,Weichen81/solo5,djwillia/solo5,djwillia/solo5,djwillia/solo5