summaryrefslogtreecommitdiff
path: root/libre-testing/icecat/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'libre-testing/icecat/PKGBUILD')
-rw-r--r--libre-testing/icecat/PKGBUILD180
1 files changed, 180 insertions, 0 deletions
diff --git a/libre-testing/icecat/PKGBUILD b/libre-testing/icecat/PKGBUILD
new file mode 100644
index 000000000..d60144bde
--- /dev/null
+++ b/libre-testing/icecat/PKGBUILD
@@ -0,0 +1,180 @@
+# Maintainer: Márcio Silva <coadde@lavabit.com>
+# Contributor (Parabola): Luke Shumaker <lukeshu@sbcglobal.net>
+# Contributor (Parabola): fauno <fauno@kiwwwi.com.ar>
+# Contributor (Parabola): vando <facundo@esdebian.org>
+# Contributor (Parabola): André Silva <emulatorman@lavabit.com>
+
+# Maintainer (ConnochaetOS): Henry Jensen <hjensen@connochaetos.org>
+
+# Maintainer (Arch) : Ionut Biru <ibiru@archlinux.org>
+# Contributor (Arch): Jakub Schmidtke <sjakub@gmail.com>
+
+# Contributor: Figue <ffigue at gmail>
+# Thank you very much to the older contributors:
+# Contributor: evr <evanroman at gmail>
+# Contributor: Muhammad 'MJ' Jassim <UnbreakableMJ@gmail.com>
+
+# Version Configuration ##############################################
+
+_pgo=false
+
+pkgname=icecat
+pkgver=17.0.1
+pkgrel=2
+
+######################################################################
+
+if [[ -z $pkgbase ]]; then pkgbase=$pkgname; fi
+if $_pgo; then pkgname+='-pgo'; fi
+if [ "$pkgbase" != "$pkgname" ]; then
+ provides+=("$pkgbase=$pkgver")
+ conflicts+=("$pkgbase")
+fi
+
+pkgdesc="The GNUzilla web browser, based on Mozilla Firefox."
+arch=(
+ 'i686'
+ 'mips64el'
+ 'x86_64'
+)
+license=(
+ 'GPL2'
+ 'LGPL'
+ 'MPL'
+)
+depends=(
+ 'alsa-lib'
+ 'dbus-glib'
+ 'desktop-file-utils'
+ 'gtk2'
+ 'hicolor-icon-theme'
+ 'hunspell'
+ 'libevent'
+ 'libnotify'
+ 'libvpx'
+ 'libxt'
+ 'mime-types'
+ 'mozilla-common'
+ 'mozilla-searchplugins'
+ 'nss>=3.13.3'
+ 'sqlite'
+ 'startup-notification'
+)
+makedepends=(
+ 'autoconf2.13'
+ 'diffutils'
+ 'imagemagick'
+ 'imake'
+ 'libidl2'
+ 'librsvg'
+ 'libxslt'
+ 'mesa'
+ 'python2'
+ 'unzip'
+ 'wireless_tools'
+ 'zip'
+)
+[[ $CARCH != mips64el ]] && makedepends+=('yasm')
+if $_pgo; then
+ makedepends+=('xorg-server-xvfb')
+ options+=(!ccache)
+fi
+optdepends=('wireless_tools: Location detection via available WiFi networks')
+url=http://www.gnu.org/software/gnuzilla/
+install=firefox.install
+options=(!emptydirs)
+source=(ftp://ftp.gnu.org/gnu/gnuzilla/${pkgver::4}/$pkgname-$pkgver.tar.gz
+ mozilla-bug-756390.patch::https://bugzilla.mozilla.org/attachment.cgi?id=629706
+ bug-xulrunner-copy-stub.patch libre.patch mozconfig.pgo
+ mozconfig $pkgbase.desktop firefox-install-dir.patch vendor.js shared-libs.patch)
+md5sums=('c88a29aa92fc41a07e777a0e63ac5f7e'
+ '78bbfc17be8ef2104699875300a22316'
+ '3009b176cc5f9b1e416b1bf7c45b064b'
+ '6e9f9c6e8c63333e708d7d9e4f4ca161'
+ 'e4cd438a0b2a42dfb14bc7716e901e5f'
+ 'd71509923cfede3e634756fee899e492'
+ 'daa249d183fcf09942ff30db1b279f1e'
+ '150ac0fb3ac7b2114c8e8851a9e0516c'
+ '09428128596f92b46caaba5852738f8e'
+ '52e52f840a49eb1d14be1c0065b03a93')
+
+build() {
+ mv $pkgname-$pkgver mozilla-release
+ cd mozilla-release
+
+ cp ../mozconfig .mozconfig
+ if $_pgo; then cat ../mozconfig.pgo >> .mozconfig; fi
+ patch -Np1 -i ../firefox-install-dir.patch
+ patch -Np1 -i ../shared-libs.patch
+ patch -Np1 -i ../libre.patch
+ patch -Np1 -i ../bug-xulrunner-copy-stub.patch
+ patch -Np1 -i ../mozilla-bug-756390.patch
+
+ # Fix PRE_RELEASE_SUFFIX
+ sed -i '/^PRE_RELEASE_SUFFIX := ""/s/ ""//' \
+ browser/base/Makefile.in
+
+ # This is a bug, we should fix it.
+ if [[ $CARCH == mips64el ]]; then
+ # Fix MIPS N32 support.
+ sed -i 's/defined(_ABIO32)/(defined(_ABIO32) || defined(_ABIN32))/' \
+ js/src/assembler/wtf/Platform.h
+ # Disable JIT.
+ sed -ri 's/#define ENABLE_(JIT|ASSEMBLER) 1/#define ENABLE_\1 0/' \
+ js/src/assembler/wtf/Platform.h
+ sed -ri 's/ENABLE_(JIT|ASSEMBLER)=1/ENABLE_\1=0/' js/src/Makefile.in
+ echo 'ac_add_options --disable-methodjit' >> .mozconfig
+ echo 'ac_add_options --disable-tracejit' >> .mozconfig
+ echo 'ac_add_options --disable-jemalloc' >> .mozconfig
+ fi
+
+ export LDFLAGS="$LDFLAGS -Wl,-rpath,/usr/lib/$pkgbase"
+ export PYTHON="/usr/bin/python2"
+ export MOZ_MAKE_FLAGS="$MAKEFLAGS"
+ unset MAKEFLAGS
+
+ if $_pgo; then
+ export MOZ_PGO=1
+ export DISPLAY=:99
+ Xvfb -nolisten tcp -extension GLX -screen 0 1280x1024x24 $DISPLAY &
+ fi
+
+ _fail=0
+ make -f client.mk build || _fail=1
+
+ if $_pgo; then
+ kill $! || true
+ fi
+ return $_fail
+}
+
+package() {
+ cd mozilla-release
+ make -j1 -f client.mk DESTDIR="$pkgdir" install
+
+ install -Dm644 ../vendor.js "$pkgdir/usr/lib/$pkgbase/defaults/preferences/vendor.js"
+
+ brandingdir=browser/branding/unofficial
+ for i in 16 32 48; do
+ install -Dm644 $brandingdir/default$i.png \
+ "$pkgdir/usr/share/icons/hicolor/${i}x${i}/apps/$pkgbase.png"
+ done
+
+ install -Dm644 ../$pkgbase.desktop \
+ "$pkgdir/usr/share/applications/$pkgbase.desktop"
+
+ # Use system-provided dictionaries
+ rm -rf "$pkgdir"/usr/lib/$pkgbase/{dictionaries,hyphenation}
+ ln -s /usr/share/hunspell "$pkgdir/usr/lib/$pkgbase/dictionaries"
+ ln -s /usr/share/hyphen "$pkgdir/usr/lib/$pkgbase/hyphenation"
+ # use mozilla-searchplugins
+ rm -rf "$pkgdir"/usr/lib/$pkgbase/searchplugins
+ ln -s /usr/lib/mozilla/searchplugins "$pkgdir/usr/lib/$pkgbase/searchplugins"
+
+ # We don't want the development stuff
+ rm -r "$pkgdir"/usr/{include,lib/$pkgbase-devel,share/idl}
+
+ #workaround for now
+ #https://bugzilla.mozilla.org/show_bug.cgi?id=658850
+ ln -sf $pkgbase "$pkgdir/usr/lib/$pkgbase/$pkgbase-bin"
+}