diff options
Diffstat (limited to 'libre/icecat/PKGBUILD')
-rw-r--r-- | libre/icecat/PKGBUILD | 227 |
1 files changed, 121 insertions, 106 deletions
diff --git a/libre/icecat/PKGBUILD b/libre/icecat/PKGBUILD index cc5889c7a..c51add2a9 100644 --- a/libre/icecat/PKGBUILD +++ b/libre/icecat/PKGBUILD @@ -1,115 +1,121 @@ -# Contributor (ConnochaetOS): Henry Jensen <hjensen@connochaetos.org> +# Maintainer: Márcio Silva <coadde@lavabit.com> # Contributor (Parabola): Luke Shumaker <lukeshu@sbcglobal.net> -# Contributor: Figue <ffigue at gmail> # Contributor (Parabola): fauno <fauno@kiwwwi.com.ar> # Contributor (Parabola): vando <facundo@esdebian.org> # Contributor (Parabola): André Silva <emulatorman@lavabit.com> -# Maintainer (Parabola): Márcio Silva <coadde@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> +# Contributor: Muhammad 'MJ' Jassim <UnbreakableMJ@gmail.com> -# If you are updating this package, don't forget to update the version number in -# the value for 'browser.dictionaries.download.url' in 'libre.patch' +# Version Configuration ############################################## _pgo=false + pkgname=icecat pkgver=17.0.1 pkgrel=1 -pkgdesc='The GNUzilla web browser, based on Mozilla Firefox. SafeBrowsing and other Google services disabled!' -arch=(i686 x86_64 mips64el) -license=(GPL2 MPL LGPL) + +###################################################################### + +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 + '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' - sqlite3 - startup-notification + 'sqlite' + 'startup-notification' ) makedepends=( - autoconf2.13 - diffutils - imagemagick - libidl2 - librsvg - libxslt - mesa - pkg-config - python2 - unzip - wireless_tools - zip -) -optdepends=( - 'wireless_tools: Location detection via available WiFi networks' + '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) + makedepends+=('xorg-server-xvfb') + options+=(!ccache) fi -options=(!emptydirs) +optdepends=('wireless_tools: Location detection via available WiFi networks') url=http://www.gnu.org/software/gnuzilla/ -install=$pkgname.install -source=( - ftp://ftp.gnu.org/gnu/gnuzilla/${pkgver::4}/$pkgname-$pkgver.tar.gz - mozconfig - mozconfig.pgo - xulrunner-copy-stub.patch - libre.patch - $pkgname.desktop - $pkgname-safe.desktop - $pkgname-install-dir.patch - vendor.js - #cairo.patch -) -md5sums=( - c88a29aa92fc41a07e777a0e63ac5f7e - a22327391a1995703436ed42fe703d3f - ac29b01c189f20abae2f3eef1618ffc0 - 3009b176cc5f9b1e416b1bf7c45b064b - f4cffe48e84283026da634424f4bbee6 - e81ad01dbc16ba28bf92ba4b7c309ca7 - d93fe402b87cd000a869e1fd6badc6c9 - 64826fcf48816b13090042eefddbaa58 - 0d053487907de4376d67d8f499c5502b - #c8552d030494443218d88792f4dbbd0f -) +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' + 'a497587cf150ba27ab25cb52f5311044' + 'e4cd438a0b2a42dfb14bc7716e901e5f' + 'd71509923cfede3e634756fee899e492' + 'daa249d183fcf09942ff30db1b279f1e' + '150ac0fb3ac7b2114c8e8851a9e0516c' + '11df9602256561bcf59f15e7f6aaf0ee' + '52e52f840a49eb1d14be1c0065b03a93') build() { - mv $pkgname-$pkgver $srcdir/gnuzilla-build - cd $srcdir/gnuzilla-build - - cp $srcdir/mozconfig .mozconfig # Load our build config, disable SafeSearch - if $_pgo; then - cat $srcdir/mozconfig.pgo >> .mozconfig - fi - patch -Np1 -i $srcdir/$pkgname-install-dir.patch # install to /usr/lib/$pkgname - patch -Np1 -i $srcdir/xulrunner-copy-stub.patch # small fix - patch -Np1 -i $srcdir/libre.patch # Remove Google+Mozilla stuff - #patch -Np1 -i $srcdir/cairo.patch # fix cairo + mv $pkgname-$pkgver mozilla-release + cd mozilla-release - # Fix for use nspr, sqlite and nss external - sed -i 's/\(MOZ_PKG_FATAL_WARNINGS =\).*/\1 0/' \ - browser/installer/Makefile.in + 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 + if [[ $CARCH == mips64el ]]; then # Fix MIPS N32 support. sed -i 's/defined(_ABIO32)/(defined(_ABIO32) || defined(_ABIN32))/' \ js/src/assembler/wtf/Platform.h @@ -122,44 +128,53 @@ build() { echo 'ac_add_options --disable-jemalloc' >> .mozconfig fi - chmod +x build/unix/run-icecat.sh # fix bug for bad file permition - export LDFLAGS="$LDFLAGS -Wl,-rpath,/usr/lib/$pkgname" - export PYTHON=/usr/bin/python2 + 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 - LD_PRELOAD="" /usr/bin/Xvfb -nolisten tcp -extension GLX -screen 0 1280x1024x24 :99 & - LD_PRELOAD="" DISPLAY=:99 make -j1 -f client.mk profiledbuild MOZ_MAKE_FLAGS=$MAKEFLAGS kill $! || true - else - LD_PRELOAD="" make -j1 -f client.mk build MOZ_MAKE_FLAGS=$MAKEFLAGS fi + return $_fail } package() { - cd $srcdir/gnuzilla-build - make -j1 -f client.mk DESTDIR=$pkgdir install + cd mozilla-release + make -j1 -f client.mk DESTDIR="$pkgdir" install - install -Dm644 $srcdir/vendor.js $pkgdir/usr/lib/$pkgname/defaults/pref + install -Dm644 ../vendor.js "$pkgdir/usr/lib/$pkgbase/defaults/preferences/vendor.js" brandingdir=browser/branding/unofficial - icondir=$pkgdir/usr/share/icons/hicolor - for i in 16x16 32x32 48x48; do - install -Dm644 $brandingdir/default${i/x*/}.png $icondir/$i/apps/$pkgname.png + 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 - for d in $pkgname $pkgname-safe; do - install -Dm644 $srcdir/$d.desktop $pkgdir/usr/share/applications/$d.desktop - done + install -Dm644 ../$pkgbase.desktop \ + "$pkgdir/usr/share/applications/$pkgbase.desktop" - rm -rf $pkgdir/usr/lib/$pkgname/{dictionaries,hyphenation,searchplugins,plugins} - ln -sf /usr/share/hunspell $pkgdir/usr/lib/$pkgname/dictionaries - ln -sf /usr/share/hyphen $pkgdir/usr/lib/$pkgname/hyphenation - ln -sf /usr/lib/mozilla/plugins $pkgdir/usr/lib/$pkgname/plugins - ln -sf /usr/lib/mozilla/searchplugins $pkgdir/usr/lib/$pkgname/searchplugins + # 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 -rf $pkgdir/usr/{include,lib/$pkgname-devel,share/idl} + rm -r "$pkgdir"/usr/{include,lib/$pkgbase-devel,share/idl} - # Workaround for now: https://bugzilla.mozilla.org/show_bug.cgi?id=658850 - ln -sf $pkgname $pkgdir/usr/lib/$pkgname/$pkgname-bin + #workaround for now + #https://bugzilla.mozilla.org/show_bug.cgi?id=658850 + ln -sf $pkgbase "$pkgdir/usr/lib/$pkgbase/$pkgbase-bin" } |