summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Trofimovich <slyfox@gentoo.org>2020-05-22 11:39:07 +0100
committerSergei Trofimovich <slyfox@gentoo.org>2020-05-22 11:39:07 +0100
commitd0c8542b2ea3b6234c50e78c0067713202f4eb18 (patch)
tree408223c0636523ae5fe97392f9a7c6272929829d
parentgcc-config: link /lib/cpp to qualified 'cpp' (diff)
downloadgcc-config-d0c8542b2ea3b6234c50e78c0067713202f4eb18.tar.gz
gcc-config-d0c8542b2ea3b6234c50e78c0067713202f4eb18.tar.bz2
gcc-config-d0c8542b2ea3b6234c50e78c0067713202f4eb18.zip
gcc-config: add facts around tool names
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
-rwxr-xr-xgcc-config23
1 files changed, 23 insertions, 0 deletions
diff --git a/gcc-config b/gcc-config
index 95d2632..87f466c 100755
--- a/gcc-config
+++ b/gcc-config
@@ -235,6 +235,29 @@ update_wrappers() {
# for new functionality (like a version bump).
local x CTARGET=$1
+ # Facts on gcc's private binary dir contents:
+ #
+ # Native directory looks like:
+ # /usr/x86_64-pc-linux-gnu/gcc-bin/11.0.0
+ # Contents looks like:
+ # - 'foo' ('gcc', 'c++', 'gcc-ar', 'lto-dump')
+ # - 'foo-${v}' (go-11, gofmt-11)
+ # - ${CTARGET}-foo (${CTARGET}-gcc
+ #
+ # Not each 'foo' has it's ${CTARGET}-foo match.
+ # Examples are:
+ # - lto-dump, gcov-dump, gcov-tool (no ${CTARGET}-lto-dump equvalent)
+ # - go-${MAJOR}, gofmt-${MAJOR} (no ${CTARGET}-go-${MAJOR} equivalent)
+ # - ${CTARGET}-gcc-11.0.0 (no gcc-11.0.0 equivalent)
+ # TODO: is it a gcc or toolchain.eclass bug?
+ #
+ # Cross directory looks liks:
+ # /usr/x86_64-pc-linux-gnu/ia64-unknown-linux-gnu/gcc-bin/10.1.0
+ # Contents look like:
+ # - ${CTARGET}-foo (${CTARGET}-gcc
+ #
+ # Every tool is prefixed.
+
# Use the old dir to see what we wrapped up previously.
local old_wrappers=( $(
[[ -n ${OLD_GCC_PATH} ]] || exit 1