Use -Werror in Android builds.

Suppress existing warnings.

Bug b/66996870

Change-Id: I9b78f840638a57c2559ccc4dbc583cc6a6e21c14
Reviewed-on: https://swiftshader-review.googlesource.com/17630
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
Tested-by: Nicolas Capens <nicolascapens@google.com>
diff --git a/src/Android.mk b/src/Android.mk
index 3eebf5a..945daf8 100644
--- a/src/Android.mk
+++ b/src/Android.mk
@@ -102,7 +102,14 @@
 
 COMMON_CFLAGS := \
 	-DLOG_TAG=\"swiftshader\" \
+	-Wall \
+	-Werror \
+	-Wno-format \
+	-Wno-switch \
+	-Wno-unused-local-typedef \
 	-Wno-unused-parameter \
+	-Wno-unused-value \
+	-Wno-unused-variable \
 	-Wno-implicit-exception-spec-mismatch \
 	-Wno-overloaded-virtual \
 	-Wno-non-virtual-dtor \
diff --git a/src/OpenGL/compiler/Android.mk b/src/OpenGL/compiler/Android.mk
index ba23f1d..6924e48 100644
--- a/src/OpenGL/compiler/Android.mk
+++ b/src/OpenGL/compiler/Android.mk
@@ -17,7 +17,14 @@
 
 COMMON_CFLAGS := \
 	-DLOG_TAG=\"swiftshader_compiler\" \
+	-Wall \
+	-Werror \
+	-Wno-format \
+	-Wno-sign-compare \
+	-Wno-unneeded-internal-declaration \
+	-Wno-unused-const-variable \
 	-Wno-unused-parameter \
+	-Wno-unused-variable \
 	-Wno-implicit-exception-spec-mismatch \
 	-Wno-overloaded-virtual \
 	-Wno-attributes \
diff --git a/src/OpenGL/libEGL/Android.mk b/src/OpenGL/libEGL/Android.mk
index e188f3b..64ccc55 100644
--- a/src/OpenGL/libEGL/Android.mk
+++ b/src/OpenGL/libEGL/Android.mk
@@ -5,6 +5,10 @@
 	-std=c++11 \
 	-DEGLAPI= \
 	-DEGL_EGLEXT_PROTOTYPES \
+	-Wall \
+	-Werror \
+	-Wno-format \
+	-Wno-unused-function \
 	-Wno-unused-parameter \
 	-Wno-implicit-exception-spec-mismatch \
 	-Wno-overloaded-virtual \
diff --git a/src/OpenGL/libGLES_CM/Android.mk b/src/OpenGL/libGLES_CM/Android.mk
index 315b384..9e68a53 100644
--- a/src/OpenGL/libGLES_CM/Android.mk
+++ b/src/OpenGL/libGLES_CM/Android.mk
@@ -11,7 +11,12 @@
 	-DGL_API= \
 	-DGL_APICALL= \
 	-DGL_GLEXT_PROTOTYPES \
+	-Wall \
+	-Werror \
+	-Wno-format \
+	-Wno-format-extra-args \
 	-Wno-unused-parameter \
+	-Wno-unused-variable \
 	-Wno-implicit-exception-spec-mismatch \
 	-Wno-overloaded-virtual \
 	-Wno-attributes \
diff --git a/src/OpenGL/libGLESv2/Android.mk b/src/OpenGL/libGLESv2/Android.mk
index c0f5913..94e8089 100644
--- a/src/OpenGL/libGLESv2/Android.mk
+++ b/src/OpenGL/libGLESv2/Android.mk
@@ -10,7 +10,13 @@
 	-DGL_API= \
 	-DGL_APICALL= \
 	-DGL_GLEXT_PROTOTYPES \
+	-Wall \
+	-Werror \
+	-Wno-format \
+	-Wno-sign-compare \
 	-Wno-unused-parameter \
+	-Wno-unused-private-field \
+	-Wno-unused-variable \
 	-Wno-implicit-exception-spec-mismatch \
 	-Wno-overloaded-virtual \
 	-Wno-attributes \
diff --git a/src/Reactor/Android.mk b/src/Reactor/Android.mk
index dff990d..9944185 100644
--- a/src/Reactor/Android.mk
+++ b/src/Reactor/Android.mk
@@ -108,7 +108,12 @@
 
 LOCAL_CPPFLAGS := -std=c++11
 
-LOCAL_CFLAGS += -DLOG_TAG=\"libsubzero\" \
+LOCAL_CFLAGS +=
+	-DLOG_TAG=\"libsubzero\" \
+	-Wall \
+	-Werror \
+	-Wno-error=undefined-var-template \
+	-Wno-error=unused-lambda-capture \
 	-Wno-unused-parameter \
 	-Wno-implicit-exception-spec-mismatch \
 	-Wno-overloaded-virtual \
diff --git a/third_party/LLVM/Android.mk b/third_party/LLVM/Android.mk
index 23a707a..069645d 100644
--- a/third_party/LLVM/Android.mk
+++ b/third_party/LLVM/Android.mk
@@ -396,11 +396,21 @@
 	lib/VMCore/ValueTypes.cpp \
 	lib/VMCore/Verifier.cpp \
 
-
-LOCAL_CFLAGS += -DLOG_TAG=\"libLLVM_swiftshader\" \
-	-Wno-unused-parameter \
+LOCAL_CFLAGS += \
+	-DLOG_TAG=\"libLLVM_swiftshader\" \
+	-Wall \
+	-Werror \
 	-Wno-implicit-exception-spec-mismatch \
-	-Wno-overloaded-virtual
+	-Wno-overloaded-virtual \
+	-Wno-undefined-var-template \
+	-Wno-unneeded-internal-declaration \
+	-Wno-unused-const-variable \
+	-Wno-unused-function \
+	-Wno-unused-local-typedef \
+	-Wno-unused-parameter \
+	-Wno-unused-private-field \
+	-Wno-unused-variable \
+	-Wno-unknown-warning-option
 
 ifneq (16,${PLATFORM_SDK_VERSION})
 LOCAL_CFLAGS += -Xclang -fuse-init-array