aboutsummaryrefslogtreecommitdiffhomepage
path: root/third_party
diff options
context:
space:
mode:
authorGravatar mtklein <mtklein@chromium.org>2016-07-27 13:55:26 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2016-07-27 13:55:27 -0700
commit25c81d4e651b43b8217c365c87d530036529a673 (patch)
tree9b1c079ab486fc59196c0826e6e5c5db70a8564d /third_party
parent7b9b541af8a0deb0da33a7979f1a904f42db63d1 (diff)
GN: dm
This builds, links, and runs on Linux. Have not tried Mac. I've tested is_debug={true,false} and is_component_build. It's neat that the component build DM works, but it's also an indication I've missed an essential flag or two... it shouldn't work. :) The GPU backend isn't working yet, but all the software configurations I've tried look good. This fleshes out all the other parts of SkCodec too... I noticed we weren't able to decode gifs or webp. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2188643002 Review-Url: https://codereview.chromium.org/2188643002
Diffstat (limited to 'third_party')
-rw-r--r--third_party/expat/BUILD.gn21
-rw-r--r--third_party/giflib/BUILD.gn19
-rw-r--r--third_party/jsoncpp/BUILD.gn21
-rw-r--r--third_party/libjpeg_turbo/BUILD.gn5
-rw-r--r--third_party/libpng/BUILD.gn5
-rw-r--r--third_party/libwebp/BUILD.gn59
-rw-r--r--third_party/third_party.gni6
-rw-r--r--third_party/zlib/BUILD.gn5
8 files changed, 128 insertions, 13 deletions
diff --git a/third_party/expat/BUILD.gn b/third_party/expat/BUILD.gn
new file mode 100644
index 0000000000..ab20ca6761
--- /dev/null
+++ b/third_party/expat/BUILD.gn
@@ -0,0 +1,21 @@
+# 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() {
+}
+
+import("../third_party.gni")
+
+third_party("expat") {
+ public_include_dirs = [ "../externals/expat" ]
+
+ defines = [ "HAVE_MEMMOVE" ]
+
+ sources = [
+ "../externals/expat/lib/xmlparse.c",
+ "../externals/expat/lib/xmlrole.c",
+ "../externals/expat/lib/xmltok.c",
+ ]
+}
diff --git a/third_party/giflib/BUILD.gn b/third_party/giflib/BUILD.gn
new file mode 100644
index 0000000000..96414a93a6
--- /dev/null
+++ b/third_party/giflib/BUILD.gn
@@ -0,0 +1,19 @@
+# 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() {
+}
+
+import("../third_party.gni")
+
+third_party("giflib") {
+ public_include_dirs = [ "../externals/giflib" ]
+
+ sources = [
+ "../externals/giflib/dgif_lib.c",
+ "../externals/giflib/gif_err.c",
+ "../externals/giflib/gifalloc.c",
+ ]
+}
diff --git a/third_party/jsoncpp/BUILD.gn b/third_party/jsoncpp/BUILD.gn
new file mode 100644
index 0000000000..4122692dcf
--- /dev/null
+++ b/third_party/jsoncpp/BUILD.gn
@@ -0,0 +1,21 @@
+# 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() {
+}
+
+import("../third_party.gni")
+
+third_party("jsoncpp") {
+ public_include_dirs = [ "../externals/jsoncpp/include" ]
+
+ defines = [ "JSON_USE_EXCEPTION=0" ]
+ sources = [
+ "../externals/jsoncpp/src/lib_json/json_reader.cpp",
+ "../externals/jsoncpp/src/lib_json/json_value.cpp",
+ "../externals/jsoncpp/src/lib_json/json_writer.cpp",
+ ]
+ testonly = true
+}
diff --git a/third_party/libjpeg_turbo/BUILD.gn b/third_party/libjpeg_turbo/BUILD.gn
index f03bca70d5..726641235f 100644
--- a/third_party/libjpeg_turbo/BUILD.gn
+++ b/third_party/libjpeg_turbo/BUILD.gn
@@ -8,11 +8,8 @@ declare_args() {
import("../third_party.gni")
-config("libjpeg_turbo_config") {
- include_dirs = [ "../externals/libjpeg-turbo" ]
-}
third_party("libjpeg_turbo") {
- public_configs = [ ":libjpeg_turbo_config" ]
+ public_include_dirs = [ "../externals/libjpeg-turbo" ]
sources = [
"../externals/libjpeg-turbo/jcapimin.c",
diff --git a/third_party/libpng/BUILD.gn b/third_party/libpng/BUILD.gn
index fd80aad3b9..76c00277b6 100644
--- a/third_party/libpng/BUILD.gn
+++ b/third_party/libpng/BUILD.gn
@@ -8,11 +8,8 @@ declare_args() {
import("../third_party.gni")
-config("libpng_public") {
- include_dirs = [ "." ]
-}
third_party("libpng") {
- public_configs = [ ":libpng_public" ]
+ public_include_dirs = [ "." ]
deps = [
"//third_party/zlib",
diff --git a/third_party/libwebp/BUILD.gn b/third_party/libwebp/BUILD.gn
new file mode 100644
index 0000000000..99bf5469c6
--- /dev/null
+++ b/third_party/libwebp/BUILD.gn
@@ -0,0 +1,59 @@
+# 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() {
+}
+
+import("../third_party.gni")
+
+third_party("libwebp") {
+ public_include_dirs = [ "../externals/libwebp" ]
+
+ sources = [
+ "../externals/libwebp/src/dec/alpha.c",
+ "../externals/libwebp/src/dec/buffer.c",
+ "../externals/libwebp/src/dec/frame.c",
+ "../externals/libwebp/src/dec/idec.c",
+ "../externals/libwebp/src/dec/io.c",
+ "../externals/libwebp/src/dec/quant.c",
+ "../externals/libwebp/src/dec/tree.c",
+ "../externals/libwebp/src/dec/vp8.c",
+ "../externals/libwebp/src/dec/vp8l.c",
+ "../externals/libwebp/src/dec/webp.c",
+ "../externals/libwebp/src/demux/demux.c",
+ "../externals/libwebp/src/dsp/alpha_processing.c",
+ "../externals/libwebp/src/dsp/alpha_processing_sse2.c",
+ "../externals/libwebp/src/dsp/alpha_processing_sse41.c",
+ "../externals/libwebp/src/dsp/cpu.c",
+ "../externals/libwebp/src/dsp/dec.c",
+ "../externals/libwebp/src/dsp/dec_clip_tables.c",
+ "../externals/libwebp/src/dsp/dec_sse2.c",
+ "../externals/libwebp/src/dsp/dec_sse41.c",
+ "../externals/libwebp/src/dsp/enc.c",
+ "../externals/libwebp/src/dsp/enc_sse2.c",
+ "../externals/libwebp/src/dsp/filters.c",
+ "../externals/libwebp/src/dsp/filters_sse2.c",
+ "../externals/libwebp/src/dsp/lossless.c",
+ "../externals/libwebp/src/dsp/lossless_sse2.c",
+ "../externals/libwebp/src/dsp/rescaler.c",
+ "../externals/libwebp/src/dsp/rescaler_sse2.c",
+ "../externals/libwebp/src/dsp/upsampling.c",
+ "../externals/libwebp/src/dsp/upsampling_sse2.c",
+ "../externals/libwebp/src/dsp/yuv.c",
+ "../externals/libwebp/src/dsp/yuv_sse2.c",
+ "../externals/libwebp/src/utils/bit_reader.c",
+ "../externals/libwebp/src/utils/bit_writer.c",
+ "../externals/libwebp/src/utils/color_cache.c",
+ "../externals/libwebp/src/utils/filters.c",
+ "../externals/libwebp/src/utils/huffman.c",
+ "../externals/libwebp/src/utils/huffman_encode.c",
+ "../externals/libwebp/src/utils/quant_levels.c",
+ "../externals/libwebp/src/utils/quant_levels_dec.c",
+ "../externals/libwebp/src/utils/random.c",
+ "../externals/libwebp/src/utils/rescaler.c",
+ "../externals/libwebp/src/utils/thread.c",
+ "../externals/libwebp/src/utils/utils.c",
+ ]
+}
diff --git a/third_party/third_party.gni b/third_party/third_party.gni
index d2583a9b7d..9e552bf5a0 100644
--- a/third_party/third_party.gni
+++ b/third_party/third_party.gni
@@ -4,8 +4,12 @@
# found in the LICENSE file.
template("third_party") {
+ config(target_name + "_public") {
+ include_dirs = invoker.public_include_dirs
+ }
source_set(target_name) {
- forward_variables_from(invoker, "*")
+ forward_variables_from(invoker, "*", [ "public_include_dirs" ])
+ public_configs = [ ":" + target_name + "_public" ]
# Warnings are just noise if we're not maintaining the code.
cflags = [ "-w" ]
diff --git a/third_party/zlib/BUILD.gn b/third_party/zlib/BUILD.gn
index 6338dba278..8909ea50f1 100644
--- a/third_party/zlib/BUILD.gn
+++ b/third_party/zlib/BUILD.gn
@@ -8,11 +8,8 @@ declare_args() {
import("../third_party.gni")
-config("zlib_public") {
- include_dirs = [ "../externals/zlib" ]
-}
third_party("zlib") {
- public_configs = [ ":zlib_public" ]
+ public_include_dirs = [ "../externals/zlib" ]
sources = [
"../externals/zlib/adler32.c",