summaryrefslogtreecommitdiff
path: root/extra/webkitgtk/PKGBUILD
blob: aaf6b12e2bc1003fc7007e2c285757d2366d7330 (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
# $Id: PKGBUILD 184446 2013-05-06 19:40:06Z foutrelis $
# Maintainer: Andreas Radke <andyrtr@archlinux.org>

pkgbase=webkitgtk
pkgname=('webkitgtk3')
pkgver=2.0.1
pkgrel=2
arch=('i686' 'x86_64' 'mips64el')
url="http://webkitgtk.org/"
license=('custom')
makedepends=('libxt' 'libxslt' 'sqlite' 'libsoup' 'enchant' 'libgl' 'geoclue' 'gtk2' 'gtk3' 'gst-plugins-base-libs' 'gperf' 'gobject-introspection' 'python' 'mesa' 'ruby' 'gtk-doc' 'libsecret' 'libwebp')
options=('!libtool' '!emptydirs')
source=(http://webkitgtk.org/releases/$pkgbase-$pkgver.tar.xz
        0001-https-bugs.webkit.org-show_bug.cgi-id-112141.patch)
sha256sums=('6303552a39d7912725d75bc55f530cdb99171fb873e299798d0bb932d6ea76cb'
            '7b4c1419342bafcca642d7a41abe92713810401591906b081fe476169cb9a3aa')

prepare() {
  cd $pkgbase-$pkgver
  mkdir build-gtk3
  if [ "$CARCH" = "mips64el" ]; then
     # Fix MIPS N32 support.
      sed -i 's/defined(_ABIO32)/(defined(_ABIO32) || defined(_ABIN32))/' \
          Source/WTF/wtf/Platform.h
     # Don't enable JIT even if configure finds that it's not supported.
      sed -i 's/#define ENABLE_JIT 1/#define ENABLE_JIT 0/' \
          Source/WTF/wtf/Platform.h
  fi

  # Fix build on 32-bit platforms.
  patch -p1 -i "$srcdir/0001-https-bugs.webkit.org-show_bug.cgi-id-112141.patch"

  # Won't be made before files there.
  mkdir -p build-gtk3/Programs/resources
}

build() {
  cd $pkgbase-$pkgver/build-gtk3

  if [ "$CARCH" = "mips64el" ]; then
      # Optimizations make it segfault when running; without
      # -mlong-calls R_MIPS_26 relocations will be used and truncated.
      # Disable unneeded arch-specific warnings.
      export CPPFLAGS="${CPPFLAGS/-D_FORTIFY_SOURCE=[0-9]} -Wno-cast-align"
      export CFLAGS="${CFLAGS/-O[0-9]} -mlong-calls"
      export CXXFLAGS="${CXXFLAGS/-O[0-9]} -mlong-calls"
      extra="--disable-fast-malloc --disable-optimizations"
  fi

  # Suppress a *lot* of gcc 4.8 warnings
  export CPPFLAGS="$CPPFLAGS -Wno-unused-local-typedefs"

  ../configure --prefix=/usr --libexecdir=/usr/lib/webkitgtk3 \
    --enable-introspection $extra
  make all stamp-po
}

package_webkitgtk3() {
  pkgdesc="GTK+ Web content engine library for GTK+ 3.0"
  depends=('libxt' 'libxslt' 'sqlite' 'libsoup' 'enchant' 'libgl' 'geoclue' 'gtk3' 'gst-plugins-base-libs' 'libsecret' 'libwebp')
  conflicts=('libwebkit3')
  provides=("libwebkit3=${pkgver}")
  replaces=('libwebkit3')
  optdepends=('gtk2: Webkit2 plugin support')
  
  cd $pkgbase-$pkgver/build-gtk3
  make -j1 DESTDIR="$pkgdir" install
  install -Dm644 ../Source/WebKit/LICENSE "$pkgdir/usr/share/licenses/${pkgname}/LICENSE"
}