summaryrefslogtreecommitdiff
path: root/libre/iceweasel-libre/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'libre/iceweasel-libre/PKGBUILD')
-rw-r--r--libre/iceweasel-libre/PKGBUILD156
1 files changed, 156 insertions, 0 deletions
diff --git a/libre/iceweasel-libre/PKGBUILD b/libre/iceweasel-libre/PKGBUILD
new file mode 100644
index 000000000..3ef4da470
--- /dev/null
+++ b/libre/iceweasel-libre/PKGBUILD
@@ -0,0 +1,156 @@
+# Contributor (ConnochaetOS): Henry Jensen <hjensen@connochaetos.org>
+# 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 (Arch): Jakub Schmidtke <sjakub@gmail.com>
+# Thank you very much to the older contributors:
+# Contributor: evr <evanroman at gmail>
+# Contributor: Muhammad 'MJ' Jassim <UnbreakableMJ@gmail.com>
+
+_pgo=false
+
+# We're getting this from Debian Sid
+_debname=iceweasel
+_debver=11.0
+_debrel=2
+_debrepo=http://ftp.debian.org/debian/pool/main/
+debfile() { echo $@|sed -r 's@(.).*@\1/&/&@'; }
+
+_pkgname=iceweasel
+pkgname=iceweasel-libre
+pkgver=${_debver}.${_debrel}
+pkgrel=1
+
+if [ -z "$pkgname" ]; then pkgname=$_pkgname; fi
+if $_pgo; then
+ pkgname+='-pgo'
+fi
+
+pkgdesc="A libre version of Debian Iceweasel, the browser based on Mozilla Firefox."
+arch=('i586' 'i686' 'x86_64' 'mips64el')
+license=('GPL2' 'MPL' 'LGPL')
+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.1' 'sqlite3' 'startup-notification')
+makedepends=( 'autoconf2.13' 'diffutils' 'imagemagick' 'libidl2' 'librsvg' 'libxslt' 'mesa' 'pkg-config' 'python2' 'quilt' 'unzip' 'wireless_tools' 'yasm' 'zip')
+if $_pgo; then
+ makedepends+=('xorg-server-xvfb')
+ options=(!ccache)
+fi
+
+url="http://www.geticeweasel.org/"
+install=iceweasel.install
+source=("${_debrepo}/`debfile ${_debname}`_${_debver}.orig.tar.bz2"
+ "${_debrepo}/`debfile ${_debname}`_${_debver}-${_debrel}.debian.tar.gz"
+ "${_debrepo}/`debfile ${_debname}`_${_debver}-${_debrel}.dsc"
+ mozconfig
+ mozconfig.pgo
+ xulrunner-copy-stub.patch
+ libre.patch
+ iceweasel-install-dir.patch
+ region.properties
+ vendor.js)
+md5sums=('01d9d18909ca9fff2483d8fd779a0f89'
+ '59349da94b095fe0623d09ce75696766'
+ 'f407208a750cdc9bea3a6a3a3e42dd89'
+ 'eab149c1994ab14392e55af3abb08e80'
+ 'ac29b01c189f20abae2f3eef1618ffc0'
+ 'a485a2b5dc544a8a2bd40c985d2e5813'
+ 'addd3a3420cebeda152b447705b086e9'
+ 'e529742c0a425648087bc3ce537fe4c5'
+ 'f1c76e7e244257856a386ca2de69bdf0'
+ '0d053487907de4376d67d8f499c5502b')
+
+if [ "$_pkgname" != "$pkgname" ]; then
+ provides+=("$_pkgname=$pkgver")
+ conflicts+=("$_pkgname")
+fi
+
+dpkg-source() {
+ # This will simulate dpkg-source -x ${_debname}_${_debver}-${_debrel}.dsc
+ export QUILT_PATCHES=debian/patches
+ export QUILT_REFRESH_ARGS='-p ab --no-timestamps --no-index'
+ export QUILT_DIFF_ARGS='--no-timestamps'
+ mv mozilla-release "${_debname}-${_debver}"
+ mv debian "${_debname}-${_debver}"
+ cd "${_debname}-${_debver}"
+
+# Doesn't apply and seems unimportant
+ rm -v debian/patches/l10n/Place-google-and-gmail-before-yandex.patch || true
+
+ quilt push -a
+ find .pc -name .timestamp -delete # why isn't "--no-timestamps" doing this?
+ cd ..
+}
+
+build() {
+# Don't run this if we're using -e
+if [ $NOEXTRACT -eq 0 ]; then
+ msg2 "Applying Debian patches..."
+ cd "${srcdir}"
+ dpkg-source -x ${_debname}_${_debver}-${_debrel}.dsc
+
+ msg2 "Starting normal build..."
+ mv "${_debname}-${_debver}" "$srcdir/mozilla-build"
+ cd "$srcdir/mozilla-build"
+
+ cp "$srcdir/mozconfig" .mozconfig # Load our build config, disable SafeSearch
+ patch -Np1 -i "$srcdir/iceweasel-install-dir.patch" # install to /usr/lib/$_pkgname
+ patch -Np1 -i "$srcdir/xulrunner-copy-stub.patch" # small fix
+ patch -Np1 -i "$srcdir/libre.patch"
+fi
+
+ cd "$srcdir/mozilla-build"
+ cp -f ${srcdir}/region.properties ./browser/locales/en-US/chrome/browser-region/
+
+ if $_pgo; then
+ cat "$srcdir/mozconfig.pgo" >> .mozconfig
+ fi
+
+ # Fix PRE_RELEASE_SUFFIX
+ sed -i '/^PRE_RELEASE_SUFFIX := ""/s/ ""//' \
+ browser/base/Makefile.in
+
+ export LDFLAGS="$LDFLAGS -Wl,-rpath,/usr/lib/$_pkgname"
+ export PYTHON="/usr/bin/python2"
+
+ 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
+}
+
+package() {
+ cd "$srcdir/mozilla-build"
+ make -j1 -f client.mk DESTDIR="$pkgdir" install
+
+ install -m644 "$srcdir"/vendor.js "$pkgdir/usr/lib/$_pkgname/defaults/pref"
+
+ # I don't even know why we're hitting the objdir, and ConnOS didn't.
+ _brandingdir=debian/branding
+ brandingdir=moz-objdir/$_brandingdir
+ icondir="$pkgdir/usr/share/icons/hicolor"
+ for i in 16x16 32x32 48x48 64x64; do
+ install -Dm644 "$brandingdir/default${i/x*/}.png" "$icondir/$i/apps/$_pkgname.png"
+ done
+ install -Dm644 "$brandingdir/mozicon128.png" "$icondir/128x128/apps/$_pkgname.png"
+ install -Dm644 "$_brandingdir/iceweasel_icon.svg" "$icondir/scalable/apps/$_pkgname.svg"
+
+ install -d "$pkgdir/usr/share/applications"
+ install -m644 debian/iceweasel.desktop "$pkgdir/usr/share/applications"
+ #install -m644 debian/iceweasel-safe.desktop "$pkgdir/usr/share/applications"
+
+ 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"
+
+ # We don't want the development stuff
+ rm -rf "$pkgdir"/usr/{include,lib/$_pkgname-devel,share/idl}
+
+ # Workaround for now: https://bugzilla.mozilla.org/show_bug.cgi?id=658850
+ ln -sf $_pkgname "$pkgdir/usr/lib/$_pkgname/$_pkgname-bin"
+}