Title: [188973] trunk
Revision
188973
Author
mcatanz...@igalia.com
Date
2015-08-26 11:46:04 -0700 (Wed, 26 Aug 2015)

Log Message

[GTK] Disable ACCELERATED_2D_CANVAS by default
https://bugs.webkit.org/show_bug.cgi?id=148473

Reviewed by Martin Robinson.

Currently ACCELERATED_2D_CANVAS is enabled by default on most systems (which have CairoGL)
but not on Debian (which does not). We've known this was problematic for a while, since it
means we have two different sets of distro-dependent bugs, but never decided whether that
outweighed the benefits of CarioGL or not. I'm making the call now: it's more important to
have the same bugs everywhere. We can turn this on again for other distros when we're ready
to turn it on for Debian.

Also, properly fail the build if ENABLE_ACCELERATED_2D_CANVAS is enabled but CairoGL is not
available.

* Source/cmake/OptionsGTK.cmake:

Modified Paths

Diff

Modified: trunk/ChangeLog (188972 => 188973)


--- trunk/ChangeLog	2015-08-26 18:34:38 UTC (rev 188972)
+++ trunk/ChangeLog	2015-08-26 18:46:04 UTC (rev 188973)
@@ -1,3 +1,22 @@
+2015-08-26  Michael Catanzaro  <mcatanz...@igalia.com>
+
+        [GTK] Disable ACCELERATED_2D_CANVAS by default
+        https://bugs.webkit.org/show_bug.cgi?id=148473
+
+        Reviewed by Martin Robinson.
+
+        Currently ACCELERATED_2D_CANVAS is enabled by default on most systems (which have CairoGL)
+        but not on Debian (which does not). We've known this was problematic for a while, since it
+        means we have two different sets of distro-dependent bugs, but never decided whether that
+        outweighed the benefits of CarioGL or not. I'm making the call now: it's more important to
+        have the same bugs everywhere. We can turn this on again for other distros when we're ready
+        to turn it on for Debian.
+
+        Also, properly fail the build if ENABLE_ACCELERATED_2D_CANVAS is enabled but CairoGL is not
+        available.
+
+        * Source/cmake/OptionsGTK.cmake:
+
 2015-08-25  Commit Queue  <commit-qu...@webkit.org>
 
         Unreviewed, rolling out r188919.

Modified: trunk/Source/cmake/OptionsGTK.cmake (188972 => 188973)


--- trunk/Source/cmake/OptionsGTK.cmake	2015-08-26 18:34:38 UTC (rev 188972)
+++ trunk/Source/cmake/OptionsGTK.cmake	2015-08-26 18:46:04 UTC (rev 188973)
@@ -112,27 +112,7 @@
     WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_MEMORY_SAMPLER PUBLIC OFF)
 endif ()
 
-if (OPENGL_FOUND)
-    if (GLX_FOUND)
-        list(APPEND CAIROGL_COMPONENTS cairo-glx)
-    endif ()
-    if (EGL_FOUND)
-        list(APPEND CAIROGL_COMPONENTS cairo-egl)
-    endif ()
-endif ()
-find_package(CairoGL 1.10.2 COMPONENTS ${CAIROGL_COMPONENTS})
-
-# Normally we do not set the value of options automatically. However, CairoGL is special. Currently
-# most major distros compile Cario with --enable-gl, but Debian and derivitives are a major
-# exception. You very probably want accelerated 2D canvas if Cario has been compiled with CarioGL,
-# and very probably do not want to recompile Cario otherwise. So we expect some major distros will
-# enable this feature, and others will not, and that is just fine for the time being. Once Debian
-# enables CairoGL, then it will be time to force this ON by default. Note that if GLX is installed,
-# EGL is not, and ENABLE_X11_TARGET is OFF, this guess is wrong and the user must override it. We
-# can't check ENABLE_X11_TARGET at this point because we don't know whether it's enabled until
-# WEBKIT_OPTION_END has been called, and at that point it's too late to change default values.
-WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_ACCELERATED_2D_CANVAS PUBLIC CAIROGL_FOUND)
-
+WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_ACCELERATED_2D_CANVAS PUBLIC OFF)
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_CREDENTIAL_STORAGE PUBLIC ON)
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_DRAG_SUPPORT PUBLIC ON)
 WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_GEOLOCATION PUBLIC ON)
@@ -241,6 +221,20 @@
 endif ()
 find_package(GLIB 2.36 REQUIRED COMPONENTS ${glib_components})
 
+if (ENABLE_ACCELERATED_2D_CANVAS)
+    if (GLX_FOUND)
+        list(APPEND CAIROGL_COMPONENTS cairo-glx)
+    endif ()
+    if (EGL_FOUND)
+        list(APPEND CAIROGL_COMPONENTS cairo-egl)
+    endif ()
+
+    find_package(CairoGL 1.10.2 COMPONENTS ${CAIROGL_COMPONENTS})
+    if (NOT CAIROGL_FOUND)
+        message(FATAL_ERROR "CairoGL is needed for ENABLE_ACCELERATED_2D_CANVAS")
+    endif ()
+endif ()
+
 if (ENABLE_CREDENTIAL_STORAGE)
     find_package(Libsecret)
     if (NOT LIBSECRET_FOUND)
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to