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