summaryrefslogtreecommitdiffstats
path: root/abs/core/qt5-webkit/PKGBUILD
blob: c12c4bdfbcccaa795b8a21f49648698c3fa1c2f7 (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 240297 2015-06-03 10:22:03Z fyan $
# Maintainer: Felix Yan <felixonmars@archlinux.org>
# Maintainer: Antonio Rojas <arojas@archlinux.org>
# Contributor: Andrea Scarpino <andrea@archlinux.org>

pkgname=qt5-webkit
_qtver=5.212.0-alpha2
pkgver=${_qtver/-/}
pkgrel=12
arch=(x86_64)
url='http://qt-project.org/'
license=(GPL3 LGPL3 FDL custom)
pkgdesc='Classes for a WebKit2 based implementation and a new QML API'
depends=(qt5-location qt5-sensors qt5-webchannel libwebp libxslt libxcomposite gst-plugins-base hyphen)
makedepends=(cmake ruby gperf python2 qt5-doc qt5-tools)
optdepends=('gst-plugins-good: Webm codec support')
conflicts=(qt5-webkit-ng)
replaces=(qt5-webkit-ng)
groups=(qt qt5)
_pkgfqn="${pkgname/5-/}-opensource-src-${_qtver}"
source=("https://github.com/annulen/webkit/releases/download/qtwebkit-$_qtver/qtwebkit-$_qtver.tar.xz"
        qt5-webkit-gcc7.patch
        qt5-webkit-null-pointer-dereference.patch
        qt5-webkit-trojita-1.patch::"https://github.com/annulen/webkit/commit/6faf1121.patch"
        qt5-webkit-trojita-2.patch::"https://github.com/annulen/webkit/commit/76420459.patch"
        qt5-webkit-cmake3.10.patch::"https://github.com/annulen/webkit/commit/f51554bf.patch")
sha256sums=('f8f901de567e11fc5659402b6b827eac75505ff9c5072d8e919aa306003f8f8a'
            'f108833562d766d4c086026f9202b2ebc8c19e97fddedce952afed78df3c0720'
            '510e1f78c2bcd76909703a097dbc1d5c9c6ce4cd94883c26138f09cc10121f43'
            'bd22bd7842d5ad1cb1f5a4b6acb2674509732274d5f9dc51943144dff76996ae'
            'b42b70fd2a4a36b0ff48fc4e0dc386b3dda373e6fec18f3be9f5e2d3b04e0aa3'
            'b4e6c85fcb062e7cc141b0e34977bcc4f9c8677c773fc4b310151b85f51e7189')

prepare() {
  mkdir -p build

# Fix crashes with GCC7 https://bugs.webkit.org/show_bug.cgi?id=173407
  cd qtwebkit-$_qtver
  patch -p1 -i ../qt5-webkit-gcc7.patch
# Fix layout issues in trojita https://github.com/annulen/webkit/issues/511
  patch -p1 -i ../qt5-webkit-trojita-1.patch
  patch -p1 -i ../qt5-webkit-trojita-2.patch
# Fix null point dereference (Fedora) https://github.com/annulen/webkit/issues/573
  patch -p1 -i ../qt5-webkit-null-pointer-dereference.patch
# Fix build with cmake 3.10
  patch -p1 -i ../qt5-webkit-cmake3.10.patch
}

build() {
  cd build

  cmake ../qtwebkit-$_qtver \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DCMAKE_BUILD_TYPE=Release \
    -DPORT=Qt \
    -DENABLE_TOOLS=OFF
  make
}

package() {
  cd build
  make DESTDIR="$pkgdir" install

  install -d "$pkgdir"/usr/share/licenses
  ln -s /usr/share/licenses/qt5-base "$pkgdir"/usr/share/licenses/${pkgname}

# Fix pkgconfig files
  sed -e 's|qt/Qt5WebKit|qt/QtWebKit|' -i "$pkgdir"/usr/lib/pkgconfig/Qt5WebKit.pc
  sed -e 's|qt/Qt5WebKitWidgets|qt/QtWebKitWidgets|' -i "$pkgdir"/usr/lib/pkgconfig/Qt5WebKitWidgets.pc
  sed -e '/Name/a Description: Qt WebKit module' -i "$pkgdir"/usr/lib/pkgconfig/Qt5WebKit.pc
  sed -e '/Name/a Description: Qt WebKitWidgets module' -i "$pkgdir"/usr/lib/pkgconfig/Qt5WebKitWidgets.pc
}