diff options
-rw-r--r-- | libre/iceweasel/PKGBUILD | 31 |
1 files changed, 18 insertions, 13 deletions
diff --git a/libre/iceweasel/PKGBUILD b/libre/iceweasel/PKGBUILD index c55b0a190..6b413a0a1 100644 --- a/libre/iceweasel/PKGBUILD +++ b/libre/iceweasel/PKGBUILD @@ -133,10 +133,8 @@ validpgpkeys+=('3954A7AB837D0EA9CFA9798925DB7D9B5A8D4B40') # bill-auger # disable PGO for 32-bit arches -_should_skip_pgo_armv7h=1 # disable for armv7h -_should_skip_pgo_i686=1 # disable for i686 -_should_skip_pgo_x86_64=0 # disable for x86_64 -eval "_should_skip_pgo=\$_should_skip_pgo_${CARCH}" +_should_skip_pgo=0 # for x86_64 +[[ "${CARCH}" != 'armv7h' && "${CARCH}" != 'i686' ]] || _should_skip_pgo=1 ## helpers ## @@ -163,7 +161,7 @@ _check_build_config() { done if (( ${#antifeatures[@]} )) then echo "Some anti-features are not disabled in build configuration files, aborting:" - for key in ${antifeatures[@]} ; do echo " - ${key} is enabled" ; done ; + for key in ${antifeatures[@]} ; do echo " - ${key} is enabled" ; done ; return 1 fi @@ -251,7 +249,7 @@ ac_add_options --disable-eme END - # FIXME: FTBS with cbindgen > 0.23 (currrently 0.24) + # FIXME: FTBS with cbindgen > 0.23 (currently 0.24) # https://bugzilla.mozilla.org/show_bug.cgi?id=1773259 sed -i '/const uint64_t ROOT_CLIP_CHAIN = ~0;/d' gfx/webrender_bindings/webrender_ffi.h @@ -297,6 +295,9 @@ ac_add_options --disable-linker=lld ac_add_options --enable-linker=bfd ac_add_options --disable-lto ac_add_options --disable-rust-simd +ac_add_options --enable-strip +ac_add_options --disable-debug +ac_add_options --disable-debug-symbols export CC=gcc-10 export CXX=g++-10 export AR=gcc-ar-10 @@ -410,9 +411,9 @@ END # Removing URL parameters that let DuckDuckGo know the place in UI # the search was ran from (like address bar, context menu, etc.) local jq_cmd='del(.chrome_settings_overrides.search_provider.params)' - jq "${jq_cmd}" ddg/manifest.json > manifest.json.tmp + jq "${jq_cmd}" ddg/manifest.json > manifest.json.tmp ! diff manifest.json.tmp ddg/manifest.json > /dev/null - mv manifest.json.tmp ddg/manifest.json + mv manifest.json.tmp ddg/manifest.json # Delete unused search engine configs find -mindepth 1 -maxdepth 1 \ @@ -498,6 +499,10 @@ build() { export RUSTFLAGS="-Cdebuginfo=0" ;; i686) + # -fno-plt with cross-LTO -> LLVM ERROR: Function Import: link error + CFLAGS="${CFLAGS/-fno-plt/}" + CXXFLAGS="${CXXFLAGS/-fno-plt/}" + # try hard to tell ld and rust not to use too much memory (no lto, no debug info, etc.) export RUSTFLAGS+=" -Cdebuginfo=0 -Clto=off" export LDFLAGS+=" -Wl,--no-keep-memory -Wl,--reduce-memory-overheads" @@ -560,11 +565,11 @@ END xvfb-run -s "-screen 0 1920x1080x24 -nolisten local" \ ./mach python build/pgo/profileserver.py - stat -c "Profile data found (%s bytes)" merged.profdata - test -s merged.profdata + stat -c "Profile data found (%s bytes)" merged.profdata + test -s merged.profdata - stat -c "Jar log found (%s bytes)" jarlog - test -s jarlog + stat -c "Jar log found (%s bytes)" jarlog + test -s jarlog echo "Removing instrumented browser..." ./mach clobber @@ -582,7 +587,7 @@ END ## sanity checks ## # each of the [ARCH-SPECIFIC BUILD CONFIG] branches above should have created .mozconfig - [[ ! -f .mozconfig ]] && echo "cannot continue without a .mozconfig file" && return 1 + [[ -f .mozconfig ]] || ! echo "cannot continue without a .mozconfig file" || return 1 _check_build_config |