Gentoo Archives: gentoo-commits

From: Thomas Deutschmann <whissi@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: www-client/firefox/
Date: Fri, 05 Feb 2021 18:34:02
Message-Id: 1612549837.5157ea485742d977868e7bd15f0f0451ea3e6a18.whissi@gentoo
1 commit: 5157ea485742d977868e7bd15f0f0451ea3e6a18
2 Author: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org>
3 AuthorDate: Fri Feb 5 15:14:57 2021 +0000
4 Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
5 CommitDate: Fri Feb 5 18:30:37 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5157ea48
7
8 www-client/firefox: add rust-1.49 llvm version workaround
9
10 Bug: https://bugs.gentoo.org/768543
11 Package-Manager: Portage-3.0.14, Repoman-3.0.2
12 Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org>
13 Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>
14
15 www-client/firefox/firefox-78.7.0.ebuild | 16 +++++++++++++---
16 www-client/firefox/firefox-85.0-r1.ebuild | 16 +++++++++++++---
17 2 files changed, 26 insertions(+), 6 deletions(-)
18
19 diff --git a/www-client/firefox/firefox-78.7.0.ebuild b/www-client/firefox/firefox-78.7.0.ebuild
20 index affbae00657..42da6703de5 100644
21 --- a/www-client/firefox/firefox-78.7.0.ebuild
22 +++ b/www-client/firefox/firefox-78.7.0.ebuild
23 @@ -408,9 +408,19 @@ pkg_setup() {
24 [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
25 [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
26
27 - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
28 - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
29 - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
30 + # temp fix for https://bugs.gentoo.org/768543
31 + # we can assume that rust 1.49.0 always uses llvm 11
32 + local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }')
33 + [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}")
34 + [[ -z ${version_rust} ]] && die "Failed to read version from rustc!"
35 +
36 + if ver_test "${version_rust}" -eq "1.49" ; then
37 + local version_llvm_rust="11"
38 + else
39 + local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
40 + [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
41 + [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
42 + fi
43
44 if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
45 eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."
46
47 diff --git a/www-client/firefox/firefox-85.0-r1.ebuild b/www-client/firefox/firefox-85.0-r1.ebuild
48 index 630048c6cb7..d15b63ab4c6 100644
49 --- a/www-client/firefox/firefox-85.0-r1.ebuild
50 +++ b/www-client/firefox/firefox-85.0-r1.ebuild
51 @@ -404,9 +404,19 @@ pkg_setup() {
52 [[ -n ${version_lld} ]] && version_lld=$(ver_cut 1 "${version_lld}")
53 [[ -z ${version_lld} ]] && die "Failed to read ld.lld version!"
54
55 - local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
56 - [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
57 - [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
58 + # temp fix for https://bugs.gentoo.org/768543
59 + # we can assume that rust 1.49.0 always uses llvm 11
60 + local version_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'release:' | awk '{ print $2 }')
61 + [[ -n ${version_rust} ]] && version_rust=$(ver_cut 1-2 "${version_rust}")
62 + [[ -z ${version_rust} ]] && die "Failed to read version from rustc!"
63 +
64 + if ver_test "${version_rust}" -eq "1.49" ; then
65 + local version_llvm_rust="11"
66 + else
67 + local version_llvm_rust=$(rustc -Vv 2>/dev/null | grep -F -- 'LLVM version:' | awk '{ print $3 }')
68 + [[ -n ${version_llvm_rust} ]] && version_llvm_rust=$(ver_cut 1 "${version_llvm_rust}")
69 + [[ -z ${version_llvm_rust} ]] && die "Failed to read used LLVM version from rustc!"
70 + fi
71
72 if ver_test "${version_lld}" -ne "${version_llvm_rust}" ; then
73 eerror "Rust is using LLVM version ${version_llvm_rust} but ld.lld version belongs to LLVM version ${version_lld}."