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") 7import("skshaper.gni") 8 9if (skia_enable_skunicode && skia_enable_skshaper) { 10 config("public_config") { 11 include_dirs = [ "include" ] 12 defines = [] 13 if (is_component_build) { 14 defines += [ "SKSHAPER_DLL" ] 15 } 16 if (skia_use_fonthost_mac) { 17 defines += [ "SK_SHAPER_CORETEXT_AVAILABLE" ] 18 } 19 if (skia_use_harfbuzz) { 20 defines += [ "SK_SHAPER_HARFBUZZ_AVAILABLE" ] 21 } 22 } 23 24 component("skshaper") { 25 check_includes = false 26 public_configs = [ ":public_config" ] 27 public = skia_shaper_public 28 deps = [ "../..:skia" ] 29 defines = [ "SKSHAPER_IMPLEMENTATION=1" ] 30 sources = skia_shaper_primitive_sources 31 if (skia_use_fonthost_mac) { 32 sources += skia_shaper_coretext_sources 33 if (is_mac) { 34 frameworks = [ "ApplicationServices.framework" ] 35 } 36 37 if (is_ios) { 38 frameworks = [ 39 "CoreFoundation.framework", 40 "CoreText.framework", 41 ] 42 } 43 } 44 if (skia_use_harfbuzz) { 45 sources += skia_shaper_harfbuzz_sources 46 deps += [ 47 "../skunicode", 48 "//third_party/harfbuzz", 49 ] 50 } 51 configs += [ "../../:skia_private" ] 52 } 53 54 if (defined(is_skia_standalone) && skia_enable_tools) { 55 skia_source_set("tests") { 56 if (skia_enable_skshaper_tests) { 57 testonly = true 58 sources = skia_shaper_tests 59 deps = [ 60 "../..:skia", 61 "../..:test", 62 "../skshaper", 63 ] 64 } else { 65 sources = [] 66 } 67 } 68 } 69} else { 70 group("skshaper") { 71 } 72 group("tests") { 73 } 74} 75