This patch turns off a number of gcc/clang-specific warnings for
clang-cl as well, as clang-cl understands all the warning flags that
clang understands. We currently don't turn on all the gcc/clang
warnings for clang-cl in configure, but that can be done separately, and
this patch addresses some pain points (particularly for cairo).
We're going to change how e.g. CFLAGS are printed out in backend.mk, and
to fit that model, the data in the corresponding moz.build variables
need to be straightened up.
In bug 922912, we folded back gkmedias.dll info xul.dll, so in practice, there
is no default configuration left that exercises GKMEDIAS_SHARED_LIBRARY. And
sure enough, it's been broken for months in many different ways.
The gkmedias intermediate library is however kept for webrtc signaling tests.
The patch removes 455 occurrences of FAIL_ON_WARNINGS from moz.build files, and
adds 78 instances of ALLOW_COMPILER_WARNINGS. About half of those 78 are in
code we control and which should be removable with a little effort.
This cherrypicks 21c1e4566726c9397a840dc5331e40a8d0ca9511
from upstream ANGLE which fixes a crash when running:
/conformance/glsl/bugs/undefined-index-should-not-crash.html
The renderer/d3d/d3d11/SwapChain11.cpp source file is only defined if
building on Windows. The generated moz.build was adjusting the .flags
of this file unconditionally. This worked up until now because the
moz.build was only being evaluated on Windows. However, this assumption
no longer holds true after work in bug 1132771 is complete.
Patch the generation script to put .flags adjustment for the file
in question behind the same conditional as the SOURCES assignment.
--HG--
extra : rebase_source : 77becf0be99b5ade809a90ecf7954345d693d81e
This avoids reusing the RenderTargetView across AcquireSync/ReleaseSync pairs
and fixes bug 1109718. It adds a ReleaseSync call to ANGLE
that causes it to invalidate the RenderTargetView.
--HG--
extra : rebase_source : 993a437f5d1e1bfda32ef995b09f216930f174e1
This fixes the classic BGRA/RGBA mismatch with D3D11 by making Renderer11.cpp
do the same thing as Renderer9.cpp from bug 1096634
It also fixes an assertion failure that happens when building the stencil
map caused by Bug 1088345.
--HG--
extra : rebase_source : 0fbe2902ede19a5fdb4898c7d27c62e6f59e954a
There are, sadly, many combinations of linkage in use throughout the tree.
The main differentiator, though, is between program/libraries related to
Gecko or not. Kind of. Some need mozglue, some don't. Some need dependent
linkage, some standalone.
Anyways, these new templates remove the need to manually define the
right dependencies against xpcomglue, nspr, mozalloc and mozglue
in most cases.
Places that build programs and were resetting MOZ_GLUE_PROGRAM_LDFLAGS
or that build libraries and were resetting MOZ_GLUE_LDFLAGS can now
just not use those Gecko-specific templates.
This corresponds to ANGLE commit 9a2e6ac98a10907b1241bd5709597912e08f63fb
It vastly improves D3D11 performance on Intel GPUs by
avoiding write to multiple render targets when unneeded.