PKGBUILDs/extra/qt5-webkit/PKGBUILD
2017-11-04 16:37:47 +00:00

82 lines
3.1 KiB
Bash

# $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>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - patch to link with libatomic on v5/v6
# - disable jit on v5/v6
highmem=1
pkgname=qt5-webkit
_qtver=5.212.0-alpha2
pkgver=${_qtver/-/}
pkgrel=7
arch=(i686 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 qt5-webkit-og)
replaces=(qt5-webkit-ng qt5-webkit-og)
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"
atomic.patch)
sha256sums=('f8f901de567e11fc5659402b6b827eac75505ff9c5072d8e919aa306003f8f8a'
'f108833562d766d4c086026f9202b2ebc8c19e97fddedce952afed78df3c0720'
'510e1f78c2bcd76909703a097dbc1d5c9c6ce4cd94883c26138f09cc10121f43'
'bd22bd7842d5ad1cb1f5a4b6acb2674509732274d5f9dc51943144dff76996ae'
'b42b70fd2a4a36b0ff48fc4e0dc386b3dda373e6fec18f3be9f5e2d3b04e0aa3'
'23fbd785daf116c71b3ce87d40860f0a6c56ab1065ee98ec41634626ca961129')
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
if [[ $CARCH == "arm" || $CARCH == "armv6h" ]]; then
patch -p0 -i ../atomic.patch
fi
}
build() {
cd build
[[ $CARCH == "arm" || $CARCH == "armv6h" ]] && CONFIG="-DENABLE_JIT=OFF"
cmake ../qtwebkit-$_qtver \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
-DPORT=Qt \
-DENABLE_TOOLS=OFF \
$CONFIG
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
}