• 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")
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