b=603367, disable ANGLE/WebGL on Linux until build system issues are fixed (bug 559964)
authorVladimir Vukicevic <vladimir@pobox.com>
Fri, 03 Dec 2010 14:44:01 -0800
changeset 58584 3bb7e1a3cb223816f3a47d3df321f8471e389463
parent 58583 f1dd337db722f9ae3c57cd80d50a8ac654037b96
child 58585 ac07899a5faf56faf6134657054d0db2a2ca5bec
push id1
push usershaver@mozilla.com
push dateTue, 04 Jan 2011 17:58:04 +0000
bugs603367, 559964
milestone2.0b8pre
b=603367, disable ANGLE/WebGL on Linux until build system issues are fixed (bug 559964)
content/canvas/src/Makefile.in
gfx/Makefile.in
layout/build/Makefile.in
modules/libpref/src/init/all.js
toolkit/library/libxul-config.mk
--- a/content/canvas/src/Makefile.in
+++ b/content/canvas/src/Makefile.in
@@ -69,20 +69,26 @@ ifdef MOZ_WEBGL
 
 CPPSRCS += \
 	WebGLContext.cpp \
 	WebGLContextGL.cpp \
 	WebGLContextUtils.cpp \
 	WebGLContextValidate.cpp \
 	$(NULL)
 
-# We can't build ANGLE on linux-64 until build bug 560894 and related
+# We can't build ANGLE on linux until build bug 560894 and related
 # are fixed.
-ifneq ($(OS_ARCH)_$(OS_TEST),Linux_x86_64)
+ifneq ($(OS_ARCH),Linux)
 DEFINES += -DUSE_ANGLE
+USE_ANGLE=1
+else
+ifdef FORCE_BUILD_ANGLE
+DEFINES += -DUSE_ANGLE
+USE_ANGLE=1
+endif
 endif
 
 ifndef MOZ_ENABLE_LIBXUL
 
 ifdef USE_ANGLE
 
 SHARED_LIBRARY_LIBS += \
 	$(DEPTH)/gfx/angle/$(LIB_PREFIX)angle.$(LIB_SUFFIX) \
--- a/gfx/Makefile.in
+++ b/gfx/Makefile.in
@@ -51,19 +51,24 @@ endif
 # In static builds, ycbcr must appear after layers in
 # the link line on linux. This order is defined by the
 # order listed in DIRS. On shared builds ycbcr must
 # be built first so the order is reversed.
 ifndef BUILD_STATIC_LIBS
 DIRS		+= ycbcr
 endif
 
-ifneq ($(OS_ARCH)$(OS_TEST),Linuxx86_64)
+ifneq ($(OS_ARCH),Linux)
+DIRS		+= angle
+else
+ifdef FORCE_BUILD_ANGLE
 DIRS		+= angle
 endif
+endif
+
 
 DIRS		+= src qcms layers harfbuzz/src ots/src thebes src/thebes
 
 ifdef BUILD_STATIC_LIBS
 DIRS		+= ycbcr
 endif
 
 ifdef MOZ_IPC
--- a/layout/build/Makefile.in
+++ b/layout/build/Makefile.in
@@ -56,18 +56,22 @@ EXPORT_LIBRARY = 1
 IS_COMPONENT	= 1
 MODULE_NAME	= nsLayoutModule
 GRE_MODULE	= 1
 LIBXUL_LIBRARY	= 1
 
 ifndef MOZ_ENABLE_LIBXUL
 EXTRA_DSO_LIBS	= gkgfx
 
-ifneq ($(OS_ARCH)_$(OS_TEST),Linux_x86_64)
+ifneq ($(OS_ARCH),Linux)
 EXTRA_DSO_LIBS += angle
+else
+ifdef FORCE_BUILD_ANGLE
+EXTRA_DSO_LIBS += angle
+endif
 endif
 
 endif
 
 EXTRA_DSO_LIBS	+= thebes ycbcr
 
 
 CPPSRCS		= \
--- a/modules/libpref/src/init/all.js
+++ b/modules/libpref/src/init/all.js
@@ -3195,27 +3195,24 @@ pref("image.mem.decode_bytes_at_a_time",
 
 // The longest time we can spend in an iteration of an async decode
 pref("image.mem.max_ms_before_yield", 400);
 
 // The maximum source data size for which we auto sync decode
 pref("image.mem.max_bytes_for_sync_decode", 150000);
 
 // WebGL prefs
-// keep disabled on linux-x64 until bug 578877 is fixed
-#ifdef _AMD64_
-#ifdef MOZ_X11
-// MOZ_X11 && AMD64
+// keep disabled on linux until bug 578877 is fixed
+// This is not an ideal define, but it gets the right set of
+// build machines.
+#ifdef MOZ_WIDGET_GTK2
 pref("webgl.enabled_for_all_sites", false);
 #else
 pref("webgl.enabled_for_all_sites", true);
 #endif
-#else
-pref("webgl.enabled_for_all_sites", true);
-#endif
 pref("webgl.shader_validator", true);
 pref("webgl.force_osmesa", false);
 pref("webgl.mochitest_native_gl", false);
 pref("webgl.osmesalib", "");
 pref("webgl.verbose", false);
 
 #ifdef XP_WIN
 #ifndef WINCE
--- a/toolkit/library/libxul-config.mk
+++ b/toolkit/library/libxul-config.mk
@@ -301,18 +301,22 @@ COMPONENT_LIBS += imgicon
 endif
 
 ifeq ($(MOZ_WIDGET_TOOLKIT),android)
 COMPONENT_LIBS += widget_android
 endif
 
 STATIC_LIBS += thebes ycbcr
 
-ifneq ($(OS_ARCH)_$(OS_TEST),Linux_x86_64)
+ifneq ($(OS_ARCH),Linux)
 STATIC_LIBS += angle
+else
+ifdef FORCE_BUILD_ANGLE
+STATIC_LIBS += angle
+endif
 endif
 
 COMPONENT_LIBS += gkgfxthebes
 
 ifeq (windows,$(MOZ_WIDGET_TOOLKIT))
 COMPONENT_LIBS += gkwidget
 endif
 ifeq (beos,$(MOZ_WIDGET_TOOLKIT))