Merge pull request #9066 from Rmys/master

webkit-gkt2
This commit is contained in:
Rmys
2021-02-28 19:05:27 +03:00
committed by GitHub
7 changed files with 129 additions and 239 deletions
+38 -23
View File
@@ -5,39 +5,54 @@
# See the file http://www.gnu.org/licenses/gpl.txt
from pisi.actionsapi import get
from pisi.actionsapi import cmaketools
from pisi.actionsapi import autotools
from pisi.actionsapi import pisitools
from pisi.actionsapi import shelltools
paths = ["JavaScriptCore", "WebCore", "WebKit", "WebKit2"]
docs = ["AUTHORS", "COPYING.LIB", "THANKS", \
shelltools.export("XDG_DATA_HOME", get.workDIR())
#pisitools.flags.replace("-ggdb3", "-g")
cflags = get.CFLAGS().replace("-ggdb3","")
cxxflags = get.CXXFLAGS().replace("-gddb3", "")
paths = ["JavaScriptCore", "WebCore", "WebKit"]
docs = ["AUTHORS", "ChangeLog", "COPYING.LIB", "THANKS", \
"LICENSE-LGPL-2", "LICENSE-LGPL-2.1", "LICENSE"]
def setup():
#shelltools.system("rm -r Source/ThirdParty/gtest/")
cmaketools.configure("-DPORT=GTK \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_SKIP_RPATH=ON \
-DCMAKE_INSTALL_PREFIX=/usr \
-DLIB_INSTALL_DIR=/usr/lib \
-DLIBEXEC_INSTALL_DIR=/usr/lib/webkit2gtk-4.0 \
-DENABLE_CREDENTIAL_STORAGE=ON \
-DENABLE_GEOLOCATION=ON \
-DENABLE_VIDEO=ON \
-DENABLE_WEB_AUDIO=ON \
-DENABLE_WEBGL=ON \
-DUSE_LIBHYPHEN=OFF \
-DUSE_WOFF2=OFF \
-DUSE_SYSTEMD=OFF \
-DJPEG_INCLUDE_DIR=/usr/include/openjpeg-2.3 \
-DSHOULD_INSTALL_JS_SHELL=ON \
-DENABLE_MINIBROWSER=ON")
autotools.autoreconf("-fiv")
shelltools.export("CFLAGS", cflags)
shelltools.export("CXXFLAGS", cxxflags)
autotools.configure("--prefix=/usr \
--libexecdir=/usr/lib/WebKitGTK \
--disable-static \
--disable-webkit2 \
--disable-gtk-doc \
--disable-silent-rules \
--disable-wayland-target \
--enable-geolocation \
--enable-glx \
--enable-webgl \
--with-gnu-ld \
--with-gtk=2.0 \
--enable-x11-target \
--enable-video \
--enable-web-audio \
--enable-introspection")
pisitools.dosed("libtool", " -shared ", " -Wl,-O1,--as-needed -shared ")
def build():
cmaketools.make()
shelltools.export("CFLAGS", cflags)
shelltools.export("CXXFLAGS", cxxflags)
autotools.make("-j1 all stamp-po")
def install():
cmaketools.rawInstall("DESTDIR=%s" % get.installDIR())
shelltools.export("CFLAGS", cflags)
shelltools.export("CXXFLAGS", cxxflags)
autotools.rawInstall("-j1 DESTDIR=%s" % get.installDIR())
pisitools.domove("/usr/share/gtk-doc/html", "/usr/share/doc/webkit-gtk2")
pisitools.dodoc("NEWS")
shelltools.cd("Source")
@@ -1,34 +0,0 @@
From d553de92ed238278f51b93a2c90af7d3ff7a2da2 Mon Sep 17 00:00:00 2001
From: Mart Raudsepp <leio@gentoo.org>
Date: Tue, 12 May 2020 15:28:45 +0300
Subject: [PATCH] Try to fix an apparent non-unified build error
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Source/WebKit/WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp: In member function WTF::RefPtr<WebKit::InjectedBundleNodeHandle>
WebKit::InjectedBundleHitTestResult::urlElementHandle() const:
Source/WebKit/WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:57:78: error: no matching function for call to
WebKit::InjectedBundleNodeHandle::getOrCreate(WebCore::Element*)
57 | return InjectedBundleNodeHandle::getOrCreate(m_hitTestResult.URLElement());
| ^
In file included from Source/WebKit/WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:29
---
.../WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp | 1 +
1 file changed, 1 insertion(+)
diff --git a/Source/WebKit/WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp b/Source/WebKit/WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp
index df8e55df1f0..26f045bd3fc 100644
--- a/Source/WebKit/WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp
+++ b/Source/WebKit/WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp
@@ -32,6 +32,7 @@
#include "WebImage.h"
#include <WebCore/BitmapImage.h>
#include <WebCore/Document.h>
+#include <WebCore/Element.h>
#include <WebCore/Frame.h>
#include <WebCore/FrameLoader.h>
#include <WebCore/FrameView.h>
--
2.20.1
@@ -1,53 +0,0 @@
From c67efa2bbe2094b40b4e104bb26497c2aff5ce68 Mon Sep 17 00:00:00 2001
From: Mart Raudsepp <leio@gentoo.org>
Date: Sat, 9 May 2020 23:11:52 +0300
Subject: [PATCH] Clean up OpenGLShims.h conditionals in a few places to fix
some build configurations
---
Source/WebCore/platform/graphics/GLContext.cpp | 5 ++++-
Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp | 5 ++++-
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/Source/WebCore/platform/graphics/GLContext.cpp b/Source/WebCore/platform/graphics/GLContext.cpp
index b217988b990..1ba0eb8a482 100644
--- a/Source/WebCore/platform/graphics/GLContext.cpp
+++ b/Source/WebCore/platform/graphics/GLContext.cpp
@@ -28,6 +28,9 @@
#if USE(GLX)
#include "GLContextGLX.h"
+#endif
+
+#if !USE(OPENGL_ES) && !USE(LIBEPOXY) && !USE(ANGLE)
#include "OpenGLShims.h"
#endif
@@ -57,7 +60,7 @@ inline ThreadGlobalGLContext* currentContext()
static bool initializeOpenGLShimsIfNeeded()
{
-#if USE(OPENGL_ES) || USE(LIBEPOXY)
+#if USE(OPENGL_ES) || USE(LIBEPOXY) || USE(ANGLE)
return true;
#else
static bool initialized = false;
diff --git a/Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp b/Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp
index 3515be452b2..82cce70f14b 100644
--- a/Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp
+++ b/Source/WebKit/UIProcess/API/glib/WebKitProtocolHandler.cpp
@@ -64,7 +64,10 @@
#if USE(GLX)
#include <GL/glx.h>
-#include <WebCore/OpenGLShims.h>
+#endif
+
+#if !USE(OPENGL_ES) && !USE(LIBEPOXY) && !USE(ANGLE)
+#include "WebCore/OpenGLShims.h"
#endif
#if USE(GSTREAMER)
--
2.20.1
@@ -1,31 +0,0 @@
From f6b0ae5334eb9de1858b5f3b0edc2f7245087cab Mon Sep 17 00:00:00 2001
From: Mart Raudsepp <leio@gentoo.org>
Date: Sat, 11 Jul 2020 15:28:05 +0300
Subject: [PATCH] Try to fix another apparent non-unified build error
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Source/WebCore/rendering/svg/RenderSVGResourceClipper.h:70:42: required from here
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/unique_ptr.h:79:16: error: invalid application of sizeof to incomplete type WebCore::ImageBuffer
79 | static_assert(sizeof(_Tp)>0,
| ^~~~~~~~~~~
---
Source/WebCore/rendering/svg/RenderSVGResourceClipper.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/Source/WebCore/rendering/svg/RenderSVGResourceClipper.h b/Source/WebCore/rendering/svg/RenderSVGResourceClipper.h
index 55d9e34df61..12a7a83cc61 100644
--- a/Source/WebCore/rendering/svg/RenderSVGResourceClipper.h
+++ b/Source/WebCore/rendering/svg/RenderSVGResourceClipper.h
@@ -19,6 +19,7 @@
#pragma once
+#include "ImageBuffer.h"
#include "RenderSVGResourceContainer.h"
#include "SVGClipPathElement.h"
#include "SVGUnitTypes.h"
--
2.20.1
@@ -1,27 +0,0 @@
From 25cf4db5575192fd306b7a74d496d1e10d8cfd3e Mon Sep 17 00:00:00 2001
From: Mart Raudsepp <leio@gentoo.org>
Date: Fri, 27 Nov 2020 22:47:30 +0200
Subject: [PATCH] [X11] Fix build with disabled OpenGL
The added PlatformDisplayX11::visual() method requires symbols from
X11/Xutil.h, which wasn't added as an explicit include with only
EGL headers indirectly pulled it in with standard build options.
---
Source/WebCore/platform/graphics/x11/PlatformDisplayX11.cpp | 1 +
1 file changed, 1 insertion(+)
diff --git a/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.cpp b/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.cpp
index 8fe3d3e92c88..2b2805446aad 100644
--- a/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.cpp
+++ b/Source/WebCore/platform/graphics/x11/PlatformDisplayX11.cpp
@@ -30,6 +30,7 @@
#if PLATFORM(X11)
#include <X11/Xlib.h>
+#include <X11/Xutil.h>
#include <X11/extensions/Xcomposite.h>
#if PLATFORM(GTK)
#include <X11/extensions/Xdamage.h>
--
2.20.1
@@ -1,10 +0,0 @@
--- webkitgtk-2.24.4.orig/Source/WebKit/UIProcess/gtk/WaylandCompositor.cpp 2019-08-26 17:55:46.000000000 +0300
+++ webkitgtk-2.24.4.orig/Source/WebKit/UIProcess/gtk/WaylandCompositor.cpp 2019-11-04 23:33:44.146933810 +0300
@@ -31,6 +31,7 @@
#include "WebKitWaylandServerProtocol.h"
#include <EGL/egl.h>
#include <EGL/eglext.h>
+#include <EGL/eglmesaext.h>
#include <WebCore/GLContext.h>
#include <WebCore/PlatformDisplayWayland.h>
#include <WebCore/Region.h>
+91 -61
View File
@@ -2,10 +2,10 @@
<!DOCTYPE PISI SYSTEM "https://pisilinux.org/projeler/pisi/pisi-spec.dtd">
<PISI>
<Source>
<Name>webkit2gtk</Name>
<Name>webkit-gtk2</Name>
<Homepage>http://webkitgtk.org</Homepage>
<Packager>
<Name>Alihan Öztürk</Name>
<Name>PisiLinux Community</Name>
<Email>admins@pisilinux.org</Email>
</Packager>
<License>LGPLv2</License>
@@ -14,100 +14,87 @@
<IsA>library</IsA>
<Summary>An opensource web browser engine for GTK+ applications</Summary>
<Description>The GTK+ port of WebKit is intended to provide a browser component primarily for users of the portable GTK+ UI toolkit on platforms like Linux.</Description>
<Archive sha1sum="4fc8753786d7762a3c4ecdc7ea11fc38b5468d6f" type="tarxz">http://www.webkitgtk.org/releases/webkitgtk-2.30.5.tar.xz</Archive>
<Archive sha1sum="e425ae86084ab6335dadb368c9e8f53600665d54" type="tarxz">http://www.webkitgtk.org/releases/webkitgtk-2.4.11.tar.xz</Archive>
<BuildDependencies>
<Dependency>cmake</Dependency>
<Dependency>which</Dependency>
<Dependency>gperf</Dependency>
<Dependency>gtk-doc</Dependency>
<Dependency>bubblewrap</Dependency>
<Dependency>ruby-devel</Dependency>
<Dependency>mesa-devel</Dependency>
<Dependency>gtk3-devel</Dependency>
<Dependency>gtk-doc</Dependency>
<Dependency>glib2-devel</Dependency>
<Dependency>gtk2-devel</Dependency>
<Dependency>ruby-devel</Dependency>
<Dependency>webp-devel</Dependency>
<Dependency>libwpe-devel</Dependency>
<Dependency>cairo-devel</Dependency>
<Dependency>icu4c-devel</Dependency>
<Dependency>libXt-devel</Dependency>
<Dependency>enchant-devel</Dependency>
<Dependency>sqlite-devel</Dependency>
<Dependency>libsoup-devel</Dependency>
<Dependency>wayland-devel</Dependency>
<Dependency>libxslt-devel</Dependency>
<Dependency>geoclue-devel</Dependency>
<Dependency>libgudev-devel</Dependency>
<Dependency>libsoup-devel</Dependency>
<Dependency>fontconfig-devel</Dependency>
<Dependency>libxslt-devel</Dependency>
<Dependency>harfbuzz-devel</Dependency>
<Dependency>enchant2-devel</Dependency>
<Dependency>xdg-dbus-proxy</Dependency>
<Dependency>libtasn1-devel</Dependency>
<Dependency>libglvnd-devel</Dependency>
<Dependency>libnotify-devel</Dependency>
<Dependency>openjpeg2-devel</Dependency>
<Dependency>libsecret-devel</Dependency>
<Dependency>libgcrypt-devel</Dependency>
<Dependency>libseccomp-devel</Dependency>
<Dependency>icon-theme-hicolor</Dependency>
<Dependency>libXcomposite-devel</Dependency>
<Dependency>libjpeg-turbo-devel</Dependency>
<Dependency>gst-plugins-bad-devel</Dependency>
<Dependency>gst-plugins-base-devel</Dependency>
<Dependency>gstreamer-devel</Dependency>
<Dependency>gst-libav</Dependency>
<Dependency>gobject-introspection-devel</Dependency>
<Dependency>wpebackend-fdo-devel</Dependency>
<Dependency>gst-plugins-base-devel</Dependency>
<Dependency>gst-plugins-bad-devel</Dependency>
<Dependency>gst-plugins-good</Dependency>
<Dependency>which</Dependency>
<Dependency>icon-theme-hicolor</Dependency>
<Dependency>gperf</Dependency>
<Dependency>libSM-devel</Dependency>
</BuildDependencies>
<Patches>
<Patch level="1">gentoo/webkit-gtk-2.24.4-eglmesaext-include.patch</Patch>
<Patch level="1">gentoo/2.28.2-opengl-without-X-fixes.patch</Patch>
<Patch level="1">gentoo/2.28.2-non-jumbo-fix.patch</Patch>
<Patch level="1">gentoo/2.28.4-non-jumbo-fix2.patch</Patch>
<Patch level="1">gentoo/2.30.3-fix-noGL-build.patch</Patch>
<Patch level="1">install-minibrowser.patch</Patch>
<Patch level="1">enchant-2.x.patch</Patch>
<Patch level="1">icu59.patch</Patch>
<Patch level="1">pkgconfig-enchant-2.patch</Patch>
<Patch level="1">icu68.patch</Patch>
<Patch level="1">fix-ftbfs-gcc6.patch</Patch>
<Patch level="1">gtk-doc.patch</Patch>
<Patch level="1">grammar.patch</Patch>
</Patches>
</Source>
<Package>
<Name>webkit2gtk</Name>
<Name>webkit-gtk2</Name>
<RuntimeDependencies>
<Dependency>atk</Dependency>
<Dependency>zlib</Dependency>
<Dependency>gtk3</Dependency>
<Dependency>glib2</Dependency>
<Dependency>gtk2</Dependency>
<Dependency>mesa</Dependency>
<Dependency>webp</Dependency>
<Dependency>cairo</Dependency>
<Dependency>icu4c</Dependency>
<Dependency>libXt</Dependency>
<Dependency>glib2</Dependency>
<Dependency>pango</Dependency>
<Dependency>libwpe</Dependency>
<Dependency>libX11</Dependency>
<Dependency>libgcc</Dependency>
<Dependency>libpng</Dependency>
<Dependency>libxml2</Dependency>
<Dependency>pango</Dependency>
<Dependency>sqlite</Dependency>
<Dependency>enchant</Dependency>
<Dependency>geoclue</Dependency>
<Dependency>libsoup</Dependency>
<Dependency>libxslt</Dependency>
<Dependency>enchant2</Dependency>
<Dependency>libtasn1</Dependency>
<Dependency>harfbuzz</Dependency>
<Dependency>freetype</Dependency>
<Dependency>libglvnd</Dependency>
<Dependency>libsecret</Dependency>
<Dependency>openjpeg2</Dependency>
<Dependency>libnotify</Dependency>
<Dependency>libgcrypt</Dependency>
<Dependency>gstreamer</Dependency>
<Dependency>gst-libav</Dependency>
<Dependency>fontconfig</Dependency>
<Dependency>gdk-pixbuf</Dependency>
<Dependency>libXdamage</Dependency>
<Dependency>libXrender</Dependency>
<Dependency>libseccomp</Dependency>
<Dependency>libXcomposite</Dependency>
<Dependency>libjpeg-turbo</Dependency>
<Dependency>gstreamer</Dependency>
<Dependency>gst-libav</Dependency>
<Dependency>gst-plugins-bad</Dependency>
<Dependency>gst-plugins-base</Dependency>
<Dependency>gst-plugins-good</Dependency>
<Dependency>gobject-introspection</Dependency>
<Dependency>wpebackend-fdo</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="library">/usr/lib</Path>
@@ -117,40 +104,83 @@
</Package>
<Package>
<Name>webkit2gtk-devel</Name>
<Name>webkit-gtk2-devel</Name>
<IsA>library</IsA>
<IsA>data:doc</IsA>
<Summary>Development files for GTK+ port of WebKit</Summary>
<RuntimeDependencies>
<Dependency>gtk3-devel</Dependency>
<Dependency>libgcc</Dependency>
<Dependency>gtk2-devel</Dependency>
<Dependency>glib2-devel</Dependency>
<Dependency release="current">webkit-gtk2</Dependency>
<Dependency>libsoup-devel</Dependency>
<Dependency release="current">webkit2gtk</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="executable">/usr/bin</Path>
<Path fileType="header">/usr/include</Path>
<Path fileType="data">/usr/lib/pkgconfig</Path>
<Path fileType="doc">/usr/share/doc/webkit-gtk/Web*</Path>
<Path fileType="doc">/usr/share/doc/webkit2gtk/html</Path>
<Path fileType="doc">/usr/share/doc/webkit-gtk2/html</Path>
<Path fileType="doc">/usr/share/doc/webkit-gtk/JavaScriptCore</Path>
</Files>
</Package>
<History>
<Update release="8">
<Date>2020-01-28</Date>
<Version>2.4.11</Version>
<Comment>Rebuild.</Comment>
<Name>Pisi Linux Community</Name>
<Email>admin@pisilinux.org</Email>
</Update>
<Update release="7">
<Date>2018-08-09</Date>
<Version>2.4.11</Version>
<Comment>Rebuild.</Comment>
<Name>Pisi Linux Community</Name>
<Email>admin@pisilinux.org</Email>
</Update>
<Update release="6">
<Date>2018-05-04</Date>
<Version>2.4.11</Version>
<Comment>Rebuild.</Comment>
<Name>Pisi Linux Community</Name>
<Email>admin@pisilinux.org</Email>
</Update>
<Update release="5">
<Date>2018-02-05</Date>
<Version>2.4.11</Version>
<Comment>Rebuild for new toolchain</Comment>
<Name>Pisi Linux Community</Name>
<Email>admin@pisilinux.org</Email>
</Update>
<Update release="4">
<Date>2017-02-27</Date>
<Version>2.4.11</Version>
<Comment>Rebuild for new toolchain.</Comment>
<Name>Pisi Linux Community</Name>
<Email>admin@pisilinux.org</Email>
</Update>
<Update release="3">
<Date>2016-06-18</Date>
<Version>2.4.11</Version>
<Comment>Version Bump</Comment>
<Name>Pisi Linux Community</Name>
<Email>admin@pisilinux.org</Email>
</Update>
<Update release="2">
<Date>2021-02-27</Date>
<Version>2.30.5</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
<Date>2016-06-9</Date>
<Version>2.4.9</Version>
<Comment>Release Bump</Comment>
<Name>Pisi Linux Community</Name>
<Email>admin@pisilinux.org</Email>
</Update>
<Update release="1">
<Date>2020-01-30</Date>
<Version>2.26.3</Version>
<Comment>First release.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
<Date>2015-08-05</Date>
<Version>2.4.9</Version>
<Comment>First release</Comment>
<Name>Ayhan Yalçınsoy</Name>
<Email>ayhanyalcinsoy@pisilinux.org</Email>
</Update>
</History>
</PISI>