[PATCH] D109621: [clang] [Driver] Fall back to default.cfg when calling clang w/o prefix

Michał Górny via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Sat Sep 17 04:35:53 PDT 2022


mgorny added a comment.

As an example, we are currently installing the following set of executables + symlinks for clang in Gentoo on amd64 with full multilib:

  lrwxrwxrwx 1 root root    8 Sep 17 12:31 /usr/lib/llvm/16/bin/clang -> clang-16
  lrwxrwxrwx 1 root root   10 Sep 17 12:31 /usr/lib/llvm/16/bin/clang++ -> clang++-16
  lrwxrwxrwx 1 root root    8 Sep 17 12:31 /usr/lib/llvm/16/bin/clang++-16 -> clang-16
  -rwxr-xr-x 1 root root 170K Sep 17 12:31 /usr/lib/llvm/16/bin/clang-16
  lrwxrwxrwx 1 root root   11 Sep 17 12:31 /usr/lib/llvm/16/bin/clang-cl -> clang-cl-16
  lrwxrwxrwx 1 root root    8 Sep 17 12:31 /usr/lib/llvm/16/bin/clang-cl-16 -> clang-16
  lrwxrwxrwx 1 root root   12 Sep 17 12:31 /usr/lib/llvm/16/bin/clang-cpp -> clang-cpp-16
  lrwxrwxrwx 1 root root    8 Sep 17 12:31 /usr/lib/llvm/16/bin/clang-cpp-16 -> clang-16
  lrwxrwxrwx 1 root root   26 Sep 17 12:31 /usr/lib/llvm/16/bin/i686-pc-linux-gnu-clang -> i686-pc-linux-gnu-clang-16
  lrwxrwxrwx 1 root root   28 Sep 17 12:31 /usr/lib/llvm/16/bin/i686-pc-linux-gnu-clang++ -> i686-pc-linux-gnu-clang++-16
  lrwxrwxrwx 1 root root   10 Sep 17 12:31 /usr/lib/llvm/16/bin/i686-pc-linux-gnu-clang++-16 -> clang++-16
  lrwxrwxrwx 1 root root    8 Sep 17 12:31 /usr/lib/llvm/16/bin/i686-pc-linux-gnu-clang-16 -> clang-16
  lrwxrwxrwx 1 root root   29 Sep 17 12:31 /usr/lib/llvm/16/bin/i686-pc-linux-gnu-clang-cl -> i686-pc-linux-gnu-clang-cl-16
  lrwxrwxrwx 1 root root   11 Sep 17 12:31 /usr/lib/llvm/16/bin/i686-pc-linux-gnu-clang-cl-16 -> clang-cl-16
  lrwxrwxrwx 1 root root   30 Sep 17 12:31 /usr/lib/llvm/16/bin/i686-pc-linux-gnu-clang-cpp -> i686-pc-linux-gnu-clang-cpp-16
  lrwxrwxrwx 1 root root   12 Sep 17 12:31 /usr/lib/llvm/16/bin/i686-pc-linux-gnu-clang-cpp-16 -> clang-cpp-16
  lrwxrwxrwx 1 root root   28 Sep 17 12:31 /usr/lib/llvm/16/bin/x86_64-pc-linux-gnu-clang -> x86_64-pc-linux-gnu-clang-16
  lrwxrwxrwx 1 root root   30 Sep 17 12:31 /usr/lib/llvm/16/bin/x86_64-pc-linux-gnu-clang++ -> x86_64-pc-linux-gnu-clang++-16
  lrwxrwxrwx 1 root root   10 Sep 17 12:31 /usr/lib/llvm/16/bin/x86_64-pc-linux-gnu-clang++-16 -> clang++-16
  lrwxrwxrwx 1 root root    8 Sep 17 12:31 /usr/lib/llvm/16/bin/x86_64-pc-linux-gnu-clang-16 -> clang-16
  lrwxrwxrwx 1 root root   31 Sep 17 12:31 /usr/lib/llvm/16/bin/x86_64-pc-linux-gnu-clang-cl -> x86_64-pc-linux-gnu-clang-cl-16
  lrwxrwxrwx 1 root root   11 Sep 17 12:31 /usr/lib/llvm/16/bin/x86_64-pc-linux-gnu-clang-cl-16 -> clang-cl-16
  lrwxrwxrwx 1 root root   32 Sep 17 12:31 /usr/lib/llvm/16/bin/x86_64-pc-linux-gnu-clang-cpp -> x86_64-pc-linux-gnu-clang-cpp-16
  lrwxrwxrwx 1 root root   12 Sep 17 12:31 /usr/lib/llvm/16/bin/x86_64-pc-linux-gnu-clang-cpp-16 -> clang-cpp-16
  lrwxrwxrwx 1 root root   31 Sep 17 12:31 /usr/lib/llvm/16/bin/x86_64-pc-linux-gnux32-clang -> x86_64-pc-linux-gnux32-clang-16
  lrwxrwxrwx 1 root root   33 Sep 17 12:31 /usr/lib/llvm/16/bin/x86_64-pc-linux-gnux32-clang++ -> x86_64-pc-linux-gnux32-clang++-16
  lrwxrwxrwx 1 root root   10 Sep 17 12:31 /usr/lib/llvm/16/bin/x86_64-pc-linux-gnux32-clang++-16 -> clang++-16
  lrwxrwxrwx 1 root root    8 Sep 17 12:31 /usr/lib/llvm/16/bin/x86_64-pc-linux-gnux32-clang-16 -> clang-16
  lrwxrwxrwx 1 root root   34 Sep 17 12:31 /usr/lib/llvm/16/bin/x86_64-pc-linux-gnux32-clang-cl -> x86_64-pc-linux-gnux32-clang-cl-16
  lrwxrwxrwx 1 root root   11 Sep 17 12:31 /usr/lib/llvm/16/bin/x86_64-pc-linux-gnux32-clang-cl-16 -> clang-cl-16
  lrwxrwxrwx 1 root root   35 Sep 17 12:31 /usr/lib/llvm/16/bin/x86_64-pc-linux-gnux32-clang-cpp -> x86_64-pc-linux-gnux32-clang-cpp-16
  lrwxrwxrwx 1 root root   12 Sep 17 12:31 /usr/lib/llvm/16/bin/x86_64-pc-linux-gnux32-clang-cpp-16 -> clang-cpp-16

…and we can cover all of them using four config files:

  -rw-r--r-- 1 root root  0 Sep 17 13:30 default.cfg
  lrwxrwxrwx 1 root root 11 Sep 17 12:31 i686-pc-linux-gnu.cfg -> default.cfg
  lrwxrwxrwx 1 root root 11 Sep 17 12:31 x86_64-pc-linux-gnu.cfg -> default.cfg
  lrwxrwxrwx 1 root root 11 Sep 17 12:31 x86_64-pc-linux-gnux32.cfg -> default.cfg


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

https://reviews.llvm.org/D109621



More information about the cfe-commits mailing list