CollectLibDirsAndTriples has a number of *Triples elements (hack) so that
--target=aarch64-linux-gnu can auto detect lib/aarch64-suse-linux. IMO
trouble from the magic behavior outweighs its convenience.
For most users (who don't specify --target), the CMake
LLVM_DEFAULT_TARGET_TRIPLE variable should just point to the correct triple
(e.g. aarch64-suse-linux), and Clang driver will find the right
lib/aarch64-suse-linux directory without a hard coded element in AArch64LibDirs.
For people who specify --target for cross compilation, they should specify the
full target triple instead of relying on --target=riscv64 expanding to
--target=riscv64-suse-linux.
Also revert rL304670 (normalize gnueabi to gnueabihf)
Note: the test added by D63497 works even without riscv64-suse-linux
in RISCV64Triples
I have kept powerpc64-suse-linux in PPCTriples because it somehow uses the
multilib behavior for native Clang. That doesn't look right to me.
Not sure if we can remove them. We now use gnueabihf in the default triple, but I think the GCC installation is still at -gnueabi. Also we're using armv6kz instead of armv6hl for some reason that's beyond my understanding.