abuild (3226B)
1 name=firefox 2 version=142.0.1 3 release=1 4 source="https://ftp.mozilla.org/pub/${name}/releases/${version}/source/${name}-${version}.source.tar.xz 5 visibility.patch 6 fix-target-detection.patch" 7 # fix-sqlite-vec-uint.patch" 8 9 build() { 10 cat > .mozconfig << EOF 11 ac_add_options --prefix=/usr 12 ac_add_options --libdir=/usr/lib 13 ac_add_options --enable-strip 14 ac_add_options --enable-release 15 ac_add_options --enable-rust-simd 16 ac_add_options --enable-audio-backends=alsa 17 ac_add_options --enable-install-strip 18 ac_add_options --enable-official-branding 19 ac_add_options --enable-application=browser 20 ac_add_options --enable-optimize 21 ac_add_options --with-system-ffi 22 ac_add_options --with-system-jpeg 23 ac_add_options --with-system-libvpx 24 ac_add_options --with-system-nspr 25 ac_add_options --with-system-nss 26 ac_add_options --with-system-pixman 27 ac_add_options --with-system-png 28 ac_add_options --with-system-webp 29 ac_add_options --with-system-zlib 30 ac_add_options --without-wasm-sandboxed-libraries 31 ac_add_options --disable-eme 32 ac_add_options --disable-tests 33 ac_add_options --disable-vtune 34 ac_add_options --disable-updater 35 ac_add_options --disable-jemalloc 36 ac_add_options --disable-elf-hack 37 ac_add_options --disable-callgrind 38 ac_add_options --disable-profiling 39 ac_add_options --disable-necko-wifi 40 ac_add_options --disable-crashreporter 41 ac_add_options --disable-accessibility 42 ac_add_options --disable-debug 43 ac_add_options --disable-debug-symbols 44 ac_add_options --disable-parental-controls 45 ac_add_options --disable-system-extension-dirs 46 ac_add_options --disable-default-browser-agent 47 ac_add_options --disable-backgroundtasks 48 ac_add_options --disable-webspeech 49 EOF 50 51 if [ -f $SPM_PKGDB/libx11 ] && [ ! -f $SPM_PKGDB/wayland ]; then 52 echo "ac_add_options --enable-default-toolkit=cairo-gtk3-x11-only" >> .mozconfig 53 elif [ -f $SPM_PKGDB/wayland ] && [ ! -f $SPM_PKGDB/libx11 ]; then 54 echo "ac_add_options --enable-default-toolkit=cairo-gtk3-wayland-only" >> .mozconfig 55 fi 56 57 if [ -e '/usr/bin/ccache' ]; then 58 echo 'ac_add_options --enable-ccache' >> .mozconfig 59 PATH=$(echo ${PATH} | awk -v RS=: -v ORS=: '/ccache/ {next} {print}' | sed 's/:*$//') 60 fi 61 62 export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none 63 export MOZBUILD_STATE_PATH=${PWD}/mozbuild 64 65 export CFLAGS="$CFLAGS -w" 66 export CXXFLAGS="$CXXFLAGS -w" 67 export LDFLAGS="$LDFLAGS -Wl,-rpath=/usr/lib/firefox,--enable-new-dtags" 68 export RUSTFLAGS="$RUSTFLAGS -Cdebuginfo=0" 69 export MOZ_DEBUG_FLAGS=-g0 70 export MOZ_NOSPAM=1 71 export CXXSTDLIB=c++ 72 73 ./mach build 74 ./mach install 75 76 mkdir -pv $PKG/usr/share/applications 77 mkdir -pv $PKG/usr/share/pixmaps 78 79 cat > $PKG/usr/share/applications/firefox.desktop << EOF 80 [Desktop Entry] 81 Encoding=UTF-8 82 Name=Firefox Web Browser 83 Comment=Browse the World Wide Web 84 GenericName=Web Browser 85 Exec=firefox %u 86 Terminal=false 87 Type=Application 88 Icon=firefox 89 Categories=GNOME;GTK;Network;WebBrowser; 90 MimeType=text/xml;text/mml;text/html;application/xhtml+xml;application/vnd.mozilla.xul+xml;x-scheme-handler/http;x-scheme-handler/https 91 StartupNotify=true 92 EOF 93 94 mkdir -p $PKG/usr/share/pixmaps 95 ln -sfv /usr/lib/firefox/browser/chrome/icons/default/default128.png \ 96 $PKG/usr/share/pixmaps/firefox.png 97 98 rm $PKG/usr/lib/firefox/firefox-bin 99 }