Add support for Fuchsia
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2152273002

[mtklein edit from here down]
No public API changes.
TBR=reed@google.com

Review-Url: https://codereview.chromium.org/2152273002
diff --git a/third_party/BUILD.gn b/third_party/BUILD.gn
index 3ab094c..96837d2 100644
--- a/third_party/BUILD.gn
+++ b/third_party/BUILD.gn
@@ -3,8 +3,7 @@
 # Use of this source code is governed by a BSD-style license that can be
 # found in the LICENSE file.
 
-declare_args() {
-}
+import("third_party.gni")
 
 # Most third_party code should disable warnings: if we don't maintain the code, warnings are noise.
 config("no_warnings") {
@@ -12,42 +11,6 @@
 }
 third_party_configs = [ ":no_warnings" ]
 
-# Chrome's GN environment sets up a bunch of default configs we don't need/want here.
-unwanted_configs = [
-  "//build/config/clang:extra_warnings",
-  "//build/config/clang:find_bad_constructs",
-  "//build/config/compiler:chromium_code",
-  "//build/config:feature_flags",
-]
-
-config("zlib_public") {
-  include_dirs = [ "externals/zlib" ]
-}
-source_set("zlib") {
-  public_configs = [ ":zlib_public" ]
-  configs += third_party_configs
-  configs -= unwanted_configs
-
-  sources = [
-    "externals/zlib/adler32.c",
-    "externals/zlib/compress.c",
-    "externals/zlib/crc32.c",
-    "externals/zlib/deflate.c",
-    "externals/zlib/gzclose.c",
-    "externals/zlib/gzlib.c",
-    "externals/zlib/gzread.c",
-    "externals/zlib/gzwrite.c",
-    "externals/zlib/infback.c",
-    "externals/zlib/inffast.c",
-    "externals/zlib/inflate.c",
-    "externals/zlib/inftrees.c",
-    "externals/zlib/simd_stub.c",
-    "externals/zlib/trees.c",
-    "externals/zlib/uncompr.c",
-    "externals/zlib/zutil.c",
-  ]
-}
-
 config("libpng_public") {
   include_dirs = [ "libpng" ]
 }
diff --git a/third_party/third_party.gni b/third_party/third_party.gni
new file mode 100644
index 0000000..813ee38
--- /dev/null
+++ b/third_party/third_party.gni
@@ -0,0 +1,15 @@
+# Copyright 2016 Google Inc.
+#
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+declare_args() {
+}
+
+# Chrome's GN environment sets up a bunch of default configs we don't need/want here.
+unwanted_configs = [
+  "//build/config/clang:extra_warnings",
+  "//build/config/clang:find_bad_constructs",
+  "//build/config/compiler:chromium_code",
+  "//build/config:feature_flags",
+]
diff --git a/third_party/zlib/BUILD.gn b/third_party/zlib/BUILD.gn
new file mode 100644
index 0000000..0fff083
--- /dev/null
+++ b/third_party/zlib/BUILD.gn
@@ -0,0 +1,35 @@
+# Copyright 2016 Google Inc.
+#
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+import("../third_party.gni")
+
+config("zlib_public") {
+  include_dirs = [ "../externals/zlib" ]
+}
+source_set("zlib") {
+  public_configs = [ ":zlib_public" ]
+  configs -= unwanted_configs
+
+  cflags = [ "-w" ]
+
+  sources = [
+    "../externals/zlib/adler32.c",
+    "../externals/zlib/compress.c",
+    "../externals/zlib/crc32.c",
+    "../externals/zlib/deflate.c",
+    "../externals/zlib/gzclose.c",
+    "../externals/zlib/gzlib.c",
+    "../externals/zlib/gzread.c",
+    "../externals/zlib/gzwrite.c",
+    "../externals/zlib/infback.c",
+    "../externals/zlib/inffast.c",
+    "../externals/zlib/inflate.c",
+    "../externals/zlib/inftrees.c",
+    "../externals/zlib/simd_stub.c",
+    "../externals/zlib/trees.c",
+    "../externals/zlib/uncompr.c",
+    "../externals/zlib/zutil.c",
+  ]
+}