From a9605d90ebde79903c87f335a4a8c293a1618302 Mon Sep 17 00:00:00 2001 From: "A. Wilcox" Date: Tue, 17 Jul 2018 19:56:57 -0500 Subject: experimental/qt5-qtwebkit: Add Qt WebKit 5.212 alpha2 (does not build) Python 2 -> 3 needed JIT support for tier1 arches nice-to-have --- experimental/qt5-qtwebkit/APKBUILD | 70 ++++++++++++++++++++++++++++++++++ experimental/qt5-qtwebkit/js-py3.patch | 35 +++++++++++++++++ 2 files changed, 105 insertions(+) create mode 100644 experimental/qt5-qtwebkit/APKBUILD create mode 100644 experimental/qt5-qtwebkit/js-py3.patch diff --git a/experimental/qt5-qtwebkit/APKBUILD b/experimental/qt5-qtwebkit/APKBUILD new file mode 100644 index 000000000..c6e8103ba --- /dev/null +++ b/experimental/qt5-qtwebkit/APKBUILD @@ -0,0 +1,70 @@ +# Contributor: A. Wilcox +# Maintainer: A. Wilcox +pkgname=qt5-qtwebkit +_realname=qtwebkit +pkgver=5.212.0_alpha2 +_realver=${pkgver/_/-} +pkgrel=0 +pkgdesc="Open source Web browser engine" +url="https://github.com/annulen/webkit" +arch="all" +license="LGPL-2.1+ AND BSD-3-Clause AND Others" +depends="gst-plugins-base" +depends_dev="qt5-qtbase-dev" +makedepends="$depends_dev ninja sqlite-dev icu-dev ruby perl bison flex gperf + libxml2-dev libxslt-dev libjpeg-turbo-dev libpng-dev zlib-dev glib-dev + gstreamer-dev fontconfig-dev qt5-qtsensors-dev qt5-qtpositioning-dev + qt5-qtdeclarative-dev qt5-qtwebchannel-dev libxcomposite-dev + libxrender-dev gst-plugins-base-dev" +subpackages="$pkgname-dev $pkgname-doc" +source="https://github.com/annulen/webkit/releases/download/$_realname-$_realver/$_realname-$_realver.tar.xz + js-py3.patch + " +builddir="$srcdir"/$_realname-$_realver + +build() { + cd "$builddir" + if [ "$CBUILD" != "$CHOST" ]; then + CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" + fi + # We can enable the JIT when it is stable on all Tier 1 platforms: + # pmmx (ensure no SSE) + # ppc + # ppc64 + # + # DONE: + # aarch64 + # armv7 + # x86_64 + cmake \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=lib \ + -DBUILD_SHARED_LIBS=True \ + -DCMAKE_BUILD_TYPE=RelWithDebugInfo \ + -DCMAKE_CXX_FLAGS="$CXXFLAGS" \ + -DCMAKE_C_FLAGS="$CFLAGS" \ + -DENABLE_JIT=OFF \ + -DPORT=Qt \ + -DUSE_LIBHYPHEN=OFF \ + -DUSE_SYSTEM_MALLOC=ON \ + ${CMAKE_CROSSOPTS} + make +} + +check() { + cd "$builddir" + CTEST_OUTPUT_ON_FAILURE=TRUE ctest +} + +check() { + cd "$builddir" + make check +} + +package() { + cd "$builddir" + make DESTDIR="$pkgdir" install +} + +sha512sums="b15985aab20c5618dc1f71a0d91f02dbed993516272090a4a12990714bf4c9554ccbdcf9d6a143bf46fcc2c170f691e571114d61686fe49791f8d5c540785758 qtwebkit-5.212.0-alpha2.tar.xz +cee23bc493e2b207119a8ae26691d9d75f91535a39780b9438539c8f3789d9b28377b135b64738a34cf10ebbb30e3bc29eb2f56988a7a0d0cf8ddc9bbca7c8ca js-py3.patch" diff --git a/experimental/qt5-qtwebkit/js-py3.patch b/experimental/qt5-qtwebkit/js-py3.patch new file mode 100644 index 000000000..44e77cde0 --- /dev/null +++ b/experimental/qt5-qtwebkit/js-py3.patch @@ -0,0 +1,35 @@ +--- qtwebkit-5.212.0-alpha2/Source/JavaScriptCore/generate-bytecode-files (original) ++++ qtwebkit-5.212.0-alpha2/Source/JavaScriptCore/generate-bytecode-files (refactored) +@@ -91,7 +91,7 @@ + try: + return open(path, mode) + except IOError as e: +- print "I/O error opening {0}, ({1}): {2}".format(path, e.errno, e.strerror) ++ print("I/O error opening {0}, ({1}): {2}".format(path, e.errno, e.strerror)) + exit(1) + + def hashFile(file): +@@ -165,7 +165,7 @@ + try: + bytecodeSections = json.load(bytecodeFile, encoding = "utf-8") + except: +- print "Unexpected error parsing {0}: {1}".format(bytecodeJSONFile, sys.exc_info()) ++ print("Unexpected error parsing {0}: {1}".format(bytecodeJSONFile, sys.exc_info())) + + if bytecodeHFilename: + bytecodeHFile.write(hFileHashString) +--- qtwebkit-5.212.0-alpha2/Source/JavaScriptCore/generate-bytecode-files.old 2018-07-16 10:18:49.850000000 +0000 ++++ qtwebkit-5.212.0-alpha2/Source/JavaScriptCore/generate-bytecode-files 2018-07-16 10:22:35.290000000 +0000 +@@ -157,10 +157,10 @@ + exit(0) + + if bytecodeHFilename: +- bytecodeHFile = openOrExit(bytecodeHFilename, "wb") ++ bytecodeHFile = openOrExit(bytecodeHFilename, "w") + + if initASMFileName: +- initBytecodesFile = openOrExit(initASMFileName, "wb") ++ initBytecodesFile = openOrExit(initASMFileName, "w") + + try: + bytecodeSections = json.load(bytecodeFile, encoding = "utf-8") -- cgit v1.2.3-70-g09d2