• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2018 Google Inc.
2#
3# Use of this source code is governed by a BSD-style license that can be
4# found in the LICENSE file.
5
6import("../../gn/skia.gni")
7
8if (skia_enable_skottie) {
9  config("public_config") {
10    defines = [ "SK_ENABLE_SKOTTIE" ]
11    include_dirs = [ "include" ]
12  }
13
14  skia_component("skottie") {
15    check_includes = false
16    import("skottie.gni")
17    public_configs = [ ":public_config" ]
18    public = skia_skottie_public
19    sources = skia_skottie_sources
20    configs = [ "../../:skia_private" ]
21    deps = [
22      "../..:skia",
23      "../skresources",
24      "../sksg",
25      "../skshaper",
26      "../skunicode",
27    ]
28  }
29
30  if (defined(is_skia_standalone)) {
31    config("utils_config") {
32      include_dirs = [ "utils" ]
33    }
34    skia_source_set("utils") {
35      check_includes = false
36      testonly = true
37
38      public_configs = [ ":utils_config" ]
39      configs = [ "../../:skia_private" ]
40
41      sources = [ "utils/SkottieUtils.cpp" ]
42      deps = [
43        ":skottie",
44        "../..:skia",
45      ]
46    }
47
48    if (skia_enable_tools) {
49      skia_source_set("tests") {
50        testonly = true
51
52        configs = [
53          "../..:skia_private",
54          "../..:tests_config",
55        ]
56        sources = [
57          "src/SkottieTest.cpp",
58          "tests/AudioLayer.cpp",
59          "tests/Expression.cpp",
60          "tests/Image.cpp",
61          "tests/Keyframe.cpp",
62          "tests/Text.cpp",
63        ]
64
65        deps = [
66          ":skottie",
67          "../..:skia",
68          "../..:test",
69          "../skshaper",
70        ]
71      }
72
73      skia_source_set("fuzz") {
74        check_includes = false
75        testonly = true
76
77        configs = [ "../..:skia_private" ]
78        include_dirs = [
79          "../../tools",
80          "../../tools/flags",
81          "../../tools/fonts",
82        ]
83        sources = [
84          "../../tools/Resources.cpp",
85          "../../tools/fonts/TestFontMgr.cpp",
86          "../../tools/fonts/TestSVGTypeface.cpp",
87          "../../tools/fonts/TestTypeface.cpp",
88          "fuzz/FuzzSkottieJSON.cpp",
89        ]
90
91        deps = [
92          "../..:skia",
93          "../svg",
94        ]
95
96        public_deps = [ ":skottie" ]
97      }
98
99      skia_source_set("tool") {
100        check_includes = false
101        testonly = true
102
103        configs = [ "../..:skia_private" ]
104        sources = [ "src/SkottieTool.cpp" ]
105
106        deps = [
107          "../..:flags",
108          "../..:skia",
109          "../../experimental/ffmpeg:video_encoder",
110        ]
111
112        public_deps = [
113          ":skottie",
114          ":utils",
115        ]
116      }
117
118      skia_source_set("gm") {
119        check_includes = false
120        testonly = true
121
122        # would be nice to have a gm_config
123        include_dirs = [ "../../gm" ]
124
125        configs = [ "../..:skia_private" ]
126        sources = [
127          "gm/ExternalProperties.cpp",
128          "gm/SkottieGM.cpp",
129        ]
130
131        deps = [
132          ":skottie",
133          ":utils",
134          "../..:gpu_tool_utils",
135          "../..:skia",
136          "../..:tool_utils",
137        ]
138      }
139    }
140  }
141} else {
142  group("skottie") {
143  }
144  group("fuzz") {
145  }
146  group("gm") {
147  }
148  group("tests") {
149  }
150  group("utils") {
151  }
152}
153