From c6b738b335ec93f0e4c72d7226f0cfd7a862a7eb Mon Sep 17 00:00:00 2001 From: gryf Date: Thu, 3 Jun 2021 17:34:12 +0200 Subject: [PATCH] Bump to 29.3.1 --- www-client/webbrowser/Manifest | 1 + .../webbrowser/webbrowser-29.3.1.ebuild | 246 ++++++++++++++++++ 2 files changed, 247 insertions(+) create mode 100644 www-client/webbrowser/webbrowser-29.3.1.ebuild diff --git a/www-client/webbrowser/Manifest b/www-client/webbrowser/Manifest index dd095ef..416b86c 100644 --- a/www-client/webbrowser/Manifest +++ b/www-client/webbrowser/Manifest @@ -1,4 +1,5 @@ AUX icon/webbrowser.desktop 405 BLAKE2B 1e5222a0bf1cbd14fa2f1a9752a4c7203ee133cf4e5365528e046832efe71a63c8501c1830ff8617fc17374b67a0fbf4ceba3ff7e04508642d5fe0d6d52956b7 SHA512 9663f243084cffe1f44a2635d90176727258c8fa2ea62f8d9406c7d9b8ef4f89bb2e17f209c2c3b324e9e79f12e1054e968cda24d00655cb7207da56b68ccaca EBUILD webbrowser-29.2.0.ebuild 5873 BLAKE2B 169afd3aef50b6fb26a5c10e8821f485433728a21c3539de0a650b8506175911d47fb4350bd84493dbae4debe510069b9d182409d5691745b955eb095cb369ab SHA512 7b7dbcf7c94d0684da1783f3a080ae5c4d3184885184dc5f570eb21b755a00ec931aa8c6301deb8404d3bae49ed63bd70f383ebe5143123415ef944052cede7f EBUILD webbrowser-29.3.0.ebuild 5875 BLAKE2B 38ace832debaed73e9ce48df4fc12019af10eef95126606070c1823970a3727be2b69b9c2d71444aea5195d2dbdb657f6797ac1a318209f4398eecd51ae770b9 SHA512 1e3cc01054a67d8c398ad34b898e6b476852c52cf7a4be90cf28cf9dadddcb5a5d9e93e7ab19798f4659326811c9fc2f971a1d9faab0b543ab85884f49b01d26 +EBUILD webbrowser-29.3.1.ebuild 5875 BLAKE2B 38ace832debaed73e9ce48df4fc12019af10eef95126606070c1823970a3727be2b69b9c2d71444aea5195d2dbdb657f6797ac1a318209f4398eecd51ae770b9 SHA512 1e3cc01054a67d8c398ad34b898e6b476852c52cf7a4be90cf28cf9dadddcb5a5d9e93e7ab19798f4659326811c9fc2f971a1d9faab0b543ab85884f49b01d26 MISC metadata.xml 712 BLAKE2B abe743081a4b259fb0c5de8db0d69d22cce37f13d6dd5db2b87155ee51993925b9533b6c5af66a16571bf0b293a05deae1a0c2a0170d1f12d888ea985b91a4b5 SHA512 d44726d6209ee32c0e80ea55b9bd091bd3e37248cdfea60fb1274bfe0a1ee530793b34d5f821a3b58408b9623bbef8c3bfbc64302785e31b6f0296a6a1702932 diff --git a/www-client/webbrowser/webbrowser-29.3.1.ebuild b/www-client/webbrowser/webbrowser-29.3.1.ebuild new file mode 100644 index 0000000..42641f2 --- /dev/null +++ b/www-client/webbrowser/webbrowser-29.3.1.ebuild @@ -0,0 +1,246 @@ +EAPI=7 + +REQUIRED_BUILDSPACE='16G' + +inherit webbrowser-1 git-r3 flag-o-matic pax-utils desktop + +KEYWORDS="~x86 ~amd64" +DESCRIPTION="Webbrowser - fork of Pale Moon" +HOMEPAGE="https://git.nuegia.net/webbrowser.git" + +SLOT="0" +LICENSE="MPL-2.0 GPL-2 LGPL-2.1" +IUSE=" + +devtools + +gtk2 + -gtk3 + jack + +jemalloc + +optimize + -pulseaudio + +system-bz2 + +system-jpeg + +system-libevent + +system-libvpx + +system-zlib + +threads + -valgrind + -webrtc +" + +EGIT_REPO_URI="https://git.nuegia.net/webbrowser.git" +EGIT_COMMIT="v${PV}" + +DEPEND=" + >=sys-devel/autoconf-2.13:2.1 + dev-lang/python:2.7 + >=dev-lang/perl-5.6 + dev-lang/yasm +" + +RDEPEND=" + x11-libs/libXt + app-arch/zip + media-libs/freetype + media-libs/fontconfig + + optimize? ( sys-libs/glibc ) + + valgrind? ( dev-util/valgrind ) + + gtk2? ( >=x11-libs/gtk+-2.18.0:2 ) + gtk3? ( >=x11-libs/gtk+-3.4.0:3 ) + + media-libs/alsa-lib + pulseaudio? ( media-sound/pulseaudio ) + + media-video/ffmpeg[x264] + + system-libvpx? ( media-libs/libvpx ) + system-libevent? ( dev-libs/libevent ) + system-jpeg? ( virtual/jpeg ) + system-zlib? ( sys-libs/zlib ) + system-bz2? ( app-arch/bzip2 ) + + jack? ( virtual/jack ) +" + +REQUIRED_USE=" + jemalloc? ( !valgrind ) + ^^ ( gtk2 gtk3 ) +" + +src_prepare() { + # Ensure that our plugins dir is enabled by default: + sed -i -e "s:/usr/lib/mozilla/plugins:/usr/lib/nsbrowser/plugins:" \ + "${S}/platform/xpcom/io/nsAppFileLocationProvider.cpp" \ + || die "sed failed to replace plugin path for 32bit!" + sed -i -e "s:/usr/lib64/mozilla/plugins:/usr/lib64/nsbrowser/plugins:" \ + "${S}/platform/xpcom/io/nsAppFileLocationProvider.cpp" \ + || die "sed failed to replace plugin path for 64bit!" + + default +} + +src_configure() { + # Basic configuration: + mozconfig_init + + mozconfig_disable tests eme parental-controls accessibility gamepad + mozconfig_disable necko-wifi updater sync mozril-geoloc gconf + mozconfig_enable alsa + + if use optimize; then + O='-O2 -pipe -ftree-parallelize-loops=4 -lgomp -fopenmp -msse2 -mfpmath=sse' + mozconfig_enable "optimize=\"${O}\"" + filter-flags '-O*' '-msse2' '-mfpmath=sse' + else + mozconfig_disable optimize + fi + + if use threads; then + mozconfig_with pthreads + fi + + if use jack; then + mozconfig_enable jack + else + mozconfig_disable jack + fi + + if use jemalloc; then + mozconfig_enable jemalloc + fi + + if use valgrind; then + mozconfig_enable valgrind + fi + + if use gtk2; then + mozconfig_enable default-toolkit=\"cairo-gtk2\" + mozconfig_var __GTK_VERSION 2 + export MOZ_PKG_SPECIAL=2 + fi + + if use gtk3; then + mozconfig_enable default-toolkit=\"cairo-gtk3\" + mozconfig_var __GTK_VERSION 3 + export MOZ_PKG_SPECIAL=3 + fi + + if use system-libvpx; then + mozconfig_enable system-libvpx + else + mozconfig_disable system-libvpx + fi + + if use system-libevent; then + mozconfig_enable system-libevent + else + mozconfig_disable system-libevent + fi + + if use system-jpeg; then + mozconfig_enable system-jpeg + else + mozconfig_disable system-jpeg + fi + + if use system-zlib; then + mozconfig_enable system-zlib + else + mozconfig_disable system-zlib + fi + + if use system-bz2; then + mozconfig_enable system-bz2 + else + mozconfig_disable system-bz2 + fi + + if use pulseaudio; then + mozconfig_enable pulseaudio + else + mozconfig_disable pulseaudio + fi + + if use devtools; then + mozconfig_enable devtools + fi + + if use webrtc; then + mozconfig_enable webrtc + else + mozconfig_disable webrtc + fi + + # Enabling this causes xpcshell to hang during the packaging process, + # so disabling it until the cause can be tracked down. It most likely + # has something to do with the sandbox since the issue goes away when + # building with FEATURES="-sandbox -usersandbox". + mozconfig_disable precompiled-startupcache + + # Mainly to prevent system's NSS/NSPR from taking precedence over + # the built-in ones: + append-ldflags -Wl,-rpath="${EPREFIX}/usr/$(get_libdir)/webbrowser" + + export MOZBUILD_STATE_PATH="${WORKDIR}/mach_state" + mozconfig_opt PYTHON $(which python2) + mozconfig_opt AUTOCONF $(which autoconf-2.13) + mozconfig_opt MOZ_MAKE_FLAGS "\"${MAKEOPTS}\"" + # TODO: hardcoded ones + mozconfig_ac --x-libraries /usr/lib64 + mozconfig_var _BUILD_64 1 + mozconfig_opt AUTOCLOBBER 1 + + # Shorten obj dir to limit some errors linked to the path size hitting + # a kernel limit (127 chars): + mozconfig_opt MOZ_OBJDIR "@TOPSRCDIR@/o" + + # Disable mach notifications, which also cause sandbox access violations: + export MOZ_NOSPAM=1 +} + +src_compile() { + # Prevents portage from setting its own XARGS which messes with the + # build system checks: + # See: https://gitweb.gentoo.org/proj/portage.git/tree/bin/isolated-functions.sh + export XARGS="$(which xargs)" + + python2 "${S}/platform/mach" build || die +} + +src_install() { + # obj_dir changes depending on arch, compiler, etc: + local obj_dir="$(echo */config.log)" + obj_dir="${obj_dir%/*}" + + # Disable MPROTECT for startup cache creation: + pax-mark m "${obj_dir}"/dist/bin/xpcshell + + # Set the backspace behaviour to be consistent with the other platforms: + set_pref "browser.backspace_action" 0 + + # Gotta create the package, unpack it and manually install the files + # from there not to miss anything (e.g. the statusbar extension): + einfo "Creating the package..." + python2 "${S}/platform/mach" mozpackage || die + local extracted_dir="${T}/package" + mkdir -p "${extracted_dir}" + cd "${extracted_dir}" + einfo "Extracting the package..." + tar xjpf "${S}/${obj_dir}/dist/${P}.linux-${CTARGET_default%%-*}-2.tar.bz2" + einfo "Installing the package..." + local dest_libdir="/usr/$(get_libdir)" + mkdir -p "${D}/${dest_libdir}" + cp -rL "${PN}" "${D}/${dest_libdir}" + dosym "${dest_libdir}/${PN}/${PN}" "/usr/bin/${PN}" + einfo "Done installing the package." + + # Until JIT-less builds are supported, + # also disable MPROTECT on the main executable: + pax-mark m "${D}/${dest_libdir}/${PN}/"{webbrowser,webbrowser-bin,plugin-container} + + # Install icons and .desktop for menu entry: + install_branding_files +}