• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2019 Google LLC.
2
3import("../../gn/skia.gni")
4import("../skshaper/skshaper.gni")
5
6declare_args() {
7  skia_enable_skparagraph = true
8  paragraph_gms_enabled = true
9  paragraph_tests_enabled = true
10  paragraph_bench_enabled = false
11}
12
13if (skia_enable_skparagraph && skia_enable_skshaper && skia_use_icu &&
14    skia_use_harfbuzz) {
15  config("public_config") {
16    include_dirs = [
17      "include",
18      "utils",
19    ]
20  }
21
22  skia_component("skparagraph") {
23    import("skparagraph.gni")
24    public_configs = [ ":public_config" ]
25    public = skparagraph_public
26    sources = skparagraph_sources
27    deps = [
28      "../..:skia",
29      "../skshaper",
30    ]
31  }
32
33  config("utils_config") {
34    include_dirs = [ "utils" ]
35  }
36
37  if (defined(is_skia_standalone) && skia_enable_tools) {
38    skia_source_set("utils") {
39      import("skparagraph.gni")
40      public_configs = [ ":utils_config" ]
41      configs = [ "../../:skia_private" ]
42      sources = skparagraph_utils
43      deps = [
44        "../..:skia",
45        "../skshaper",
46      ]
47    }
48
49    skia_source_set("gm") {
50      if (paragraph_gms_enabled) {
51        testonly = true
52        sources = [ "gm/simple_gm.cpp" ]
53        deps = [
54          ":skparagraph",
55          "../..:gpu_tool_utils",
56          "../..:skia",
57          "../skshaper",
58        ]
59      } else {
60        sources = []
61      }
62    }
63
64    skia_source_set("tests") {
65      if (paragraph_tests_enabled) {
66        testonly = true
67        sources = [ "tests/SkParagraphTest.cpp" ]
68        deps = [
69          ":skparagraph",
70          "../..:skia",
71          "../..:test",
72          "../skshaper",
73        ]
74      } else {
75        sources = []
76      }
77    }
78
79    skia_source_set("bench") {
80      if (paragraph_bench_enabled) {
81        testonly = true
82        sources = [ "bench/ParagraphBench.cpp" ]
83        deps = [
84          ":skparagraph",
85          "../..:skia",
86          "../skshaper",
87        ]
88      } else {
89        sources = []
90      }
91    }
92
93    skia_source_set("samples") {
94      testonly = true
95      sources = [ "samples/SampleParagraph.cpp" ]
96      deps = [
97        ":skparagraph",
98        ":utils",
99        "../..:skia",
100        "../skshaper",
101      ]
102    }
103  }
104} else {
105  group("skparagraph") {
106  }
107  group("utils") {
108  }
109  group("gm") {
110  }
111  group("tests") {
112  }
113  group("bench") {
114  }
115  group("samples") {
116  }
117}
118