| load( |
| "//bazel:skia_rules.bzl", |
| "skia_cc_library", |
| "skia_filegroup", |
| "skia_objc_library", |
| ) |
| |
| package( |
| default_applicable_licenses = ["//:license"], |
| ) |
| |
| licenses(["notice"]) |
| |
| skia_filegroup( |
| name = "fontconfig_interface_srcs", |
| srcs = [ |
| "SkFontConfigInterface.cpp", |
| "SkFontConfigInterface_direct.cpp", |
| "SkFontConfigInterface_direct_factory.cpp", |
| "SkFontConfigTypeface.h", |
| "SkFontMgr_FontConfigInterface.cpp", |
| ], |
| ) |
| |
| skia_filegroup( |
| name = "global_init", |
| srcs = ["SkGlobalInitialization_default.cpp"], |
| ) |
| |
| # In own group to prevent exporting to *.gni files. |
| skia_filegroup( |
| name = "osfile_platform", |
| srcs = select({ |
| "@platforms//os:windows": [":osfile_win"], |
| "@platforms//os:ios": [ |
| "SkOSFile_ios.h", |
| ":osfile_posix", |
| "//include/ports:core_foundation_hdrs", |
| ], |
| "//conditions:default": [":osfile_posix"], |
| }), |
| ) |
| |
| skia_filegroup( |
| name = "osfile", |
| srcs = [ |
| "SkOSFile_stdio.cpp", |
| ":osfile_platform", |
| ], |
| visibility = ["//tools/skslc:__pkg__"], |
| ) |
| |
| skia_filegroup( |
| name = "osfile_posix", |
| srcs = ["SkOSFile_posix.cpp"], |
| ) |
| |
| skia_filegroup( |
| name = "osfile_win", |
| srcs = ["SkOSFile_win.cpp"], |
| ) |
| |
| skia_filegroup( |
| name = "malloc", |
| srcs = ["SkMemory_malloc.cpp"], # TODO(kjlubick) add select() if necessary |
| ) |
| |
| skia_filegroup( |
| name = "skdebug", |
| srcs = select({ |
| "@platforms//os:windows": ["SkDebug_win.cpp"], |
| "@platforms//os:android": ["SkDebug_android.cpp"], |
| "//conditions:default": ["SkDebug_stdio.cpp"], |
| }), |
| ) |
| |
| skia_filegroup( |
| name = "base_srcs", |
| srcs = [ |
| ":skdebug", |
| # TODO(kjlubick) Chromium will need a way to overwrite the malloc impls. Having malloc |
| # be a module doesn't quite work because ld complains "backward reference detected" |
| # when something in a module like pathops uses malloc without depending on it. |
| ":malloc", |
| ], |
| visibility = ["//src/base:__pkg__"], |
| ) |
| |
| skia_filegroup( |
| name = "core_srcs", |
| srcs = [ |
| ":global_init", |
| ":osfile", |
| ], |
| visibility = ["//src/core:__pkg__"], |
| ) |
| |
| skia_cc_library( |
| name = "fontmgr_custom", |
| srcs = ["SkFontMgr_custom.cpp"], |
| hdrs = ["SkFontMgr_custom.h"], |
| deps = [ |
| ":freetype_support", |
| "//src/base", |
| "//src/core", |
| "//src/core:core_priv", |
| ], |
| ) |
| |
| skia_cc_library( |
| name = "freetype_support", |
| srcs = [ |
| "SkFontHost_FreeType.cpp", |
| "SkFontHost_FreeType_common.cpp", |
| ], |
| hdrs = [ |
| "SkFontHost_FreeType_common.h", |
| "SkFontScanner_FreeType_priv.h", |
| "SkTypeface_FreeType.h", |
| "//include/ports:typeface_freetype_hdrs", |
| ], |
| implementation_deps = [ |
| "//:pathops", |
| "@freetype", |
| ], |
| visibility = [ |
| "//:__pkg__", |
| "//tests:__pkg__", |
| "//tools/fonts:__pkg__", |
| ], |
| deps = [ |
| "//:core", |
| "//src/utils:char_to_glyphcache", |
| ], |
| ) |
| |
| skia_cc_library( |
| name = "fontations_support", |
| srcs = [":typeface_fontations_srcs"], |
| hdrs = [ |
| ":typeface_fontations_hdrs", |
| "//include/ports:typeface_fontations_hdrs", |
| ], |
| defines = ["SK_TYPEFACE_FACTORY_FONTATIONS"], |
| implementation_deps = [ |
| "//:pathops", |
| "//src/ports/fontations:deps", |
| ], |
| visibility = [ |
| "//tests:__pkg__", |
| "//tools/fonts:__pkg__", |
| ], |
| deps = [ |
| "//:core", |
| "//src/utils:char_to_glyphcache", |
| ], |
| ) |
| |
| skia_cc_library( |
| name = "fontmgr_android_freetype", |
| srcs = [ |
| "SkFontMgr_android.cpp", |
| "SkFontMgr_android_parser.cpp", |
| ], |
| hdrs = [ |
| "SkFontMgr_android_parser.h", |
| "//include/ports:android_fontmgr_hdrs", |
| ], |
| defines = ["SK_FONTMGR_ANDROID_AVAILABLE"], |
| visibility = ["//:__pkg__"], |
| deps = [ |
| ":freetype_support", |
| ":typeface_proxy", |
| "//:core", |
| "//src/base", |
| "//src/core:core_priv", |
| "@expat", |
| ], |
| ) |
| |
| skia_cc_library( |
| name = "fontmgr_android_ndk_freetype", |
| srcs = [ |
| "SkFontMgr_android_ndk.cpp", |
| ], |
| hdrs = [ |
| "//include/ports:android_ndk_fontmgr_hdrs", |
| ], |
| defines = ["SK_FONTMGR_ANDROID_NDK_AVAILABLE"], |
| visibility = ["//:__pkg__"], |
| deps = [ |
| ":freetype_support", |
| ":typeface_proxy", |
| "//:core", |
| "//src/base", |
| "//src/core:core_priv", |
| ], |
| ) |
| |
| skia_objc_library( |
| name = "fontmgr_coretext", |
| srcs = [ |
| "SkFontMgr_mac_ct.cpp", |
| ], |
| hdrs = [ |
| "//include/ports:coretext_fontmgr_hdrs", |
| ], |
| defines = ["SK_FONTMGR_CORETEXT_AVAILABLE"], |
| features = ["layering_check"], |
| ios_frameworks = [ |
| "CoreText", |
| "CoreGraphics", |
| "CoreFoundation", |
| ], |
| mac_frameworks = [ |
| "ApplicationServices", |
| "CoreFoundation", |
| "CoreText", |
| ], |
| visibility = ["//:__pkg__"], |
| deps = [ |
| ":coretext_typeface", |
| "//:core", |
| "//src/base", |
| "//src/core:core_priv", |
| ], |
| ) |
| |
| skia_cc_library( |
| name = "fontmgr_data_freetype", |
| srcs = [ |
| "SkFontMgr_custom_embedded.cpp", |
| ], |
| hdrs = [ |
| "//include/ports:data_fontmgr_hdrs", |
| ], |
| defines = ["SK_FONTMGR_FREETYPE_DATA_AVAILABLE"], |
| features = ["layering_check"], |
| visibility = ["//:__pkg__"], |
| deps = [ |
| ":fontmgr_custom", |
| ":freetype_support", |
| "//:core", |
| "//src/base", |
| "//src/core:core_priv", |
| ], |
| ) |
| |
| skia_cc_library( |
| name = "fontmgr_directory_freetype", |
| srcs = [ |
| "SkFontMgr_custom_directory.cpp", |
| ], |
| hdrs = [ |
| "//include/ports:directory_fontmgr_hdrs", |
| ], |
| defines = ["SK_FONTMGR_FREETYPE_DIRECTORY_AVAILABLE"], |
| features = ["layering_check"], |
| visibility = ["//:__pkg__"], |
| deps = [ |
| ":fontmgr_custom", |
| ":freetype_support", |
| "//:core", |
| "//src/base", |
| "//src/core:core_priv", |
| ], |
| ) |
| |
| skia_cc_library( |
| name = "fontmgr_empty_freetype", |
| srcs = [ |
| "SkFontMgr_custom_empty.cpp", |
| ], |
| hdrs = [ |
| "//include/ports:empty_fontmgr_hdrs", |
| ], |
| defines = ["SK_FONTMGR_FREETYPE_EMPTY_AVAILABLE"], |
| features = ["layering_check"], |
| visibility = ["//:__pkg__"], |
| deps = [ |
| ":fontmgr_custom", |
| ":freetype_support", |
| "//:core", |
| "//src/base", |
| "//src/core:core_priv", |
| ], |
| ) |
| |
| skia_filegroup( |
| name = "typeface_fontations_hdrs", |
| srcs = [ |
| "SkFontScanner_fontations_priv.h", |
| "SkTypeface_fontations_priv.h", |
| ], |
| ) |
| |
| skia_filegroup( |
| name = "typeface_fontations_srcs", |
| srcs = [ |
| "SkFontScanner_fontations.cpp", |
| "SkTypeface_fontations.cpp", |
| ], |
| ) |
| |
| skia_filegroup( |
| name = "fontmgr_fontations_empty_srcs", |
| srcs = [ |
| "SkFontMgr_fontations_empty.cpp", |
| ], |
| ) |
| |
| skia_cc_library( |
| name = "fontmgr_fontations_empty", |
| srcs = [ |
| ":fontmgr_fontations_empty_srcs", |
| ], |
| hdrs = [ |
| "//include/ports:fontmgr_fontations_hdrs", |
| ], |
| defines = ["SK_FONTMGR_FONTATIONS_AVAILABLE"], |
| visibility = [ |
| "//:__pkg__", |
| "//tools/fonts:__pkg__", |
| ], |
| deps = [ |
| ":fontations_support", |
| "//:core", |
| "//:pathops", |
| "//src/ports/fontations:deps", |
| ], |
| ) |
| |
| skia_cc_library( |
| name = "typeface_proxy", |
| srcs = [":typeface_proxy_srcs"], |
| hdrs = [":typeface_proxy_hdrs"], |
| deps = [ |
| "//:core", |
| ], |
| ) |
| |
| skia_cc_library( |
| name = "fontmgr_fontconfig_freetype", |
| srcs = [ |
| "SkFontMgr_fontconfig.cpp", |
| ], |
| hdrs = [ |
| "//include/ports:fontconfig_fontmgr_hdrs", |
| ], |
| defines = ["SK_FONTMGR_FONTCONFIG_AVAILABLE"], |
| visibility = [ |
| "//:__pkg__", |
| "//tools/fonts:__pkg__", |
| ], |
| deps = [ |
| ":freetype_support", |
| ":typeface_proxy", |
| "//:core", |
| "//bazel/external/fontconfig", |
| "//src/base", |
| "//src/core:core_priv", |
| ], |
| ) |
| |
| skia_cc_library( |
| name = "fontmgr_fontconfig_fontations", |
| srcs = [ |
| "SkFontMgr_fontconfig.cpp", |
| ], |
| hdrs = [ |
| "//include/ports:fontconfig_fontmgr_hdrs", |
| ], |
| defines = ["SK_FONTMGR_FONTCONFIG_AVAILABLE"], |
| visibility = [ |
| "//:__pkg__", |
| "//tools/fonts:__pkg__", |
| ], |
| deps = [ |
| ":fontations_support", |
| "//:core", |
| "//bazel/external/fontconfig", |
| "//src/base", |
| "//src/core:core_priv", |
| ], |
| ) |
| |
| skia_filegroup( |
| name = "typeface_mac_hdrs", |
| srcs = ["SkTypeface_mac_ct.h"], |
| visibility = ["//src/utils/mac:__pkg__"], |
| ) |
| |
| skia_filegroup( |
| name = "typeface_mac_srcs", |
| srcs = [ |
| "SkScalerContext_mac_ct.cpp", |
| "SkScalerContext_mac_ct.h", |
| "SkTypeface_mac_ct.cpp", |
| ], |
| ) |
| |
| skia_filegroup( |
| name = "typeface_proxy_hdrs", |
| srcs = ["SkTypeface_proxy.h"], |
| ) |
| |
| skia_filegroup( |
| name = "typeface_proxy_srcs", |
| srcs = ["SkTypeface_proxy.cpp"], |
| ) |
| |
| skia_objc_library( |
| name = "coretext_typeface", |
| srcs = [ |
| ":typeface_mac_srcs", |
| ], |
| hdrs = [ |
| ":typeface_mac_hdrs", |
| "//include/ports:mac_typeface", |
| ], |
| features = ["layering_check"], |
| ios_frameworks = [ |
| "CoreFoundation", |
| "CoreGraphics", |
| "CoreText", |
| ], |
| mac_frameworks = ["ApplicationServices"], |
| visibility = [ |
| "//:__pkg__", |
| "//modules/skshaper:__pkg__", |
| ], |
| deps = [ |
| "//:core", |
| "//src/base", |
| "//src/core:core_priv", |
| "//src/utils/mac:mac_utils_priv", |
| ], |
| ) |
| |
| skia_objc_library( |
| name = "imagegenerator_coregraphics", |
| srcs = [ |
| "SkImageGeneratorCG.cpp", |
| ], |
| hdrs = [ |
| "//include/ports:imagegenerator_cg_hdrs", |
| ], |
| features = ["layering_check"], |
| ios_frameworks = [ |
| "CoreGraphics", |
| "ImageIO", |
| "MobileCoreServices", |
| ], |
| mac_frameworks = ["ApplicationServices"], |
| visibility = ["//:__pkg__"], |
| deps = [ |
| "//:core", |
| "//src/base", |
| "//src/codec:any_decoder", |
| "//src/core:core_priv", |
| "//src/utils/mac:mac_utils_priv", |
| ], |
| ) |
| |
| skia_cc_library( |
| name = "imagegenerator_ndk", |
| srcs = ["SkImageGeneratorNDK.cpp"], |
| hdrs = ["//include/ports:imagegenerator_ndk_hdrs"], |
| features = ["layering_check"], |
| visibility = ["//:__pkg__"], |
| deps = [ |
| "//:core", |
| "//src/base", |
| "//src/codec:any_decoder", |
| "//src/core:core_priv", |
| ], |
| ) |
| |
| skia_cc_library( |
| name = "imagegenerator_wic", |
| srcs = ["SkImageGeneratorWIC.cpp"], |
| hdrs = ["//include/ports:imagegenerator_wic_hdrs"], |
| features = ["layering_check"], |
| visibility = ["//:__pkg__"], |
| deps = [ |
| "//:core", |
| "//src/base", |
| "//src/codec:any_decoder", |
| "//src/core:core_priv", |
| ], |
| ) |
| |
| skia_cc_library( |
| name = "imagegenerator", |
| visibility = ["//dm:__pkg__"], |
| deps = select({ |
| "@platforms//os:android": [":imagegenerator_ndk"], |
| "@platforms//os:macos": [":imagegenerator_coregraphics"], |
| "@platforms//os:ios": [":imagegenerator_coregraphics"], |
| "@platforms//os:windows": [":imagegenerator_wic"], |
| "//conditions:default": [], |
| }), |
| ) |
| |
| skia_filegroup( |
| name = "windows_fonts_srcs", |
| srcs = [ |
| "SkFontMgr_win_dw.cpp", |
| "SkScalerContext_win_dw.cpp", |
| "SkScalerContext_win_dw.h", |
| "SkTypeface_win_dw.cpp", |
| "SkTypeface_win_dw.h", |
| ], |
| ) |
| |
| skia_filegroup( |
| name = "fontmgr_fuchsia_srcs", |
| srcs = ["SkFontMgr_fuchsia.cpp"], |
| ) |
| |
| skia_filegroup( |
| name = "fonthost_win_srcs", |
| srcs = ["SkFontHost_win.cpp"], |
| ) |