diff options
author | Matt Jolly <kangie@gentoo.org> | 2024-11-30 13:35:01 +1000 |
---|---|---|
committer | Matt Jolly <kangie@gentoo.org> | 2024-11-30 14:08:42 +1000 |
commit | 4fa8d71be382cc4342280c654958441a1ef1e9fb (patch) | |
tree | 186e879af2e6a40442900452cffaa72cdb7da451 /www-client | |
parent | www-client/chromium: drop 132.0.6834.6 (diff) | |
download | gentoo-4fa8d71be382cc4342280c654958441a1ef1e9fb.tar.gz gentoo-4fa8d71be382cc4342280c654958441a1ef1e9fb.tar.bz2 gentoo-4fa8d71be382cc4342280c654958441a1ef1e9fb.zip |
www-client/chromium: do a better job of forcing Clang
When enabling the Rust eclass, we started directly using
`llvm-r1_pkg_setup`, assuming that this combination would be
sufficicent, however due to forcing `CC` (etc) to variations
on `${CHOST}-clang" _before_ calling `llvm-r1_pkg_setup`,
these would always be forced to the newest version in
`PATH` instead of the one matching `LLVM_SLOT` due to
the eclass fixing the version before doing any `PATH`
manipulation.
To ensure a consistent build environment, we will:
1. Explicitly include `-${LLVM_SLOT}` in `CC`, `CPP`, `CXX`
2. Set these variables (and `AR` and `NM`) after `llvm-r1_pkg_setup`
has done its PATH manipulation.
Bug: https://bugs.gentoo.org/935689
Signed-off-by: Matt Jolly <kangie@gentoo.org>
Diffstat (limited to 'www-client')
-rw-r--r-- | www-client/chromium/chromium-130.0.6723.116-r1.ebuild | 20 | ||||
-rw-r--r-- | www-client/chromium/chromium-131.0.6778.85.ebuild | 16 | ||||
-rw-r--r-- | www-client/chromium/chromium-132.0.6834.15.ebuild | 16 | ||||
-rw-r--r-- | www-client/chromium/chromium-133.0.6847.2.ebuild | 16 |
4 files changed, 32 insertions, 36 deletions
diff --git a/www-client/chromium/chromium-130.0.6723.116-r1.ebuild b/www-client/chromium/chromium-130.0.6723.116-r1.ebuild index 4c3745081087..7d3695283e2d 100644 --- a/www-client/chromium/chromium-130.0.6723.116-r1.ebuild +++ b/www-client/chromium/chromium-130.0.6723.116-r1.ebuild @@ -50,7 +50,6 @@ if [[ ${SLOT} != "0/dev" ]]; then KEYWORDS="~amd64 ~arm64 ~ppc64" fi - IUSE_SYSTEM_LIBS="+system-harfbuzz +system-icu +system-png +system-zstd" IUSE="+X ${IUSE_SYSTEM_LIBS} bindist cups debug ffmpeg-chromium gtk4 +hangouts headless kerberos +official pax-kernel pgo +proprietary-codecs pulseaudio" IUSE+=" qt5 qt6 +screencast selinux test +vaapi +wayland +widevine cpu_flags_ppc_vsx3" @@ -309,24 +308,21 @@ pkg_setup() { die "Please switch to a different linker." fi - # We're forcing Clang here. User choice is respected via llvm_slot_# USE flags. + llvm-r1_pkg_setup + rust_pkg_setup + + # Forcing clang; respect llvm_slot_x to enable selection of impl from LLVM_COMPAT AR=llvm-ar - CPP="${CHOST}-clang++ -E" + CPP="${CHOST}-clang++-${LLVM_SLOT} -E" NM=llvm-nm - CC=${CHOST}-clang - CXX=${CHOST}-clang++ + CC="${CHOST}-clang-${LLVM_SLOT}" + CXX="${CHOST}-clang++-${LLVM_SLOT}" if tc-is-cross-compiler; then use pgo && die "The pgo USE flag cannot be used when cross-compiling" - CPP="${CBUILD}-clang++ -E" + CPP="${CBUILD}-clang++-${LLVM_SLOT} -E" fi - llvm-r1_pkg_setup - rust_pkg_setup - - einfo "Using LLVM/Clang slot ${LLVM_SLOT} to build" - einfo "Using Rust slot ${RUST_SLOT}, ${RUST_TYPE} to build" - # I hate doing this but upstream Rust have yet to come up with a better solution for # us poor packagers. Required for Split LTO units, which are required for CFI. export RUSTC_BOOTSTRAP=1 diff --git a/www-client/chromium/chromium-131.0.6778.85.ebuild b/www-client/chromium/chromium-131.0.6778.85.ebuild index d33fbf3daff5..2cf96bc2284c 100644 --- a/www-client/chromium/chromium-131.0.6778.85.ebuild +++ b/www-client/chromium/chromium-131.0.6778.85.ebuild @@ -311,21 +311,21 @@ pkg_setup() { die "Please switch to a different linker." fi - # Forcing clang; user choice respected by llvm_slot_x USE + llvm-r1_pkg_setup + rust_pkg_setup + + # Forcing clang; respect llvm_slot_x to enable selection of impl from LLVM_COMPAT AR=llvm-ar - CPP="${CHOST}-clang++ -E" + CPP="${CHOST}-clang++-${LLVM_SLOT} -E" NM=llvm-nm - CC=${CHOST}-clang - CXX=${CHOST}-clang++ + CC="${CHOST}-clang-${LLVM_SLOT}" + CXX="${CHOST}-clang++-${LLVM_SLOT}" if tc-is-cross-compiler; then use pgo && die "The pgo USE flag cannot be used when cross-compiling" - CPP="${CBUILD}-clang++ -E" + CPP="${CBUILD}-clang++-${LLVM_SLOT} -E" fi - llvm-r1_pkg_setup - rust_pkg_setup - # I hate doing this but upstream Rust have yet to come up with a better solution for # us poor packagers. Required for Split LTO units, which are required for CFI. export RUSTC_BOOTSTRAP=1 diff --git a/www-client/chromium/chromium-132.0.6834.15.ebuild b/www-client/chromium/chromium-132.0.6834.15.ebuild index aa8e823dc2a0..d2ff0ec11a6d 100644 --- a/www-client/chromium/chromium-132.0.6834.15.ebuild +++ b/www-client/chromium/chromium-132.0.6834.15.ebuild @@ -310,21 +310,21 @@ pkg_setup() { die "Please switch to a different linker." fi - # Forcing clang; user choice respected by llvm_slot_x USE + llvm-r1_pkg_setup + rust_pkg_setup + + # Forcing clang; respect llvm_slot_x to enable selection of impl from LLVM_COMPAT AR=llvm-ar - CPP="${CHOST}-clang++ -E" + CPP="${CHOST}-clang++-${LLVM_SLOT} -E" NM=llvm-nm - CC=${CHOST}-clang - CXX=${CHOST}-clang++ + CC="${CHOST}-clang-${LLVM_SLOT}" + CXX="${CHOST}-clang++-${LLVM_SLOT}" if tc-is-cross-compiler; then use pgo && die "The pgo USE flag cannot be used when cross-compiling" - CPP="${CBUILD}-clang++ -E" + CPP="${CBUILD}-clang++-${LLVM_SLOT} -E" fi - llvm-r1_pkg_setup - rust_pkg_setup - # I hate doing this but upstream Rust have yet to come up with a better solution for # us poor packagers. Required for Split LTO units, which are required for CFI. export RUSTC_BOOTSTRAP=1 diff --git a/www-client/chromium/chromium-133.0.6847.2.ebuild b/www-client/chromium/chromium-133.0.6847.2.ebuild index 455597b1a1c8..c74866a48601 100644 --- a/www-client/chromium/chromium-133.0.6847.2.ebuild +++ b/www-client/chromium/chromium-133.0.6847.2.ebuild @@ -319,21 +319,21 @@ pkg_setup() { die "Please switch to a different linker." fi - # Forcing clang; user choice respected by llvm_slot_x USE + llvm-r1_pkg_setup + rust_pkg_setup + + # Forcing clang; respect llvm_slot_x to enable selection of impl from LLVM_COMPAT AR=llvm-ar - CPP="${CHOST}-clang++ -E" + CPP="${CHOST}-clang++-${LLVM_SLOT} -E" NM=llvm-nm - CC=${CHOST}-clang - CXX=${CHOST}-clang++ + CC="${CHOST}-clang-${LLVM_SLOT}" + CXX="${CHOST}-clang++-${LLVM_SLOT}" if tc-is-cross-compiler; then use pgo && die "The pgo USE flag cannot be used when cross-compiling" - CPP="${CBUILD}-clang++ -E" + CPP="${CBUILD}-clang++-${LLVM_SLOT} -E" fi - llvm-r1_pkg_setup - rust_pkg_setup - # I hate doing this but upstream Rust have yet to come up with a better solution for # us poor packagers. Required for Split LTO units, which are required for CFI. export RUSTC_BOOTSTRAP=1 |