# Copyright 2018 Google Inc. # # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import("../../gn/skia.gni") import("skshaper.gni") if (skia_enable_skshaper) { config("public_config") { include_dirs = [ "include" ] defines = [] if (is_component_build) { defines += [ "SKSHAPER_DLL" ] } if (skia_use_fonthost_mac) { defines += [ "SK_SHAPER_CORETEXT_AVAILABLE" ] } if (skia_use_harfbuzz && skia_enable_skunicode) { defines += [ "SK_SHAPER_HARFBUZZ_AVAILABLE" ] } } component("skshaper") { check_includes = false public_configs = [ ":public_config" ] public = skia_shaper_public if (!use_oh_skia) { deps = [ "../..:skia" ] } else { include_dirs = [ "//third_party/skia" ] deps = [] } defines = [ "SKSHAPER_IMPLEMENTATION=1" ] if (use_oh_skia) { defines += [ "SK_UNICODE_AVAILABLE" ] } sources = skia_shaper_primitive_sources if (skia_use_fonthost_mac) { sources += skia_shaper_coretext_sources if (is_mac) { frameworks = [ "ApplicationServices.framework" ] } if (is_ios) { frameworks = [ "CoreFoundation.framework", "CoreText.framework", ] } } if (skia_use_harfbuzz && skia_enable_skunicode) { sources += skia_shaper_harfbuzz_sources deps += [ "${skia_third_party_dir}/harfbuzz", "../skunicode", ] if (use_oh_skia) { deps -= [ "../skunicode" ] } } configs += [ "../../:skia_private", "../../third_party/icu/config:no_cxx", ] } } else { group("skshaper") { } }