summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authordr460nf1r32021-12-14 07:46:53 +0100
committerdr460nf1r32021-12-14 07:46:53 +0100
commit0f291b2b95880f0ee6cb0e98c22942299ad8ce15 (patch)
treed6f2dae711bcd7d5599194104784e7a203a23d5f
parent4e1fbbba6b35988ce18674a329115c9cf1f27886 (diff)
downloadaur-0f291b2b95880f0ee6cb0e98c22942299ad8ce15.tar.gz
Redo some stuff
-rw-r--r--.SRCINFO19
-rw-r--r--PKGBUILD99
2 files changed, 46 insertions, 72 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 7cb0de1b62e8..709d15ba6ff3 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -17,9 +17,10 @@ pkgbase = firedragon
makedepends = mesa
makedepends = imake
makedepends = inetutils
- makedepends = xorg-server-xvfb
- makedepends = rust
makedepends = ccache
+ makedepends = rust
+ makedepends = xorg-server-xwayland
+ makedepends = xorg-server-xvfb
makedepends = autoconf2.13
makedepends = clang
makedepends = llvm
@@ -34,27 +35,27 @@ pkgbase = firedragon
makedepends = binutils
makedepends = lld
makedepends = dump_syms
+ makedepends = wasi-compiler-rt
+ makedepends = wasi-libc
+ makedepends = wasi-libc++
+ makedepends = wasi-libc++abi
depends = gtk3
depends = libxt
depends = mime-types
depends = dbus-glib
depends = ffmpeg
depends = nss
- depends = nspr
depends = ttf-font
depends = libpulse
- depends = libwebp
+ depends = aom
+ depends = harfbuzz
+ depends = graphite
depends = libvpx
depends = libjpeg
depends = zlib
depends = icu
depends = libevent
depends = pipewire
- depends = aom
- depends = harfbuzz
- depends = graphite
- depends = dav1d
- depends = kfiredragonhelper
optdepends = firejail-git: Sandboxing the browser using the included profiles
optdepends = profile-sync-daemon: Load the browser profile into RAM
optdepends = whoogle: Searching the web using a locally running Whoogle instance
diff --git a/PKGBUILD b/PKGBUILD
index 1da52de232bc..f0f3fc70f73a 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -12,13 +12,13 @@ backup=('usr/lib/firedragon/firedragon.cfg'
'usr/lib/firedragon/distribution/policies.json')
license=(MPL GPL LGPL)
url="https://gitlab.com/dr460nf1r3/settings/"
-depends=(gtk3 libxt mime-types dbus-glib ffmpeg nss nspr ttf-font libpulse
- libwebp libvpx libjpeg zlib icu libevent pipewire aom harfbuzz
- graphite dav1d kfiredragonhelper)
-makedepends=(unzip zip diffutils yasm mesa imake inetutils xorg-server-xvfb
- rust ccache autoconf2.13 clang llvm jack nodejs cbindgen nasm
- python-setuptools python-psutil python-zstandard git binutils lld dump_syms wasi-compiler-rt wasi-libc wasi-libc++ wasi-libc++abi
- xorg-server-xwayland python-pip)
+depends=(gtk3 libxt mime-types dbus-glib ffmpeg nss ttf-font libpulse
+ aom harfbuzz graphite libvpx libjpeg zlib icu libevent pipewire)
+makedepends=(unzip zip diffutils yasm mesa imake inetutils ccache
+ rust xorg-server-xwayland xorg-server-xvfb
+ autoconf2.13 clang llvm jack nodejs cbindgen nasm
+ python-setuptools python-psutil python-zstandard git binutils
+ lld dump_syms wasi-compiler-rt wasi-libc wasi-libc++ wasi-libc++abi)
optdepends=('firejail-git: Sandboxing the browser using the included profiles'
'profile-sync-daemon: Load the browser profile into RAM'
'whoogle: Searching the web using a locally running Whoogle instance'
@@ -63,7 +63,6 @@ prepare() {
echo "---- Patching for KDE"
patch -Np1 -i ${_patches_dir}/kde/mozilla-nongnome-proxies.patch
patch -Np1 -i ${_patches_dir}/kde/mozilla-kde.patch
- #patch -Np1 -i ${_patches_dir}/kde/firefox-kde.patch Currently broken with PGO
# Ubuntu patches
echo "---- Misc patches"
@@ -75,8 +74,14 @@ prepare() {
# Gentoo patches
echo "---- Gentoo patches"
patch -Np1 -i ${_patches_dir}/gentoo/0021-bmo-1516081-Disable-watchdog-during-PGO-builds.patch
- patch -Np1 -i ${_patches_dir}/gentoo/0029-LTO-Only-enable-LTO-for-Rust-when-complete-build-use.patch
-
+ patch -Np1 -i ${_patches_dir}/gentoo/0026-LTO-Only-enable-LTO-for-Rust-when-complete-build-use.patch
+ patch -Np1 -i ${_patches_dir}/gentoo/0002-Fortify-sources-properly.patch
+ patch -Np1 -i ${_patches_dir}/gentoo/0008-bmo-878089-Don-t-fail-when-TERM-is-not-set.patch
+ patch -Np1 -i ${_patches_dir}/gentoo/0022-bmo-1196777-Set-GDK_FOCUS_CHANGE_MASK.patch
+ patch -Np1 -i ${_patches_dir}/gentoo/0027-Make-elfhack-use-toolchain.patch
+ patch -Np1 -i ${_patches_dir}/gentoo/0029-Enable-FLAC-on-platforms-without-ffvpx-via-ffmpeg.patch
+ patch -Np1 -i ${_patches_dir}/gentoo/0030-bmo-1670333-OpenH264-Fix-decoding-if-it-starts-on-no.patch
+ patch -Np1 -i ${_patches_dir}/gentoo/0031-bmo-1663844-OpenH264-Allow-using-OpenH264-GMP-decode.patch
# Use more system libs
echo "---- Patching for system libs"
patch -Np1 -i ${_patches_dir}/gentoo/0004-bmo-847568-Support-system-harfbuzz.patch
@@ -94,18 +99,12 @@ prepare() {
# Debian patch to enable global menubar
patch -Np1 -i ${_patches_dir}/librewolf/unity-menubar.patch
- # Custom link in about dialogue
- patch -Np1 -i ${_patches_dir}/librewolf/about-dialog.patch
-
# Disabling Pocket
patch -Np1 -i ${_patches_dir}/sed-patches/disable-pocket.patch
# Remove Mozilla VPN ads
patch -Np1 -i ${_patches_dir}/librewolf/mozilla-vpn-ad.patch
- # Allow overriding the color scheme light/dark preference with RFP (deprecated, probably dropped soon)
- # patch -Np1 -i ${_patches_dir}/librewolf/allow_dark_preference_with_rfp.patch
-
# Remove Internal Plugin Certificates
# => breaks profiled builds since 90.0, it seems
# patch -Np1 -i ${_patches_dir}/sed-patches/remove-internal-plugin-certs.patch
@@ -149,36 +148,30 @@ ac_add_options --enable-application=browser
mk_add_options MOZ_OBJDIR=${PWD@Q}/obj
ac_add_options --prefix=/usr
-ac_add_options --enable-linker=lld
ac_add_options --enable-release
ac_add_options --enable-hardening
ac_add_options --enable-rust-simd
ac_add_options --with-ccache
-export AR=llvm-ar
+ac_add_options --enable-default-toolkit=cairo-gtk3-wayland
+ac_add_options --with-wasi-sysroot=/usr/share/wasi-sysroot
export CC='clang'
export CXX='clang++'
-export MOZ_APP_REMOTINGNAME=$_pkgname
-export MOZ_REQUIRE_SIGNING=
-export NM=llvm-nm
-export OBJCOPY='/usr/bin/llvm-objcopy'
-export RANLIB=llvm-ranlib
-export STRIP=llvm-strip
# Branding
ac_add_options --enable-update-channel=release
ac_add_options --with-app-name=${pkgname}
-ac_add_options --with-app-basename='${_pkgname}'
-ac_add_options --with-branding=browser/branding/firedragon
+ac_add_options --with-app-basename=${_pkgname}
+ac_add_options --with-branding=browser/branding/${pkgname}
ac_add_options --with-distribution-id=org.garudalinux
ac_add_options --with-unsigned-addon-scopes=app,system
ac_add_options --allow-addon-sideload
+export MOZ_REQUIRE_SIGNING=1
+export MOZ_ADDON_SIGNING=1
+export MOZ_APP_REMOTINGNAME=${pkgname}
# System libraries
-ac_add_options --disable-libproxy
-ac_add_options --enable-system-pixman
-#ac_add_options --with-system-av1 breaks build as of 13.12.
-ac_add_options --with-system-ffi
-#ac_add_options --with-system-graphite2 breaks build as of 13.12
+#ac_add_options --with-system-av1
+#ac_add_options --with-system-graphite2
ac_add_options --with-system-harfbuzz
ac_add_options --with-system-icu
ac_add_options --with-system-jpeg
@@ -186,19 +179,28 @@ ac_add_options --with-system-libevent
ac_add_options --with-system-libvpx
ac_add_options --with-system-nspr
ac_add_options --with-system-nss
-ac_add_options --with-system-webp
ac_add_options --with-system-zlib
# Features
ac_add_options --disable-crashreporter
+ac_add_options --disable-debug
+ac_add_options --disable-debug-js-modules
+ac_add_options --disable-debug-symbols
ac_add_options --disable-gpsd
+ac_add_options --disable-ipdl-tests
+ac_add_options --disable-necko-wifi
+ac_add_options --disable-rust-tests
+ac_add_options --disable-synth-speechd
ac_add_options --disable-tests
+ac_add_options --disable-trace-logging
ac_add_options --disable-updater
+ac_add_options --disable-warnings-as-errors
+ac_add_options --disable-webspeech
+ac_add_options --disable-webspeechtestbackend
ac_add_options --enable-alsa
ac_add_options --enable-jack
ac_add_options --enable-pulseaudio
ac_add_options --enable-strip
-ac_add_options --with-wasi-sysroot=/usr/share/wasi-sysroot
# Disables crash reporting, telemetry and other data gathering tools
mk_add_options MOZ_CRASHREPORTER=0
@@ -249,34 +251,18 @@ build() {
export MOZ_NOSPAM=1
export MOZBUILD_STATE_PATH="$srcdir/mozbuild"
- export MOZ_ENABLE_FULL_SYMBOLS=1
export MACH_USE_SYSTEM_PYTHON=1
# LTO needs more open files
ulimit -n 4096
- # -fno-plt with cross-LTO causes obscure LLVM errors
- # LLVM ERROR: Function Import: link error
- CFLAGS="${CFLAGS/-fno-plt/}"
- CXXFLAGS="${CXXFLAGS/-fno-plt/}"
-
# Do 3-tier PGO
echo "Building instrumented browser..."
-if [[ $CARCH == 'aarch64' ]]; then
-
- cat >.mozconfig ../mozconfig - <<END
-ac_add_options --enable-profile-generate
-END
-
-else
-
cat >.mozconfig ../mozconfig - <<END
ac_add_options --enable-profile-generate=cross
END
-fi
-
./mach build
echo "Profiling instrumented browser..."
@@ -297,18 +283,6 @@ fi
echo "Building optimized browser..."
-if [[ $CARCH == 'aarch64' ]]; then
-
- cat >.mozconfig ../mozconfig - <<END
-ac_add_options --enable-lto
-ac_add_options --enable-profile-use
-ac_add_options --with-pgo-profile-path=${PWD@Q}/merged.profdata
-ac_add_options --with-pgo-jarlog=${PWD@Q}/jarlog
-ac_add_options --enable-linker=lld
-END
-
-else
-
cat >.mozconfig ../mozconfig - <<END
ac_add_options --enable-lto=cross
ac_add_options --enable-profile-use=cross
@@ -319,8 +293,6 @@ ac_add_options --disable-elf-hack
ac_add_options --disable-bootstrap
END
-fi
-
./mach build
echo "Building symbol archive..."
@@ -330,6 +302,7 @@ fi
package() {
cd firefox-$pkgver
DESTDIR="$pkgdir" ./mach install
+ rm "$pkgdir"/usr/lib/${pkgname}/pingsender
install -Dvm644 "$srcdir/settings/$pkgname.psd" "$pkgdir/usr/share/psd/browsers/$pkgname"