diff options
Diffstat (limited to 'user/qt5-qtwebkit')
-rw-r--r-- | user/qt5-qtwebkit/0001-Add-ARM-64-support.patch | 13 | ||||
-rw-r--r-- | user/qt5-qtwebkit/APKBUILD | 124 | ||||
-rw-r--r-- | user/qt5-qtwebkit/bug-931.patch | 10 | ||||
-rw-r--r-- | user/qt5-qtwebkit/cmake.patch | 60 | ||||
-rw-r--r-- | user/qt5-qtwebkit/fix-execinfo.patch | 20 | ||||
-rw-r--r-- | user/qt5-qtwebkit/fix-rpath.patch | 11 | ||||
-rw-r--r-- | user/qt5-qtwebkit/pic.patch | 11 | ||||
-rw-r--r-- | user/qt5-qtwebkit/ppc-llint.patch | 32 |
8 files changed, 167 insertions, 114 deletions
diff --git a/user/qt5-qtwebkit/0001-Add-ARM-64-support.patch b/user/qt5-qtwebkit/0001-Add-ARM-64-support.patch deleted file mode 100644 index 73f5c97f8..000000000 --- a/user/qt5-qtwebkit/0001-Add-ARM-64-support.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h -index 4594ec8..639f28f 100644 ---- a/Source/WTF/wtf/Platform.h -+++ b/Source/WTF/wtf/Platform.h -@@ -342,7 +342,7 @@ - #endif - #endif - --#if CPU(ARM) || CPU(MIPS) || CPU(SH4) || CPU(SPARC) || CPU(MIPS64) -+#if CPU(ARM) || CPU(MIPS) || CPU(SH4) || CPU(SPARC) || CPU(MIPS64) || CPU(AARCH64) - #define WTF_CPU_NEEDS_ALIGNED_ACCESS 1 - #endif - diff --git a/user/qt5-qtwebkit/APKBUILD b/user/qt5-qtwebkit/APKBUILD index 36b624e8a..45f739573 100644 --- a/user/qt5-qtwebkit/APKBUILD +++ b/user/qt5-qtwebkit/APKBUILD @@ -1,72 +1,78 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=qt5-qtwebkit -_pkgname=qtwebkit-opensource-src -pkgver=5.9.1 -pkgrel=4 -pkgdesc="Qt 5 - WebKit components" -url="https://www.qt.io/" +_realname=$pkgname +#qtwebkit +pkgver=5.212.0_git20191114 +_realver=$(printf '%s' "$pkgver" | sed 's/_/-/') +pkgrel=0 +pkgdesc="Open source Web browser engine" +url="https://github.com/qtwebkit/qtwebkit" arch="all" -options="!check" -license="LGPL-2.0 with exceptions OR GPL-3.0 with exceptions" -depends="" -depends_dev="qt5-qtdeclarative-dev gstreamer-dev gst-plugins-base-dev - libxslt-dev mesa-dev icu-dev libxext-dev glib-dev libxcomposite-dev - libxrender-dev - " -makedepends="$depends_dev bison flex fontconfig-dev gperf libjpeg-turbo-dev - libpng-dev libwebp-dev pcre-dev qt5-qtbase-dev ruby sqlite-dev zlib-dev" +options="!check" # Tests fail (surprise), require X11. +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 cmake + libxrender-dev gst-plugins-base-dev hyphen-dev libexecinfo-dev + ruby-dev glib-dev libgcrypt-dev libtasn1-dev" subpackages="$pkgname-dev" -source="https://download.qt.io/official_releases/qt/${pkgver%.*}/$pkgver/submodules/$_pkgname-$pkgver.tar.xz - pic.patch - fix-rpath.patch - fix-execinfo.patch - 0001-Add-ARM-64-support.patch +#source="https://github.com/qtwebkit/qtwebkit/releases/download/$_realname-$_realver/$_realname-$_realver.tar.xz +source="https://distfiles.adelielinux.org/source/$_realname-$_realver.tar.xz + bug-931.patch + cmake.patch + ppc-llint.patch " -builddir="$srcdir"/$_pkgname-$pkgver - -prepare() { - default_prepare - # remove some bundled - mkdir Source/ThirdParty/orig - mv Source/ThirdParty/gtest/ \ - Source/ThirdParty/qunit/ \ - Source/ThirdParty/orig/ - syncqt.pl -version $pkgver Source/sync.profile -} +builddir="$srcdir"/$_realname-$_realver build() { - local _maybe_smaller="" - cd "$builddir" - - # On 32-bit x86, ld.bfd will run out of memory if debugging information - # is built. See https://sourceware.org/bugzilla/show_bug.cgi?id=23470 - # for more information. - case "$CARCH" in - pmmx) _maybe_smaller="QMAKE_CXXFLAGS_DEBUG+=-g0" - esac - - qmake $_maybe_smaller - - # /usr/include/fortify/stdlib.h:20:25: fatal error: stdlib.h: No such file or directory - # see: http://stackoverflow.com/questions/37218953/isystem-on-a-system-include-directory-causes-errors - # see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71090 - # see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70129 - qmake Source/JavaScriptCore/LLIntOffsetsExtractor.pro -o \ - Source/JavaScriptCore/Makefile.LLIntOffsetsExtractor - sed -i 's:-isystem /usr/include ::' \ - Source/JavaScriptCore/Makefile.LLIntOffsetsExtractor - + 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 + # + # https://github.com/qtwebkit/qtwebkit/issues/930 + # -DENABLE_MEDIA_SOURCE=ON \ + # -DENABLE_VIDEO=ON \ + # -DENABLE_WEB_AUDIO=ON \ + # -DUSE_GSTREAMER=ON \ + 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 \ + -DENABLE_PRINT_SUPPORT=ON \ + -DENABLE_QT_WEBCHANNEL=ON \ + -DPORT=Qt \ + -DUSE_SYSTEM_MALLOC=ON \ + -DUSE_WOFF2=OFF \ + ${CMAKE_CROSSOPTS} . make } +check() { + CTEST_OUTPUT_ON_FAILURE=TRUE ctest +} + package() { - cd "$builddir" - make install INSTALL_ROOT="$pkgdir" - sed -i -e 's:-L/home[^ ]\+::g' "$pkgdir"/usr/lib/pkgconfig/*.pc + make DESTDIR="$pkgdir" install } -sha512sums="79316ab746a230fdb290e28629d7cec5fca75119ba8868060742c682ab86490de9ffd8e517569aa7412f35fd709568dbb5f7d2d467bdb4461e192f8b05d6f1e5 qtwebkit-opensource-src-5.9.1.tar.xz -9a62a5e7af91c44311b517608262f88b5bc607e75dc5878dd08b0a0872ec03fb7a566df0a41413f7e60beb1b9880e24f084b90c38ed50d4219ec2ad6af9bd62f pic.patch -00d59c0cdb58ae8e7cf6bc3d03f133697e74c267ccebe12238bcdc274d4c90210b82c2d8bdf0e949cd43da13a4fd8a4c35fb54a00ed5102a4ac4d23aa002d0fe fix-rpath.patch -f17c2f4b90090c8f12e4ba1f2cbd7a9f496c8de024ba6e0d55b98e5b89ab89298aff84f39e81905e0491fe6bd11544633a8b191403a866e16ed654d44cf8dc6f fix-execinfo.patch -af5097d44f73de156ca31a5423136301dfc12ae693e20c4702bf3f1c6e16395f3912e9268582480ba3177021f37d4cae3b84d4b23eeb063fdc40f2444d3b34c8 0001-Add-ARM-64-support.patch" +sha512sums="ec009773953b9f3e2c0e47072cd678f7044b16219c85879a6031c109c7b2b84f426564bb673ccaafa0bcc3f7a656e3cb0d8e3be28d3bbfb401adcd1a6b8b9edd qt5-qtwebkit-5.212.0-git20191114.tar.xz +85adb979eb5d58ccab85d07d6a6db470b34bdb6fd8af2eef04ce268da41a596b4a19295c97dca1201daf4a51ca9e183bb27dd36b9b12b0e149224793d1c190a9 bug-931.patch +4ee26787bf01f3067fae51e1942b72d783629b13fe13ffcfba9329bbea823de7b751905f01c71c6c498164cb41a33765debce375a034dde83e3f784d6e549ada cmake.patch +0b358e4df16e8792c995a385386bfe9e197e23854f30129b504d3ba851cdfab3a2adef462a6ae3a775ec01d02cd67ef404259491339336c6ce896d7940597c95 ppc-llint.patch" diff --git a/user/qt5-qtwebkit/bug-931.patch b/user/qt5-qtwebkit/bug-931.patch new file mode 100644 index 000000000..7d363dd62 --- /dev/null +++ b/user/qt5-qtwebkit/bug-931.patch @@ -0,0 +1,10 @@ +--- qt5-qtwebkit-5.212.0-git20191114/Source/JavaScriptCore/runtime/NativeExecutable.cpp.old 2019-11-14 19:31:45.000000000 +0000 ++++ qt5-qtwebkit-5.212.0-git20191114/Source/JavaScriptCore/runtime/NativeExecutable.cpp 2020-01-04 19:14:22.974744920 +0000 +@@ -28,6 +28,7 @@ + #include "BatchedTransitionOptimizer.h" + #include "CodeBlock.h" + #include "Debugger.h" ++#include "ExecutableBaseInlines.h" + #include "JIT.h" + #include "JSCInlines.h" + #include "LLIntEntrypoint.h" diff --git a/user/qt5-qtwebkit/cmake.patch b/user/qt5-qtwebkit/cmake.patch new file mode 100644 index 000000000..a41be9ce4 --- /dev/null +++ b/user/qt5-qtwebkit/cmake.patch @@ -0,0 +1,60 @@ +--- qt5-qtwebkit-5.212.0-git20191114/Source/PlatformQt.cmake.old 2019-11-14 19:31:45.000000000 +0000 ++++ qt5-qtwebkit-5.212.0-git20191114/Source/PlatformQt.cmake 2020-01-04 20:53:20.522367347 +0000 +@@ -99,8 +99,8 @@ + set(Qt5@MODULE_NAME@_EXECUTABLE_COMPILE_FLAGS \"\") + set(Qt5@MODULE_NAME@_PRIVATE_INCLUDE_DIRS \"\") # FIXME: Support private headers + +-get_target_property(Qt5@MODULE_NAME@_INCLUDE_DIRS Qt5::@MODULE_NAME@ INTERFACE_INCLUDE_DIRECTORIES) +-get_target_property(Qt5@MODULE_NAME@_COMPILE_DEFINITIONS Qt5::@MODULE_NAME@ INTERFACE_COMPILE_DEFINITIONS) ++get_target_property(Qt5@MODULE_NAME@_INCLUDE_DIRS Qt5::@FULL_MODULE_NAME@ INTERFACE_INCLUDE_DIRECTORIES) ++get_target_property(Qt5@MODULE_NAME@_COMPILE_DEFINITIONS Qt5::@FULL_MODULE_NAME@ INTERFACE_COMPILE_DEFINITIONS) + + foreach (_module_dep \${_Qt5@MODULE_NAME@_MODULE_DEPENDENCIES}) + list(APPEND Qt5@MODULE_NAME@_INCLUDE_DIRS \${Qt5\${_module_dep}_INCLUDE_DIRS}) +@@ -117,6 +117,7 @@ + ") + + set(MODULE_NAME WebKit) ++set(FULL_MODULE_NAME WebKitLegacy) + string(CONFIGURE ${_package_footer_template} QTWEBKIT_PACKAGE_FOOTER @ONLY) + ecm_configure_package_config_file("${CMAKE_CURRENT_SOURCE_DIR}/Qt5WebKitConfig.cmake.in" + "${CMAKE_CURRENT_BINARY_DIR}/Qt5WebKitConfig.cmake" +@@ -124,6 +125,7 @@ + ) + + set(MODULE_NAME WebKitWidgets) ++set(FULL_MODULE_NAME WebKitWidgets) + string(CONFIGURE ${_package_footer_template} QTWEBKIT_PACKAGE_FOOTER @ONLY) + ecm_configure_package_config_file("${CMAKE_CURRENT_SOURCE_DIR}/Qt5WebKitWidgetsConfig.cmake.in" + "${CMAKE_CURRENT_BINARY_DIR}/Qt5WebKitWidgetsConfig.cmake" +@@ -154,18 +154,18 @@ + ) + + # QTFIXME +-#install(EXPORT WebKitTargets +-# FILE WebKitTargets.cmake +-# NAMESPACE Qt5:: +-# DESTINATION "${KDE_INSTALL_CMAKEPACKAGEDIR}/Qt5WebKit" +-# COMPONENT Data +-#) +-#install(EXPORT Qt5WebKitWidgetsTargets +-# FILE Qt5WebKitWidgetsTargets.cmake +-# NAMESPACE Qt5:: +-# DESTINATION "${KDE_INSTALL_CMAKEPACKAGEDIR}/Qt5WebKitWidgets" +-# COMPONENT Data +-#) ++install(EXPORT WebKitTargets ++ FILE WebKitTargets.cmake ++ NAMESPACE Qt5:: ++ DESTINATION "${KDE_INSTALL_CMAKEPACKAGEDIR}/Qt5WebKit" ++ COMPONENT Data ++) ++install(EXPORT Qt5WebKitWidgetsTargets ++ FILE Qt5WebKitWidgetsTargets.cmake ++ NAMESPACE Qt5:: ++ DESTINATION "${KDE_INSTALL_CMAKEPACKAGEDIR}/Qt5WebKitWidgets" ++ COMPONENT Data ++) + + # Documentation + diff --git a/user/qt5-qtwebkit/fix-execinfo.patch b/user/qt5-qtwebkit/fix-execinfo.patch deleted file mode 100644 index 6fbf4ed8f..000000000 --- a/user/qt5-qtwebkit/fix-execinfo.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- webkitgtk-2.2.0.orig/Source/WTF/wtf/Assertions.cpp -+++ webkitgtk-2.2.0/Source/WTF/wtf/Assertions.cpp -@@ -64,7 +64,7 @@ - #include <windows.h> - #endif - --#if (OS(DARWIN) || (OS(LINUX) && !defined(__UCLIBC__))) && !OS(ANDROID) -+#if OS(DARWIN) || (OS(LINUX) && defined(__GLIBC__) && !defined(__UCLIBC__)) && !OS(ANDROID) - #include <cxxabi.h> - #include <dlfcn.h> - #include <execinfo.h> -@@ -242,7 +242,7 @@ - - void WTFGetBacktrace(void** stack, int* size) - { --#if (OS(DARWIN) || (OS(LINUX) && !defined(__UCLIBC__))) && !OS(ANDROID) -+#if OS(DARWIN) || (OS(LINUX) && defined(__GLIBC__) && !defined(__UCLIBC__)) && !OS(ANDROID) - *size = backtrace(stack, *size); - #elif OS(WINDOWS) && !OS(WINCE) - // The CaptureStackBackTrace function is available in XP, but it is not defined diff --git a/user/qt5-qtwebkit/fix-rpath.patch b/user/qt5-qtwebkit/fix-rpath.patch deleted file mode 100644 index 6b08fd1a3..000000000 --- a/user/qt5-qtwebkit/fix-rpath.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- ./Tools/qmake/mkspecs/features/unix/default_post.prf.orig -+++ ./Tools/qmake/mkspecs/features/unix/default_post.prf -@@ -59,8 +59,6 @@ - } - } - --contains(TEMPLATE, app): CONFIG += rpath -- - CONFIG(debug, debug|release)|force_debug_info { - # Make ld not cache the symbol tables of input files in memory to avoid memory exhaustion during the linking phase. - !force_static_libs_as_shared:config_gnuld: QMAKE_LFLAGS += -Wl,--no-keep-memory diff --git a/user/qt5-qtwebkit/pic.patch b/user/qt5-qtwebkit/pic.patch deleted file mode 100644 index ef8993ee3..000000000 --- a/user/qt5-qtwebkit/pic.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- ./Source/WTF/wtf/InlineASM.h.orig 2013-10-07 11:36:58.995128674 +0000 -+++ ./Source/WTF/wtf/InlineASM.h 2013-10-07 11:37:28.058792290 +0000 -@@ -42,7 +42,7 @@ - #define THUMB_FUNC_PARAM(name) - #endif - --#if (OS(LINUX) || OS(FREEBSD)) && CPU(X86_64) -+#if (OS(LINUX) || OS(FREEBSD)) && (CPU(X86_64) || defined(__PIC__)) - #define GLOBAL_REFERENCE(name) #name "@plt" - #elif CPU(X86) && COMPILER(MINGW) - #define GLOBAL_REFERENCE(name) "@" #name "@4" diff --git a/user/qt5-qtwebkit/ppc-llint.patch b/user/qt5-qtwebkit/ppc-llint.patch new file mode 100644 index 000000000..033bbab68 --- /dev/null +++ b/user/qt5-qtwebkit/ppc-llint.patch @@ -0,0 +1,32 @@ +This fixes JavaScriptCore on big endian systems (mainly ppc). + +Without the patch, attempting to run any JS results in +a crash as the generated code was endian specific. + +--- qtwebkit/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm ++++ qtwebkit/Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm +@@ -1440,13 +1440,13 @@ _llint_op_put_by_id: + loadp StructureChain::m_vector[t3], t3 + assert(macro (ok) btpnz t3, ok end) + +- loadp Structure::m_prototype[t2], t2 ++ loadp Structure::m_prototype + PayloadOffset[t2], t2 + btpz t2, .opPutByIdTransitionChainDone + .opPutByIdTransitionChainLoop: + loadp [t3], t1 + bineq t1, JSCell::m_structureID[t2], .opPutByIdSlow + addp 4, t3 +- loadp Structure::m_prototype[t1], t2 ++ loadp Structure::m_prototype + PayloadOffset[t1], t2 + btpnz t2, .opPutByIdTransitionChainLoop + + .opPutByIdTransitionChainDone: +@@ -2004,7 +2004,7 @@ _llint_throw_from_slow_path_trampoline: + # When throwing from the interpreter (i.e. throwing from LLIntSlowPaths), so + # the throw target is not necessarily interpreted code, we come to here. + # This essentially emulates the JIT's throwing protocol. +- loadp Callee[cfr], t1 ++ loadp Callee + PayloadOffset[cfr], t1 + andp MarkedBlockMask, t1 + loadp MarkedBlockFooterOffset + MarkedBlock::Footer::m_vm[t1], t1 + jmp VM::targetMachinePCForThrow[t1] |