# Maintainer: Felix Yan # Maintainer: Antonio Rojas # Contributor: Andrea Scarpino # ALARM: Kevin Mihelich # - 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=22 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 qt5-webkit-og) replaces=(qt5-webkit-ng qt5-webkit-og) _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" atomic.patch) sha256sums=('f8f901de567e11fc5659402b6b827eac75505ff9c5072d8e919aa306003f8f8a' 'f108833562d766d4c086026f9202b2ebc8c19e97fddedce952afed78df3c0720' '510e1f78c2bcd76909703a097dbc1d5c9c6ce4cd94883c26138f09cc10121f43' 'bd22bd7842d5ad1cb1f5a4b6acb2674509732274d5f9dc51943144dff76996ae' 'b42b70fd2a4a36b0ff48fc4e0dc386b3dda373e6fec18f3be9f5e2d3b04e0aa3' 'b4e6c85fcb062e7cc141b0e34977bcc4f9c8677c773fc4b310151b85f51e7189' '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 # Fix build with cmake 3.10 patch -p1 -i ../qt5-webkit-cmake3.10.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 }