I made these changes partly at the suggestion of @mistydemeo. IIRC, the compiler preference ordering is (currently) supposed to be clang > llvm > apple-gcc42 but that that would change when the patch landed to allow non-apple GCCs.

The second part (with the GCC stuff) isn't needed now but it may become a problem when the other patch lands. Currently only the apple-gcc42 is supported on OS X.

Would you prefer to do this is a different way?