[PATCH] D134454: [Driver][Distro] Fix ArchLinux triplet and sysroot detection

Adrian Ratiu via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Tue Sep 27 02:12:09 PDT 2022


10ne1 added a comment.

In D134454#3816460 <https://reviews.llvm.org/D134454#3816460>, @MaskRay wrote:

> I am nervous as well as Arch Linux has many derivatives. They likely don't use `ID=arch` in `/etc/os-release`. The patch won't work for them.
> In general, I don't think our current approach adding new `Distro::*` flavors scale or really meet the needs of numerous less-popular distributions.
>
> The last few comments of https://discourse.llvm.org/t/rfc-adding-a-default-file-location-to-config-file-support/63606 discuss a generic mechanism solving the distribution difference problem with configuration files.
> Also, the new driver option `--gcc-install-dir` (https://discourse.llvm.org/t/add-gcc-install-dir-deprecate-gcc-toolchain-and-remove-gcc-install-prefix/65091 ; milestone: 16.0.0) can be useful for some tasks.

@MaskRay I agree the current /etc/os-release and Distro::* based OS detection is not scalable and will require adding more and more per-distro exceptions, which is ugly.

However what other option do we currently have other than waiting for the generic distro mechanism to be implemented and continue doing workarounds in projects depending on LLVM/Clang like the kernel?

My suggestion is to add a Distro::* exception to fix Arch Linux now which will also allow to clean up the kernel code and **afterwards**, when the generic mechanism is finally implemented, this along with all the other Distro:* ugliness can be dropped. Basically I try to avoid blocking for an indefinite amount of time for a proper solution, which when it will finally come, will drop this code anyway.

What do you think? If you say we should wait, that is fine with me as well.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D134454/new/

https://reviews.llvm.org/D134454



More information about the cfe-commits mailing list