[Webkit-unassigned] [Bug 137684] Patch to build a wayland-only webkit/EFL(Without X11/Ecore_X)

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Oct 14 22:36:43 PDT 2014


https://bugs.webkit.org/show_bug.cgi?id=137684


cjacker <jianzhong.huang at i-soft.com.cn> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #239789|0                           |1
        is obsolete|                            |




--- Comment #6 from cjacker <jianzhong.huang at i-soft.com.cn>  2014-10-14 22:36:34 PST ---
Created an attachment (id=239849)
 --> (https://bugs.webkit.org/attachment.cgi?id=239849&action=review)
New patch to enable wayland build of ewebkit2

This patch include:
1, Changes to Source/WebKit2/UIProcess/efl/WebPageProxyEfl.cpp
The plugin related funcs is controlled by PLUGIN_ARCHITECTURE(X11) macro in header(Source/WebKit2/UIProcess/WebPageProxy.h).


2, Changes to Source/WebKit2/UIProcess/API/efl/EwkView.cpp
ECore_X.h should be imported only when HAVE_ECORE_X defined, It did no fail wayland build when this header exist.
But for pure wayland environment, This header did not exist at all.


3, Changes to Source/WebCore/platform/efl/EflScreenUtilities.cpp
Enable it only when HAVE_ECORE_X defined like other funcs in source.


4, Changes to Source/WebCore/platform/efl/PlatformScreenEfl.cpp
evas() function did not exist anymore, should use platformWidget() instead.
It's a bug when ECore_X disabled.

5, Changes to Tools/CMakeLists.txt
Do not build TestNetscapePlugIn when ENABLE_X11_TARGET OFF, since it's X11/Xlib related.

Above 5 changes should be safe, hope it can be commited soon.


And ...., about cmake options, It's not easy to make the logic clear:

Maybe ENABLE_ECORE_X should be removed and added two new ENABLE_X/ENABLE_WAYLAND options,
Here I still use a "ENABLE_WAYLAND" option, If it set ON:

1, ensure ENABLE_X11_TARGET/ENABLE_ECORE_X/ENABLE_NETSCAPE_PLUGIN_API set to OFF, since they depend on X.
2, check ecore-wayland to ensure EFL had wayland support.
3, set ENABLE_GLES2 and ENABLE_EGL ON to disable GL/GLX requirement.
4, do not build X11 related codes in EGL source list.
5, link WebCore/WebKit2 to GLESv2(when SHARED_CORE ON, libwebcore need link to GLESv2 also.)
6, Only link to X11 libs when ENABLE_X11_TARGET ON.

GLESv2/EGL required by WTF_USE_TILED_BACKING_STORE(-DWTF_USE_COORDINATED_GRAPHICS=1) under wayland build. (For X11 build, GL/GLX will be used by default.)

Acctually, WTF_USE_TILED_BACKING_STORE should never be disabled(even under X11), otherwise all gui related codes will be disabled(the COORDINATED_GRAPHICS macro mask all gui related codes.).

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list