There are some gcc triples, like x86_64-redhat-linux, that provide the
same behavior as a clang triple with a similar name (e.g.
x86_64-redhat-linux-gnu). When searching for a gcc install, also search
for a gcc equivalent triple if one exists.
I think we should reduce normalization for include/library path detection in the clang driver (D110663), instead of adding more customization for each platform.
Some clang driver code uses os and environment to check feature compatibility with a target triple. Due to the limitation of the constructor llvm::Triple::Triple (os/environ is wrong if a un-normalized triple string is passed), such code can keep using the normalized triple.