Summary: | dev-util/shadowman eselect compiler-shadow update ccache could help on fixing build issues with kernel modules | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Pacho Ramos <pacho> |
Component: | Current packages | Assignee: | Michał Górny <mgorny> |
Status: | CONFIRMED --- | ||
Severity: | normal | CC: | ionen |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Pacho Ramos
2024-05-06 08:18:14 UTC
Also affects clang, which can also be selected as a kernel compiler. linux-mod-r1 uses "type -P" to find these, dead symlinks would be ignored by that but these are never dead given they point to /usr/bin/ccache. Wouldn't be impossible to do messy workarounds for validity but having compiler-shadow be updated sounds cleaner and it could solve other problems (imagine this is worse if the "newer" compiler is depcleaned). (In reply to Ionen Wolkens from comment #1) > Wouldn't be impossible to do messy workarounds for validity Well, not that messy given it already does a check + warn because of it, but it'd still need to assume it's broken and then try the next compiler in PATH which in itself gets messy. (In reply to Ionen Wolkens from comment #1) > Also affects clang, which can also be selected as a kernel compiler. Or not, I see it's there in postrm already -- assumed that if gcc doesn't do it then clang probably didn't either. (In reply to Ionen Wolkens from comment #3) > (In reply to Ionen Wolkens from comment #1) > > Also affects clang, which can also be selected as a kernel compiler. > Or not, I see it's there in postrm already -- assumed that if gcc doesn't do > it then clang probably didn't either. On that note, are you sure it didn't get cleaned? I just happened to depclean gcc-13, and I seen right after: Cleaning up masquerade for ccache ... removed 'g++-13' removed 'gcc-13' removed 'x86_64-pc-linux-gnu-g++-13' removed 'x86_64-pc-linux-gnu-gcc-13' And they are indeed gone. Then again maybe there was something up with older 12 and this is already fixed. commit c4cd0691bd4fdef1c7eca9dc27f4dffb9f43f593 Author: Michał Górny <mgorny@gentoo.org> Date: Thu Aug 10 23:18:22 2017 +0200 toolchain.eclass: Update masquerades via dev-util/shadowman postinst/rm The only possibly relevant thing I could think of is commit 6302dd47e23ee32cfcb446355704ba8bc61b668e Author: Sam James <sam@gentoo.org> Date: Mon Sep 25 01:05:20 2023 +0100 toolchain.eclass: fix should_we_gcc_config for major-version slotting Reported by the-horo on IRC. For example, with slot as major version: ``` $ gcc-config -c x86_64-pc-linux-gnu x86_64-pc-linux-gnu-13 $ gcc-config -S x86_64-pc-linux-gnu-13 x86_64-pc-linux-gnu 13 ``` so we're indeed comparing 13 with 13.2 and hence we decide to run gcc-config unnecessarily because we think it's a major version change. Fix that by taking into account tc_use_major_version_only and comparing based on GCCMAJOR for that case. Bug: https://bugs.gentoo.org/865835 Bug: https://bugs.gentoo.org/873505 Reported-by: the-horo Closes: https://github.com/gentoo/gentoo/pull/33042 Signed-off-by: Sam James <sam@gentoo.org> |