Merge WebKitGTK+ 2.4 patch #1 - webkitgtk-0001-avoid-duplicated-symbols.patch
Merge WebKitGTK+ 2.4 patch #2 - webkitgtk-0002-ax-compare-versions-macro.patch
Merge WebKitGTK+ 2.4 patch #3 - webkitgtk-0003-remove-gtk2-dependency.patch
Merge WebKitGTK+ 2.4 patch #4 - webkitgtk-0004-installable-demo-browsers.patch
Merge pull request #1 from zdobersek/patch-migration

Patch migration
Adds nested wayland compositor implementation in the UI Process
Added WaylandDisplay and WaylandSurface
Added wayland files to the build
On Wayland platforms, have the WebView widget use the nested wayland compositor to gain access to the results of the accelerated compositing for the widget
Enable GLContext for Wayland platform. There is a type clash between EGL platforms when enabling X11 and Wayland platforms so for now, if both platforms are enabled, we force GLX for X11 to avoid the EGL path (since Wayland would be the target EGL platform)
Make LayerTreeHostGtk use the nested wayland compositor to obtain a shared Wayland surface on Wayland platforms
Fixes build error with OpenGLES (should be fixed upstream already)
Have LayerTreeHostGTK select between Wayland/X11 at run-time. Also, remove unnecessary GTK_API_VERSION_2 guards.
If bulding for both X11 and Wayland, make sure we use GLX to create the offscreen context when running on X11.
When creating the shared EGL display, add runtime checks to decide between X11 and Wayland.
Add support for multiple surfaces/widgets
Do not request frames from the web process manually. Remove view widgets from the nested compositor when destroyed.
Add additional guards for X11 or Wayland platforms

Code specific to X11 or Wayland should also be guarded with PLATFORM(X11)
or PLATFORM(WAYLAND), and not just by checking for defined GDK_WINDOWING_X11
or GDK_WINDOWING_WAYLAND.
Link the plugin process against GTK Wayland libraries
Add two missing build targets to the plugin process.