blob: 1b4a3810cb4500ccf8d805eee434c2c94dc15f0e (
plain) (
tree)
|
|
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=arcticfox
pkgver=45.1
pkgrel=0
pkgdesc="Arctic Fox web browser (fork of Firefox with PPC support)"
url="https://github.com/rmottola/Arctic-Fox/wiki"
arch="pmmx ppc ppc64 x86"
options="!check" # Disable tests.
license="MPL-2.0"
depends=""
makedepends="alsa-lib-dev bzip2-dev dbus-glib-dev gconf-dev gtk+2.0-dev
gtk+3.0-dev hunspell-dev icu-dev libevent-dev libidl-dev
libjpeg-turbo-dev libnotify-dev libogg-dev libtheora-dev libvorbis-dev
libxt-dev libxcomposite-dev mesa-dev nspr-dev automake libtool
pulseaudio-dev sqlite-dev startup-notification-dev autoconf2.13
bsd-compat-headers cmd:which openssl-dev sed yasm zip"
subpackages="$pkgname-dev"
source="arcticfox-$pkgver.tar.gz::https://github.com/rmottola/Arctic-Fox/archive/refs/tags/v$pkgver.tar.gz
mozconfig
https://www.python.org/ftp/python/2.7.15/Python-2.7.15.tar.xz
arcticfox.desktop
hunspell.patch
override-cxx-version.patch
stackwalk-x86-ppc.patch
"
builddir="$srcdir/Arctic-Fox-$pkgver"
_mozappdir="/usr/lib/$pkgname-$pkgver"
# Vendors its own NSS for now until upstream is compatible with latest versions
somask="libfreeblpriv3.so liblgpllibs.so libmozgtk.so libmozsqlite3.so
libnss3.so libnssckbi.so libnssdbm3.so libnssutil3.so libsmime3.so
libsoftokn3.so libssl3.so libxul.so"
ldpath="$_mozappdir"
unpack() {
default_unpack
[ -z $SKIP_PYTHON ] || return 0
msg "Killing all remaining hope for humanity and building Python 2..."
cd "$srcdir"
[ -d python ] && rm -r python
mkdir python
# 19:39 <+solar> just make the firefox build process build its own py2 copy
# 20:03 <calvin> TheWilfox: there's always violence
cd Python-2.7.15
./configure --prefix="$srcdir/python"
make -j $JOBS
# 6 tests failed:
# test__locale test_os test_posix test_re test_strptime test_time
# make test
make -j $JOBS install
}
prepare() {
default_prepare
cp "$srcdir"/mozconfig "$builddir"/mozconfig
echo "ac_add_options --host=\"$CHOST\"" >> "$builddir"/mozconfig
echo "ac_add_options --target=\"$CTARGET\"" >> "$builddir"/mozconfig
echo "mk_add_options MOZ_MAKE_FLAGS=\"-j$JOBS\"" >> "$builddir"/mozconfig
# Needed, see upstream https://github.com/rmottola/Arctic-Fox/issues/125
# on ppc, fails in NSFrameState::operator& without these flags
export CFLAGS="$CFLAGS -O1 -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"
export LDFLAGS="$LDFLAGS -Wl,-rpath,$_mozappdir"
# arch-specific configuration
case "$CARCH" in
pmmx|x86*|arm*)
echo "ac_add_options --disable-elf-hack" >> "$builddir"/mozconfig
;;
ppc)
export LDFLAGS="$LDFLAGS -latomic"
;;
ppc64)
echo "ac_add_options --enable-altivec" >> "$builddir"/mozconfig
;;
s390x)
echo "ac_add_options --disable-startupcache" >> "$builddir"/mozconfig
;;
esac
echo "ac_add_options --enable-optimize=\"$CFLAGS\"" >> "$builddir"/mozconfig
}
build() {
export CFLAGS="$CFLAGS -Wno-dangling-pointer -Wno-array-bounds -Wno-comment -Wno-maybe-uninitialized -Wno-misleading-indentation -Wno-multistatement-macros -Wno-stringop-overflow -Wno-unused-function -Wno-unused-value -Wno-ignored-qualifiers -Wno-deprecated-declarations -Wno-implicit-fallthrough -Wno-unused-but-set-variable -Wno-int-in-bool-context -Wno-stringop-overread -Wno-address -Wno-use-after-free"
export CXXFLAGS="$CFLAGS -Wno-class-memaccess -Wno-changes-meaning -Wno-subobject-linkage -Wno-return-local-addr -Wno-unused-local-typedefs"
export SHELL=/bin/sh
export BUILD_OFFICIAL=1
export MOZILLA_OFFICIAL=1
export USE_SHORT_LIBNAME=1
export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=system
export PATH="$PATH:$srcdir/python/bin"
export CXX="/usr/bin/g++ -std=gnu++17"
# set rpath so linker finds the libs
export UNIXCONFDIR="$srcdir"
./mach configure
# parallel make bug hit on gwyn (64 threads)
./mach build -j1 export
./mach build
}
package() {
export PATH="$PATH:$srcdir/python/bin"
DESTDIR="$pkgdir" ./mach install
for pngsize in 16 32 48; do
install -D -m644 \
"browser/branding/$pkgname/default$pngsize.png" \
"$pkgdir"/usr/share/icons/hicolor/${pngsize}x${pngsize}/apps/$pkgname.png
done
install -D -m644 "browser/branding/$pkgname/mozicon128.png" \
"$pkgdir"/usr/share/pixmaps/$pkgname.png
install -D -m644 $srcdir/$pkgname.desktop \
"$pkgdir"/usr/share/applications/$pkgname.desktop
}
dev() {
mkdir -p "$subpkgdir"/usr/lib "$subpkgdir"/usr/share
mv "$pkgdir"/usr/lib/$pkgname-devel-$pkgver \
"$subpkgdir"/usr/lib/
mv "$pkgdir"/usr/share/idl "$subpkgdir"/usr/share/
default_dev
}
sha512sums="0b24bc8cf201a78517c7934c119b1e21d511068e8ea06c8b7f5ce65e5867e9f091cc0c8c65b0f8c78e8637d27dd3d505126d355c8ca5693f1b0417020b838800 arcticfox-45.1.tar.gz
ce5312b4fcf07d0dd0496366f6e3be406ef19a389f67a3eb8e3df62232d9eb08ed1a5e212dee1725d907bb025bc3da19b6d0b0d97210893846eb8206890fe8de mozconfig
27ea43eb45fc68f3d2469d5f07636e10801dee11635a430ec8ec922ed790bb426b072da94df885e4dfa1ea8b7a24f2f56dd92f9b0f51e162330f161216bd6de6 Python-2.7.15.tar.xz
d4f9a2a64cb8c1e679a13429e62cfd2e8a44cf54896c2999258571ab990711fbc3d078ce655efd90437e60ef113af1e5277f416f5cf78dfea21f82c481f6929b arcticfox.desktop
50cc077df6d17358f5dcffcabb1a75087b58ac46f60d9d5fc8f2d407e93a26d89778e4c09a5203f2a55bc9f9ddb247f4482483d30f495bc9e3393fad37a322d7 hunspell.patch
bf63b06c030b388711554a4eff36fc50f2af802b59a9f1d7c5b42f11fcc1dd806d53980bdd89bf9518fc51ba25a812c892dfaf47e9d50b33a82ebad9462da92a override-cxx-version.patch
a0f97b8b3e5b0d93b155f1678a3d5984b52ede440202656d35237a6e7025b4a1315c114a1a87c3974d0d43b0f637e186b2be6422c44ba5f111ede53893e39c54 stackwalk-x86-ppc.patch"
|