summaryrefslogtreecommitdiff
path: root/community/xulrunner/PKGBUILD
blob: 8fe4e064ab5316e83149b35adc94ea07d00ec649 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
# $Id: PKGBUILD 105483 2014-02-09 04:20:46Z cbehan $
# Maintainer: Connor Behan <connor.behan@gmail.com>
# Contributor: Jan de Groot <jgc@archlinux.org>
# Contributor: Alexander Baldeck <alexander@archlinux.org>

pkgname=xulrunner
pkgver=27.0
pkgrel=1
pkgdesc="Mozilla Runtime Environment"
arch=('i686' 'x86_64')
license=('MPL' 'GPL' 'LGPL')
depends=('gtk2' 'mozilla-common' 'nss' 'libxt' 'hunspell' 'startup-notification' 'mime-types' 'dbus-glib' 'alsa-lib' 'libevent' 'libvpx' 'python2')
makedepends=('zip' 'unzip' 'pkg-config' 'diffutils' 'yasm' 'mesa' 'autoconf2.13' 'gstreamer0.10-base')
url="http://wiki.mozilla.org/XUL:Xul_Runner"
source=(ftp://ftp.mozilla.org/pub/mozilla.org/xulrunner/releases/$pkgver/source/xulrunner-$pkgver.source.tar.bz2
        mozconfig
        mozilla-pkgconfig.patch
        shared-libs.patch)
options=('!emptydirs' '!makeflags' 'staticlibs')
replaces=('xulrunner-oss')
sha256sums=('4f6125c053e12c4ac3317b075e289b10ce470dd90ed6fc43c4572bf1acc64981'
            '8455f7bc00e8ad6e69bba43171083c778420a8b1c566347ed5381ae9cf98191a'
            '23485d937035648add27a7657f6934dc5b295e886cdb0506eebd02a43d07f269'
            'e2b4a00d14f4ba69c62b3f9ef9908263fbab179ba8004197cbc67edbd916fdf1')

prepare() {
  cd "$srcdir/mozilla-release"
  cp "$srcdir/mozconfig" .mozconfig

  #fix libdir/sdkdir - fedora
  patch -Np1 -i ../mozilla-pkgconfig.patch
  patch -Np1 -i ../shared-libs.patch

  # WebRTC build tries to execute "python" and expects Python 2
  # Workaround taken from chromium PKGBUILD
  mkdir "$srcdir/python2-path"
  ln -s /usr/bin/python2 "$srcdir/python2-path/python"

  # configure script misdetects the preprocessor without an optimization level
  # https://bugs.archlinux.org/task/34644
  sed -i '/ac_cpp=/s/$CPPFLAGS/& -O2/' configure
}

build() {
  cd "$srcdir/mozilla-release"

  export PATH="$srcdir/python2-path:$PATH"
  export LDFLAGS="$LDFALGS -Wl,-rpath,/usr/lib/xulrunner-$pkgver"
  export PYTHON="/usr/bin/python2"

  make -j1 -f client.mk build
}

package() {
  cd "$srcdir/mozilla-release"
  make -j1 -f client.mk DESTDIR="$pkgdir" install

  # Use system-provided dictionaries
  rm -rf "$pkgdir"/usr/lib/xulrunner-$pkgver/{dictionaries,hyphenation}
  ln -sf /usr/share/hunspell "$pkgdir/usr/lib/xulrunner-$pkgver/dictionaries"
  ln -sf /usr/share/hyphen "$pkgdir/usr/lib/xulrunner-$pkgver/hyphenation"

  # add xulrunner library path to ld.so.conf
  install -d $pkgdir/etc/ld.so.conf.d
  echo "/usr/lib/xulrunner-$pkgver" > $pkgdir/etc/ld.so.conf.d/xulrunner.conf

  chmod +x "${pkgdir}/usr/lib/xulrunner-devel-$pkgver/sdk/bin/xpt.py"
  chmod +x "${pkgdir}/usr/lib/xulrunner-devel-$pkgver/sdk/bin/xpcshell"
  ln -s /usr/lib/xulrunner-devel-$pkgver/sdk/bin/xpcshell "${pkgdir}/usr/lib/xulrunner-$pkgver/xpcshell"
  sed -i 's|!/usr/bin/env python$|!/usr/bin/env python2|' \
    "$pkgdir"/usr/lib/xulrunner-devel-$pkgver/sdk/bin/{xpt,header,typelib,xpidl}.py
}