From 4dc1f289852d6e496ad67bab0116632f83f826fa Mon Sep 17 00:00:00 2001 From: Gerasim Troeglazov <3dEyes@gmail.com> Date: Mon, 17 Jul 2017 22:44:50 +1000 Subject: [PATCH] qtwebkit: enable gstreamer support, fix useragent --- .../patches/qtwebkit-5.212.0~alpha2.patchset | 71 +++++++++++++++++-- .../qtwebkit/qtwebkit-5.212.0~alpha2.recipe | 65 +++++++++++++++-- 2 files changed, 124 insertions(+), 12 deletions(-) diff --git a/dev-qt/qtwebkit/patches/qtwebkit-5.212.0~alpha2.patchset b/dev-qt/qtwebkit/patches/qtwebkit-5.212.0~alpha2.patchset index 1baa9bb30..9a7137161 100644 --- a/dev-qt/qtwebkit/patches/qtwebkit-5.212.0~alpha2.patchset +++ b/dev-qt/qtwebkit/patches/qtwebkit-5.212.0~alpha2.patchset @@ -1,4 +1,4 @@ -From a89a827f7aed974f1c13892226e9b4d1f545514e Mon Sep 17 00:00:00 2001 +From 435ea3f817603c044601a41caa56e2d4dd6cddb2 Mon Sep 17 00:00:00 2001 From: Gerasim Troeglazov <3dEyes@gmail.com> Date: Fri, 16 Jun 2017 21:38:08 +1000 Subject: Fix build @@ -874,10 +874,10 @@ index 1930027..9c827a3 100644 set(USE_GSTREAMER_DEFAULT OFF) set(USE_QT_MULTIMEDIA_DEFAULT ON) -- -2.12.2 +2.13.1 -From a93c9cb0e4db0da22bbf4ad167ba278cb56f41c7 Mon Sep 17 00:00:00 2001 +From 636802d8047fb72f71246eaac679bb9ff907f760 Mon Sep 17 00:00:00 2001 From: Gerasim Troeglazov <3dEyes@gmail.com> Date: Sat, 17 Jun 2017 12:22:33 +1000 Subject: Add libnetwork @@ -901,10 +901,10 @@ index e5d08ed..deb9f68 100644 find_library(LIBRT_LIBRARIES NAMES rt) mark_as_advanced(LIBRT_LIBRARIES) -- -2.12.2 +2.13.1 -From 54630a42e794671757e01fca0faab1472e2dd258 Mon Sep 17 00:00:00 2001 +From ed7f9e20322840163f8ffced1840104da478da0b Mon Sep 17 00:00:00 2001 From: Gerasim Troeglazov <3dEyes@gmail.com> Date: Sat, 17 Jun 2017 12:23:20 +1000 Subject: Add Haiku detection to useragent string @@ -924,5 +924,64 @@ index 4b88762..fa564f9 100644 "GNU Hurd" #elif OS(LINUX) -- -2.12.2 +2.13.1 + + +From 59f0e94423239a4f3beec68758a13be7c427bebe Mon Sep 17 00:00:00 2001 +From: Gerasim Troeglazov <3dEyes@gmail.com> +Date: Mon, 17 Jul 2017 19:43:24 +1000 +Subject: Use gstreamer instead qtmulimadia + + +diff --git a/Source/cmake/OptionsQt.cmake b/Source/cmake/OptionsQt.cmake +index 9c827a3..1930027 100644 +--- a/Source/cmake/OptionsQt.cmake ++++ b/Source/cmake/OptionsQt.cmake +@@ -122,7 +122,7 @@ if (APPLE) + set(MACOS_BUILD_FRAMEWORKS ON) # TODO: Make it an option + endif () + +-if (WIN32 OR APPLE OR HAIKU) ++if (WIN32 OR APPLE) + set(USE_LIBHYPHEN_DEFAULT OFF) + set(USE_GSTREAMER_DEFAULT OFF) + set(USE_QT_MULTIMEDIA_DEFAULT ON) +-- +2.13.1 + + +From 6916eb2650d78bf98e2a299e46d4d3661a6480b6 Mon Sep 17 00:00:00 2001 +From: Gerasim Troeglazov <3dEyes@gmail.com> +Date: Mon, 17 Jul 2017 19:44:23 +1000 +Subject: UserAgent improvents + + +diff --git a/Source/WebCore/platform/qt/UserAgentQt.cpp b/Source/WebCore/platform/qt/UserAgentQt.cpp +index fa564f9..71920ff 100644 +--- a/Source/WebCore/platform/qt/UserAgentQt.cpp ++++ b/Source/WebCore/platform/qt/UserAgentQt.cpp +@@ -62,7 +62,7 @@ String UserAgentQt::standardUserAgent(const String &applicationNameForUserAgent, + + // Platform. + ua = ua.arg( +-#if OS(MAC_OS_X) ++#if OS(MAC_OS_X) || OS(HAIKU) + QStringLiteral("Macintosh; ") + #elif OS(WINDOWS) + QStringLiteral("") +@@ -95,7 +95,11 @@ String UserAgentQt::standardUserAgent(const String &applicationNameForUserAgent, + #elif OS(FREEBSD) + "FreeBSD" + #elif OS(HAIKU) +- "Haiku" ++#if CPU(X86) || CPU(X86_64) ++ "Intel Haiku R1 x86" ++#else ++ "Haiku R1" ++#endif + #elif OS(HURD) + "GNU Hurd" + #elif OS(LINUX) +-- +2.13.1 diff --git a/dev-qt/qtwebkit/qtwebkit-5.212.0~alpha2.recipe b/dev-qt/qtwebkit/qtwebkit-5.212.0~alpha2.recipe index 34c72365b..6ae9710bc 100644 --- a/dev-qt/qtwebkit/qtwebkit-5.212.0~alpha2.recipe +++ b/dev-qt/qtwebkit/qtwebkit-5.212.0~alpha2.recipe @@ -10,7 +10,7 @@ HOMEPAGE="https://github.com/annulen/webkit" COPYRIGHT="2015-2017 The Qt Company Ltd." LICENSE="GNU LGPL v2.1 GNU LGPL v3" -REVISION="2" +REVISION="3" SOURCE_URI="https://github.com/annulen/webkit/releases/download/qtwebkit-${portVersion/\~/-}/qtwebkit-${portVersion/\~/-}.tar.xz" CHECKSUM_SHA256="f8f901de567e11fc5659402b6b827eac75505ff9c5072d8e919aa306003f8f8a" SOURCE_DIR="qtwebkit-${portVersion/\~/-}" @@ -23,12 +23,45 @@ PROVIDES=" qtwebkit$secondaryArchSuffix = $portVersion compat >= 5 lib:libQt5WebKit$secondaryArchSuffix = $portVersion compat >= 5 lib:libQt5WebKitWidgets$secondaryArchSuffix = $portVersion compat >= 5 + cmd:QtWebDatabaseProcess$secondaryArchSuffix = $portVersion compat >= 5 + cmd:QtWebNetworkProcess$secondaryArchSuffix = $portVersion compat >= 5 + cmd:QtWebProcess$secondaryArchSuffix = $portVersion compat >= 5 " REQUIRES=" haiku$secondaryArchSuffix + lib:libfreetype$secondaryArchSuffix + lib:libfontconfig$secondaryArchSuffix lib:libgl$secondaryArchSuffix lib:libglu$secondaryArchSuffix lib:libglib_2.0$secondaryArchSuffix + lib:libgstadaptivedemux_1.0$secondaryArchSuffix + lib:libgstallocators_1.0$secondaryArchSuffix + lib:libgstapp_1.0$secondaryArchSuffix + lib:libgstaudio_1.0$secondaryArchSuffix + lib:libgstbadallocators_1.0$secondaryArchSuffix + lib:libgstbadaudio_1.0$secondaryArchSuffix + lib:libgstbadbase_1.0$secondaryArchSuffix + lib:libgstbadvideo_1.0$secondaryArchSuffix + lib:libgstbase_1.0$secondaryArchSuffix + lib:libgstbasecamerabinsrc_1.0$secondaryArchSuffix + lib:libgstcodecparsers_1.0$secondaryArchSuffix + lib:libgstcontroller_1.0$secondaryArchSuffix + lib:libgstfft_1.0$secondaryArchSuffix + lib:libgstinsertbin_1.0$secondaryArchSuffix + lib:libgstmpegts_1.0$secondaryArchSuffix + lib:libgstnet_1.0$secondaryArchSuffix + lib:libgstpbutils_1.0$secondaryArchSuffix + lib:libgstphotography_1.0$secondaryArchSuffix + lib:libgstplayer_1.0$secondaryArchSuffix + lib:libgstreamer_1.0$secondaryArchSuffix + lib:libgstriff_1.0$secondaryArchSuffix + lib:libgstrtp_1.0$secondaryArchSuffix + lib:libgstrtsp_1.0$secondaryArchSuffix + lib:libgstsdp_1.0$secondaryArchSuffix + lib:libgsttag_1.0$secondaryArchSuffix + lib:libgsturidownloader_1.0$secondaryArchSuffix + lib:libgstvideo_1.0$secondaryArchSuffix + lib:libhyphen$secondaryArchSuffix lib:libicudata$secondaryArchSuffix lib:libicui18n$secondaryArchSuffix lib:libicuuc$secondaryArchSuffix @@ -58,6 +91,7 @@ PROVIDES_devel=" devel:libQt5WebKit$secondaryArchSuffix = $portVersion compat >= 5 devel:libQt5WebKitWidgets$secondaryArchSuffix = $portVersion compat >= 5 " + REQUIRES_devel=" haiku$secondaryArchSuffix qtwebkit$secondaryArchSuffix == $portVersion base @@ -76,6 +110,14 @@ BUILD_REQUIRES=" devel:libgl$secondaryArchSuffix devel:libglu$secondaryArchSuffix devel:libglib_2.0$secondaryArchSuffix + devel:libgstapp_1.0$secondaryArchSuffix + devel:libgstaudio_1.0$secondaryArchSuffix + devel:libgstbadaudio_1.0$secondaryArchSuffix + devel:libgstbadbase_1.0$secondaryArchSuffix + devel:libgstbadvideo_1.0$secondaryArchSuffix + devel:libgstreamer_1.0$secondaryArchSuffix + devel:libgstvideo_1.0$secondaryArchSuffix + devel:libhyphen$secondaryArchSuffix devel:libicuuc$secondaryArchSuffix devel:libintl$secondaryArchSuffix devel:libjpeg$secondaryArchSuffix @@ -121,13 +163,21 @@ BUILD() { mkdir -p build && cd build cmake .. $cmakeDirArgs \ + -DCMAKE_INSTALL_PREFIX=$prefix \ + -DCMAKE_INSTALL_INCLUDEDIR=$includeDir \ + -DCMAKE_INSTALL_LIBDIR=$libDir \ + -DCMAKE_INSTALL_BINDIR=$binDir \ -DCMAKE_BUILD_TYPE=RELEASE \ -DPORT=Qt \ -DUSE_SYSTEM_MALLOC=ON \ -DENABLE_SAMPLING_PROFILER=OFF \ -DENABLE_FTPDIR=ON \ -DENABLE_THREADED_COMPOSITOR=ON \ - -DENABLE_TOOLS=OFF + -DENABLE_TOOLS=OFF \ + -DUSE_QT_MULTIMEDIA=OFF \ + -DUSE_GSTREAMER=ON \ + -DUSE_LIBHYPHEN=ON + make $jobArgs } @@ -136,15 +186,18 @@ INSTALL() cd build make install + mkdir -p $binDir + mv -f $prefix/lib/libexec/* $binDir + mkdir -p $dataDir/Qt5 mv -f $prefix/lib/qml $dataDir/Qt5 mv -f $prefix/mkspecs $dataDir/Qt5 - prepareInstalledDevelLibs libQt5WebKit libQt5WebKitWidgets + rm -rf $prefix/lib/libexec + fixPkgconfig - - sed -i -e "s|lib|develop/lib|" -e "s|headers/Qt5WebKit|headers/QtWebKit|" \ - $developDir/lib/pkgconfig/Qt5* + + prepareInstalledDevelLibs libQt5WebKit libQt5WebKitWidgets cd $libDir for i in lib*.so.5.*;do