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.