summaryrefslogtreecommitdiff
path: root/www-client/firefox/firefox-65.0.2.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'www-client/firefox/firefox-65.0.2.ebuild')
-rw-r--r--www-client/firefox/firefox-65.0.2.ebuild89
1 files changed, 66 insertions, 23 deletions
diff --git a/www-client/firefox/firefox-65.0.2.ebuild b/www-client/firefox/firefox-65.0.2.ebuild
index 7966a6c83ad8..e63fa5bcdcd1 100644
--- a/www-client/firefox/firefox-65.0.2.ebuild
+++ b/www-client/firefox/firefox-65.0.2.ebuild
@@ -30,9 +30,11 @@ fi
PATCH="${PN}-65.0-patches-04"
MOZ_HTTP_URI="https://archive.mozilla.org/pub/${PN}/releases"
-inherit check-reqs flag-o-matic toolchain-funcs eutils gnome2-utils llvm \
- mozcoreconf-v6 pax-utils xdg-utils autotools mozlinguas-v2 \
- virtualx
+LLVM_MAX_SLOT=8
+
+inherit check-reqs eapi7-ver flag-o-matic toolchain-funcs eutils \
+ gnome2-utils llvm mozcoreconf-v6 pax-utils xdg-utils \
+ autotools mozlinguas-v2 virtualx
DESCRIPTION="Firefox Web Browser"
HOMEPAGE="https://www.mozilla.com/firefox"
@@ -88,10 +90,10 @@ CDEPEND="
system-harfbuzz? ( >=media-libs/harfbuzz-1.4.2:0= >=media-gfx/graphite2-1.3.9-r1 )
system-icu? ( >=dev-libs/icu-60.2:= )
system-jpeg? ( >=media-libs/libjpeg-turbo-1.2.1 )
- system-libevent? ( >=dev-libs/libevent-2.0:0= )
+ system-libevent? ( >=dev-libs/libevent-2.0:0=[threads] )
system-libvpx? (
>=media-libs/libvpx-1.7.0:0=[postproc]
- <media-libs/libvpx-1.8
+ <media-libs/libvpx-1.8:0=[postproc]
)
system-sqlite? ( >=dev-db/sqlite-3.25.3:3[secure-delete,debug=] )
system-webp? ( >=media-libs/libwebp-1.0.1:0= )
@@ -114,12 +116,34 @@ DEPEND="${CDEPEND}
>=net-libs/nodejs-8.11.0
>=sys-devel/binutils-2.30
sys-apps/findutils
- >=sys-devel/llvm-4.0.1
- >=sys-devel/clang-4.0.1
- clang? (
- >=sys-devel/llvm-4.0.1[gold]
- >=sys-devel/lld-4.0.1
- pgo? ( >=sys-libs/compiler-rt-sanitizers-4.0.1[profile] )
+ || (
+ (
+ sys-devel/clang:8
+ !clang? ( sys-devel/llvm:8 )
+ clang? (
+ =sys-devel/lld-8*
+ sys-devel/llvm:8[gold]
+ pgo? ( =sys-libs/compiler-rt-sanitizers-8*[profile] )
+ )
+ )
+ (
+ sys-devel/clang:7
+ !clang? ( sys-devel/llvm:7 )
+ clang? (
+ =sys-devel/lld-7*
+ sys-devel/llvm:7[gold]
+ pgo? ( =sys-libs/compiler-rt-sanitizers-7*[profile] )
+ )
+ )
+ (
+ sys-devel/clang:6
+ !clang? ( sys-devel/llvm:6 )
+ clang? (
+ =sys-devel/lld-6*
+ sys-devel/llvm:6[gold]
+ pgo? ( =sys-libs/compiler-rt-sanitizers-6*[profile] )
+ )
+ )
)
pulseaudio? ( media-sound/pulseaudio )
>=virtual/cargo-1.30.0
@@ -146,7 +170,26 @@ if [[ -z $GMP_PLUGIN_LIST ]] ; then
fi
llvm_check_deps() {
- has_version "sys-devel/clang:${LLVM_SLOT}"
+ if ! has_version --host-root "sys-devel/clang:${LLVM_SLOT}" ; then
+ ewarn "sys-devel/clang:${LLVM_SLOT} is missing! Cannot use LLVM slot ${LLVM_SLOT} ..."
+ return 1
+ fi
+
+ if use clang ; then
+ if ! has_version --host-root "=sys-devel/lld-${LLVM_SLOT}*" ; then
+ ewarn "=sys-devel/lld-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..."
+ return 1
+ fi
+
+ if use pgo ; then
+ if ! has_version --host-root "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}*" ; then
+ ewarn "=sys-libs/compiler-rt-sanitizers-${LLVM_SLOT}* is missing! Cannot use LLVM slot ${LLVM_SLOT} ..."
+ return 1
+ fi
+ fi
+ fi
+
+ einfo "Will use LLVM slot ${LLVM_SLOT}!"
}
pkg_setup() {
@@ -319,10 +362,17 @@ src_configure() {
fi
if ! use cpu_flags_x86_avx2 ; then
- # due to a GCC bug, GCC will produce AVX2 instructions
- # even if the CPU doesn't support AVX2, https://gcc.gnu.org/ml/gcc-patches/2018-12/msg01142.html
- einfo "Disable IPA cdtor due to bug in GCC and missing AVX2 support -- triggered by USE=lto"
- append-ldflags -fdisable-ipa-cdtor
+ local _gcc_version_with_ipa_cdtor_fix="8.3"
+ local _current_gcc_version="$(gcc-major-version).$(gcc-minor-version)"
+
+ if ver_test "${_current_gcc_version}" -lt "${_gcc_version_with_ipa_cdtor_fix}" ; then
+ # due to a GCC bug, GCC will produce AVX2 instructions
+ # even if the CPU doesn't support AVX2, https://gcc.gnu.org/ml/gcc-patches/2018-12/msg01142.html
+ einfo "Disable IPA cdtor due to bug in GCC and missing AVX2 support -- triggered by USE=lto"
+ append-ldflags -fdisable-ipa-cdtor
+ else
+ einfo "No GCC workaround required, GCC version is already patched!"
+ fi
else
einfo "No GCC workaround required, system supports AVX2"
fi
@@ -425,13 +475,6 @@ src_configure() {
mozconfig_annotate '' --enable-rust-simd
fi
- # skia has no support for big-endian platforms
- if [[ $(tc-endian) == "big" ]] ; then
- mozconfig_annotate 'big endian target' --disable-skia
- else
- mozconfig_annotate '' --enable-skia
- fi
-
# use the gtk3 toolkit (the only one supported at this point)
# TODO: Will this result in automagic dependency on x11-libs/gtk+[wayland]?
mozconfig_annotate '' --enable-default-toolkit=cairo-gtk3