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 defines = [ "SK_ENABLE_PARAGRAPH" ] 17 include_dirs = [ 18 "include", 19 "utils", 20 ] 21 } 22 23 skia_component("skparagraph") { 24 import("skparagraph.gni") 25 public_configs = [ ":public_config" ] 26 public = skparagraph_public 27 sources = skparagraph_sources 28 deps = [ 29 "../..:skia", 30 "../skshaper", 31 "../skunicode", 32 ] 33 } 34 35 config("utils_config") { 36 include_dirs = [ "utils" ] 37 } 38 39 if (defined(is_skia_standalone) && skia_enable_tools) { 40 skia_source_set("utils") { 41 import("skparagraph.gni") 42 public_configs = [ ":utils_config" ] 43 configs = [ "../../:skia_private" ] 44 sources = skparagraph_utils 45 deps = [ 46 "../..:skia", 47 "../skshaper", 48 ] 49 } 50 51 skia_source_set("gm") { 52 if (paragraph_gms_enabled) { 53 testonly = true 54 sources = [ "gm/simple_gm.cpp" ] 55 deps = [ 56 ":skparagraph", 57 "../..:gpu_tool_utils", 58 "../..:skia", 59 "../skshaper", 60 ] 61 } else { 62 sources = [] 63 } 64 } 65 66 skia_source_set("tests") { 67 if (paragraph_tests_enabled) { 68 testonly = true 69 sources = [ "tests/SkParagraphTest.cpp" ] 70 deps = [ 71 ":skparagraph", 72 "../..:skia", 73 "../..:test", 74 "../skshaper", 75 ] 76 } else { 77 sources = [] 78 } 79 } 80 81 skia_source_set("bench") { 82 if (paragraph_bench_enabled) { 83 testonly = true 84 sources = [ "bench/ParagraphBench.cpp" ] 85 deps = [ 86 ":skparagraph", 87 "../..:skia", 88 "../skshaper", 89 ] 90 } else { 91 sources = [] 92 } 93 } 94 95 skia_source_set("samples") { 96 testonly = true 97 sources = [ "samples/SampleParagraph.cpp" ] 98 deps = [ 99 ":skparagraph", 100 ":utils", 101 "../..:skia", 102 "../skshaper", 103 ] 104 } 105 } 106} else { 107 group("skparagraph") { 108 } 109 group("utils") { 110 } 111 group("gm") { 112 } 113 group("tests") { 114 } 115 group("bench") { 116 } 117 group("samples") { 118 } 119} 120