| load("@bazel_skylib//lib:selects.bzl", "selects") |
| load("//bazel:skia_rules.bzl", "exports_files_legacy", "skia_cc_library") |
| |
| licenses(["notice"]) |
| |
| exports_files_legacy() |
| |
| selects.config_setting_group( |
| name = "use_harfbuzz_shaper", |
| match_all = [ |
| "//bazel/common_config_settings:use_harfbuzz_true", |
| ], |
| ) |
| |
| # TODO(kjlubick,bungeman) delete skshaper (uses legacy non-modular build) |
| |
| skia_cc_library( |
| name = "legacy_skshaper", |
| srcs = ["//modules/skshaper/src:srcs"], |
| hdrs = ["//modules/skshaper/include:hdrs"], |
| defines = [ |
| "SK_SHAPER_UNICODE_AVAILABLE", |
| "SK_SHAPER_PRIMITIVE_AVAILABLE", |
| ] + select({ |
| ":use_harfbuzz_shaper": ["SK_SHAPER_HARFBUZZ_AVAILABLE"], |
| "//conditions:default": [], |
| }), |
| local_defines = ["SKSHAPER_IMPLEMENTATION=1"], |
| visibility = ["//:__subpackages__"], |
| # TODO(kjlubick,bungeman) someday implementation_deps will be available |
| #implementation_deps = ["//modules/skunicode"] + select({ |
| # ":use_harfbuzz_shaper": [ |
| # "@harfbuzz", |
| # ], |
| # "//conditions:default": [], |
| #}), |
| #deps = ["//:skia_internal"] |
| deps = [ |
| "//:skia_internal", |
| "//modules/skunicode:legacy_skunicode", |
| ] + select({ |
| ":use_harfbuzz_shaper": [ |
| "@harfbuzz", |
| ], |
| "//conditions:default": [], |
| }), |
| ) |
| |
| # TODO(kjlubick,bungeman) break this up such that a client could have one or more |
| # non-conflicting skshaper targets (e.g. move core_srcs to a central cc_library) |
| skia_cc_library( |
| name = "skshaper_harfbuzz", |
| srcs = [ |
| "//modules/skshaper/src:core_srcs", |
| "//modules/skshaper/src:harfbuzz_srcs", |
| ], |
| hdrs = ["//modules/skshaper/include:hdrs"], |
| defines = [ |
| "SK_SHAPER_UNICODE_AVAILABLE", |
| "SK_SHAPER_HARFBUZZ_AVAILABLE", |
| ], |
| features = ["layering_check"], |
| local_defines = ["SKSHAPER_IMPLEMENTATION=1"], |
| visibility = [ |
| "//:__subpackages__", |
| ], |
| deps = [ |
| "//:core", |
| "//modules/skunicode:skunicode_icu", |
| "//src/base", |
| "//src/core:core_priv", |
| "@harfbuzz", |
| ], |
| ) |