summaryrefslogtreecommitdiff
path: root/www-client/firefox
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-01-29 14:55:22 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-01-29 14:55:22 +0000
commit4c51ef39a9b443061a7071e002d7daa2a4d16141 (patch)
tree048b88a0effe40564f62448a2ff2779f637e563f /www-client/firefox
parentcd1445321d1a6609cc7215588a79b2232c8a9bd3 (diff)
gentoo auto-resync : 29:01:2023 - 14:55:22
Diffstat (limited to 'www-client/firefox')
-rw-r--r--www-client/firefox/Manifest2
-rw-r--r--www-client/firefox/firefox-109.0.ebuild74
2 files changed, 65 insertions, 11 deletions
diff --git a/www-client/firefox/Manifest b/www-client/firefox/Manifest
index 3c0c8735bece..4e2b359385f2 100644
--- a/www-client/firefox/Manifest
+++ b/www-client/firefox/Manifest
@@ -405,5 +405,5 @@ DIST firefox-109.0.source.tar.xz 493231972 BLAKE2B 56ec8c49f0dd1cb4ba29afb5d68fd
EBUILD firefox-102.6.0.ebuild 36637 BLAKE2B b390983bf08385b01f66d76a1f08c97342991312bc76d24f11cf4cb94736d6749d5f75f5b9081069fc4b17ccbdfc58b9bbe8c2caf03563d4676a82150c692b8d SHA512 214f554cc976202bfe9cae0bf79c16e4017b9b08f4342ed9f62145d237602c8ffa7204f51d8b3838214481088ca333da34a1ca8e779f0a48503377ef95f9fbcf
EBUILD firefox-102.7.0.ebuild 36564 BLAKE2B 0890f800154cb95683ec3a4d14fee8e716bb77b8d8a47a3cf244b5cf074fe19e512032dc949ff816bdd4a2d6054c4f02c210ffc33ffb72265d1269af89ed0dfd SHA512 41b506e8e7c29421152cc61555f86f520f97b9ef207386a4a3a07451629abef6426b0283d355f177cad296d260a79bb6854f38e8a574ace80be52c6ec698062d
EBUILD firefox-108.0.2.ebuild 38414 BLAKE2B 002d5abf568068610b4fe03ab8a63bffa8fb803d921dfba84bb952cef6fb1a591ceecc1ab6adabcb176deee3d24deb797930a3fec0841bb1f6e729e662351fae SHA512 aa0001426a0d8e9d969d14085da57c3cb54ea35218eae7ec2d69918d5ff61099a1c5fcc82214b25e9dfbfe04b408afe4db9b54624f401cfe8cb4a49ea6a33d3d
-EBUILD firefox-109.0.ebuild 38533 BLAKE2B 6f692c77ad77dd0c3f0864167f11f959ff119b07ca246acb75272066c09706ff20bbc58cfff989b653ad19ca3eb4450b8f4a6f7272b82deaebc18f8c7688af5a SHA512 68d5ad5a2b2e4f939637c59b60f6882b553e98b724e376f93f67dccabe9bed6351efc3e33a84829b68f985e568869fe783204bce3e3aaf6f95e54b69b26cb814
+EBUILD firefox-109.0.ebuild 40057 BLAKE2B 4680ff111100df6cd9ad3bb2b02b88b88e0d23d4f4bd0b452986080410ac9fb850dfaad802b122d6e5f30cc9f69f5de182174715fcbf073f3eb6ff41d59e4021 SHA512 51101827b2b94bf18de52c49541747a0b0a775a84d6d458db02f5b3f45c3682ebc59af71d365708958efec58905b0dd864f9efeb7aa6a722c1784357b5f9f859
MISC metadata.xml 2219 BLAKE2B 064f486eecd2a66ef4c9cccef46803f877039bf16bc40b699a48e28e04e816d0ad434ce65ae2e056e1a4126a67a7dd7eff16040276159c1f5aa8966b1c0d7b6c SHA512 522b09ffc2857553e240b1e7c82c11ccc281dd87c720c6292ec9314b91319e0a55ca2838f17e878f5c1e58e4f22caa1b0c3b90506b65b350beff06f3f397d897
diff --git a/www-client/firefox/firefox-109.0.ebuild b/www-client/firefox/firefox-109.0.ebuild
index c2e92bead6a2..e6d4ce7a40de 100644
--- a/www-client/firefox/firefox-109.0.ebuild
+++ b/www-client/firefox/firefox-109.0.ebuild
@@ -88,7 +88,10 @@ BDEPEND="${PYTHON_DEPS}
sys-devel/clang:15
sys-devel/llvm:15
clang? (
- sys-devel/lld:15
+ || (
+ sys-devel/lld:15
+ sys-devel/mold
+ )
virtual/rust:0/llvm-15
pgo? ( =sys-libs/compiler-rt-sanitizers-15*[profile] )
)
@@ -97,7 +100,10 @@ BDEPEND="${PYTHON_DEPS}
sys-devel/clang:14
sys-devel/llvm:14
clang? (
- sys-devel/lld:14
+ || (
+ sys-devel/lld:14
+ sys-devel/mold
+ )
virtual/rust:0/llvm-14
pgo? ( =sys-libs/compiler-rt-sanitizers-14*[profile] )
)
@@ -227,7 +233,7 @@ llvm_check_deps() {
return 1
fi
- if use clang ; then
+ if use clang && tc-ld-is-lld ; then
if ! has_version -b "sys-devel/lld:${LLVM_SLOT}" ; then
einfo "sys-devel/lld:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..." >&2
return 1
@@ -427,6 +433,40 @@ mozconfig_use_with() {
mozconfig_add_options_ac "$(use ${1} && echo +${1} || echo -${1})" "${flag}"
}
+# This is a straight copypaste from toolchain-funcs.eclass's 'tc-ld-is-lld', and is temporarily
+# placed here until toolchain-funcs.eclass gets an official support for mold linker.
+# Please see:
+# https://github.com/gentoo/gentoo/pull/28366 ||
+# https://github.com/gentoo/gentoo/pull/28355
+tc-ld-is-mold() {
+ local out
+
+ # Ensure ld output is in English.
+ local -x LC_ALL=C
+
+ # First check the linker directly.
+ out=$($(tc-getLD "$@") --version 2>&1)
+ if [[ ${out} == *"mold"* ]] ; then
+ return 0
+ fi
+
+ # Then see if they're selecting mold via compiler flags.
+ # Note: We're assuming they're using LDFLAGS to hold the
+ # options and not CFLAGS/CXXFLAGS.
+ local base="${T}/test-tc-linker"
+ cat <<-EOF > "${base}.c"
+ int main() { return 0; }
+ EOF
+ out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1)
+ rm -f "${base}"*
+ if [[ ${out} == *"mold"* ]] ; then
+ return 0
+ fi
+
+ # No mold here!
+ return 1
+}
+
virtwl() {
debug-print-function ${FUNCNAME} "$@"
@@ -486,7 +526,7 @@ pkg_setup() {
llvm_pkg_setup
- if use clang && use lto ; then
+ if use clang && use lto && tc-ld-is-lld ; then
local version_lld=$(ld.lld --version 2>/dev/null | awk '{ print $2 }')
[[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
[[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
@@ -856,13 +896,18 @@ src_configure() {
if use lto ; then
if use clang ; then
- # Upstream only supports lld when using clang
- mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
+ # Upstream only supports lld or mold when using clang.
+ if tc-ld-is-mold ; then
+ mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
+ else
+ mozconfig_add_options_ac "forcing ld=lld due to USE=clang and USE=lto" --enable-linker=lld
+ fi
mozconfig_add_options_ac '+lto' --enable-lto=cross
else
- # ThinLTO is currently broken, see bmo#1644409
+ # ThinLTO is currently broken, see bmo#1644409.
+ # mold does not support gcc+lto combination.
mozconfig_add_options_ac '+lto' --enable-lto=full
mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
fi
@@ -878,10 +923,19 @@ src_configure() {
else
# Avoid auto-magic on linker
if use clang ; then
- # This is upstream's default
- mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
+ # lld is upstream's default
+ if tc-ld-is-mold ; then
+ mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
+ else
+ mozconfig_add_options_ac "forcing ld=lld due to USE=clang" --enable-linker=lld
+ fi
+
else
- mozconfig_add_options_ac "linker is set to bfd" --enable-linker=bfd
+ if tc-ld-is-mold ; then
+ mozconfig_add_options_ac "using ld=mold due to system selection" --enable-linker=mold
+ else
+ mozconfig_add_options_ac "linker is set to bfd due to USE=-clang" --enable-linker=bfd
+ fi
fi
fi