skia2/public.bzl

1086 lines
32 KiB
Python
Raw Normal View History

################################################################################
# Skylark macros
################################################################################
def skia_select(conditions, results):
"""select() for conditions provided externally.
Instead of {"conditionA": resultA, "conditionB": resultB},
this takes two arrays, ["conditionA", "conditionB"] and [resultA, resultB].
This allows the exact targets of the conditions to be provided externally while
the results can live here, hiding the structure of those conditions in Google3.
Maybe this is too much paranoia?
Args:
conditions: [CONDITION_UNIX, CONDITION_ANDROID, CONDITION_IOS, CONDITION_WASM, ...]
results: [RESULT_UNIX, RESULT_ANDROID, RESULT_IOS, RESULT_WASM, ....]
Returns:
The result matching the active condition.
"""
selector = {}
for i in range(len(conditions)):
selector[conditions[i]] = results[i]
return select(selector)
def skia_glob(srcs):
"""Replaces glob() with a version that accepts a struct.
Args:
srcs: struct(include=[], exclude=[])
Returns:
Equivalent of glob(srcs.include, exclude=srcs.exclude)
"""
if hasattr(srcs, "include"):
if hasattr(srcs, "exclude"):
return native.glob(srcs.include, exclude = srcs.exclude)
else:
return native.glob(srcs.include)
return []
################################################################################
## skia_{all,public}_hdrs()
################################################################################
def skia_all_hdrs():
return native.glob([
"src/**/*.h",
"include/**/*.h",
"third_party/**/*.h",
])
def skia_public_hdrs():
return native.glob(
["include/**/*.h"],
exclude = [
"include/private/**/*",
# For now
"include/graphite/**/*",
],
)
################################################################################
## skia_opts_srcs()
################################################################################
# Intel
SKIA_OPTS_SSE2 = "SSE2"
SKIA_OPTS_SSSE3 = "SSSE3"
SKIA_OPTS_SSE41 = "SSE41"
SKIA_OPTS_SSE42 = "SSE42"
SKIA_OPTS_AVX = "AVX"
SKIA_OPTS_HSW = "HSW"
# Arm
SKIA_OPTS_NEON = "NEON"
SKIA_OPTS_CRC32 = "CRC32" # arm64
def opts_srcs(opts):
if opts == SKIA_OPTS_SSE2:
return native.glob([
"src/opts/*_SSE2.cpp",
"src/opts/*_sse2.cpp", # No matches currently.
])
elif opts == SKIA_OPTS_SSSE3:
return native.glob([
"src/opts/*_SSSE3.cpp",
"src/opts/*_ssse3.cpp",
])
elif opts == SKIA_OPTS_SSE41:
return native.glob([
"src/opts/*_sse41.cpp",
])
elif opts == SKIA_OPTS_SSE42:
return native.glob([
"src/opts/*_sse42.cpp",
])
elif opts == SKIA_OPTS_AVX:
return native.glob([
"src/opts/*_avx.cpp",
])
elif opts == SKIA_OPTS_HSW:
return native.glob([
"src/opts/*_hsw.cpp",
])
elif opts == SKIA_OPTS_NEON:
return native.glob([
"src/opts/*_neon.cpp",
])
elif opts == SKIA_OPTS_CRC32:
return native.glob([
"src/opts/*_crc32.cpp",
])
else:
fail("skia_opts_srcs parameter 'opts' must be one of SKIA_OPTS_*.")
def opts_cflags(opts):
if opts == SKIA_OPTS_SSE2:
return ["-msse2"]
elif opts == SKIA_OPTS_SSSE3:
return ["-mssse3"]
elif opts == SKIA_OPTS_SSE41:
return ["-msse4.1"]
elif opts == SKIA_OPTS_SSE42:
return ["-msse4.2"]
elif opts == SKIA_OPTS_AVX:
return ["-mavx"]
elif opts == SKIA_OPTS_HSW:
return ["-mavx2", "-mf16c", "-mfma"]
elif opts == SKIA_OPTS_NEON:
return ["-mfpu=neon"]
elif opts == SKIA_OPTS_CRC32:
# NDK r11's Clang (3.8) doesn't pass along this -march setting correctly to an external
# assembler, so we do it manually with -Wa. This is just a bug, fixed in later Clangs.
return ["-march=armv8-a+crc", "-Wa,-march=armv8-a+crc"]
else:
return []
SKIA_CPU_ARM = "ARM"
SKIA_CPU_ARM64 = "ARM64"
SKIA_CPU_X86 = "X86"
SKIA_CPU_OTHER = "OTHER"
def opts_rest_srcs(cpu):
srcs = []
if cpu == SKIA_CPU_ARM or cpu == SKIA_CPU_ARM64:
srcs += native.glob([
"src/opts/*_arm.cpp",
"src/opts/SkBitmapProcState_opts_none.cpp",
])
if cpu == SKIA_CPU_ARM64:
# NEON doesn't need special flags to compile on ARM64.
srcs += native.glob([
"src/opts/*_neon.cpp",
])
elif cpu == SKIA_CPU_X86:
srcs += native.glob([
"src/opts/*_x86.cpp",
])
elif cpu == SKIA_CPU_OTHER:
srcs += native.glob([
"src/opts/*_none.cpp",
])
else:
fail("opts_rest_srcs parameter 'cpu' must be one of " +
"SKIA_CPU_{ARM,ARM64,X86,OTHER}.")
return srcs
def skia_opts_deps(cpu):
res = [":opts_rest"]
if cpu == SKIA_CPU_ARM:
res += [":opts_neon"]
if cpu == SKIA_CPU_ARM64:
res += [":opts_crc32"]
if cpu == SKIA_CPU_X86:
res += [
":opts_sse2",
":opts_ssse3",
":opts_sse41",
":opts_sse42",
":opts_avx",
":opts_hsw",
]
return res
################################################################################
## BASE_SRCS
################################################################################
# All platform-independent SRCS.
BASE_SRCS_ALL = struct(
include = [
"include/private/**/*.h",
"src/**/*.h",
"src/**/*.cpp",
"src/**/*.inc",
],
exclude = [
# Exclude platform-dependent files.
"src/codec/*",
"src/device/xps/*", # Windows-only. Move to ports?
"src/doc/*_XPS.cpp", # Windows-only. Move to ports?
"src/gpu/ganesh/gl/android/*",
"src/gpu/ganesh/gl/egl/*",
"src/gpu/ganesh/gl/glfw/*",
"src/gpu/ganesh/gl/glx/*",
"src/gpu/ganesh/gl/iOS/*",
"src/gpu/ganesh/gl/mac/*",
"src/gpu/ganesh/gl/win/*",
"src/opts/**/*",
"src/ports/**/*",
"src/utils/android/**/*",
"src/utils/mac/**/*",
"src/utils/win/**/*",
# Exclude multiple definitions.
"src/gpu/ganesh/gl/GrGLMakeNativeInterface_none.cpp",
"src/pdf/SkDocument_PDF_None.cpp", # We use src/pdf/SkPDFDocument.cpp.
# Exclude files that don't compile everywhere.
"src/svg/**/*", # Depends on xml, SkJpegCodec, and SkPngCodec.
"src/xml/**/*", # Avoid dragging in expat when not needed.
# Exclude all GL specific files
"src/gpu/ganesh/gl/*",
"src/gpu/ganesh/gl/builders/*",
# Exclude all WebGL specific files
"src/gpu/ganesh/gl/webgl/*",
# Currently exclude all vulkan specific files
"src/gpu/ganesh/vk/*",
# Currently exclude all Direct3D specific files
"src/gpu/ganesh/d3d/*",
# Currently exclude all Dawn-specific files
"src/gpu/ganesh/dawn/*",
# Currently exclude all Graphite specific files
"src/gpu/graphite/**/*",
# Defines main.
"tools/skslc/Main.cpp",
# Only used to regenerate the lexer
"src/sksl/lex/*",
],
)
def codec_srcs(limited):
"""Sources for the codecs. Excludes Raw, and Ico, Webp, and Png if limited."""
exclude = ["src/codec/*Raw*.cpp"]
if limited:
exclude += [
"src/codec/*Ico*.cpp",
"src/codec/*Webp*.cpp",
"src/codec/*Png*",
]
return native.glob(["src/codec/*.cpp"], exclude = exclude)
GL_SRCS_UNIX = struct(
include = [
"src/gpu/ganesh/gl/*.cpp",
"src/gpu/ganesh/gl/*.h",
"src/gpu/ganesh/gl/builders/*.cpp",
"src/gpu/ganesh/gl/builders/*.h",
],
exclude = [],
)
GL_SRCS_UNIX_EGL = struct(
include = [
"src/gpu/ganesh/gl/*.cpp",
"src/gpu/ganesh/gl/*.h",
"src/gpu/ganesh/gl/builders/*.cpp",
"src/gpu/ganesh/gl/builders/*.h",
"src/gpu/ganesh/gl/egl/GrGLMakeEGLInterface.cpp",
"src/gpu/ganesh/gl/egl/GrGLMakeNativeInterface_egl.cpp",
],
exclude = [
"src/gpu/ganesh/gl/GrGLMakeNativeInterface_none.cpp",
],
)
PORTS_SRCS_UNIX = struct(
include = [
"src/ports/**/*.cpp",
"src/ports/**/*.h",
],
exclude = [
"src/ports/*CG*",
"src/ports/*WIC*",
"src/ports/*android*",
"src/ports/*chromium*",
"src/ports/*mac*",
"src/ports/*mozalloc*",
"src/ports/*nacl*",
"src/ports/*win*",
"src/ports/*NDK*",
"src/ports/SkFontMgr_custom_directory_factory.cpp",
"src/ports/SkFontMgr_custom_embedded_factory.cpp",
"src/ports/SkFontMgr_custom_empty_factory.cpp",
"src/ports/SkFontMgr_empty_factory.cpp",
"src/ports/SkFontMgr_fontconfig_factory.cpp",
"src/ports/SkFontMgr_fuchsia.cpp",
"src/ports/SkImageGenerator_none.cpp",
],
)
GL_SRCS_ANDROID = struct(
include = [
"src/gpu/ganesh/gl/*.cpp",
"src/gpu/ganesh/gl/*.h",
"src/gpu/ganesh/gl/builders/*.cpp",
"src/gpu/ganesh/gl/builders/*.h",
"src/gpu/ganesh/gl/android/*.cpp",
],
exclude = [
"src/gpu/ganesh/gl/GrGLMakeNativeInterface_none.cpp",
],
)
PORTS_SRCS_ANDROID = struct(
include = [
"src/ports/**/*.cpp",
"src/ports/**/*.h",
],
exclude = [
"src/ports/*CG*",
"src/ports/*FontConfig*",
"src/ports/*WIC*",
"src/ports/*chromium*",
"src/ports/*fontconfig*",
"src/ports/*mac*",
"src/ports/*mozalloc*",
"src/ports/*nacl*",
"src/ports/*win*",
"src/ports/*NDK*", # TODO (scroggo): enable NDK decoding/encoding in Google3
"src/ports/SkDebug_stdio.cpp",
"src/ports/SkFontMgr_custom_directory_factory.cpp",
"src/ports/SkFontMgr_custom_embedded_factory.cpp",
"src/ports/SkFontMgr_custom_empty_factory.cpp",
"src/ports/SkFontMgr_empty_factory.cpp",
"src/ports/SkFontMgr_fuchsia.cpp",
"src/ports/SkImageGenerator_none.cpp",
],
)
PORTS_SRCS_ANDROID_NO_FONT = struct(
include = [
"src/ports/**/*.cpp",
"src/ports/**/*.h",
],
exclude = [
"src/ports/*CG*",
"src/ports/*FontConfig*",
"src/ports/*WIC*",
"src/ports/*chromium*",
"src/ports/*fontconfig*",
"src/ports/*mac*",
"src/ports/*mozalloc*",
"src/ports/*nacl*",
"src/ports/*win*",
"src/ports/*NDK*",
"src/ports/SkDebug_stdio.cpp",
"src/ports/SkFontMgr_a*",
"src/ports/SkFontHost_Free*",
"src/ports/SkFontMgr_custom*",
"src/ports/SkFontMgr_fuchsia.cpp",
"src/ports/SkImageGenerator_none.cpp",
],
)
GL_SRCS_IOS = struct(
include = [
"src/gpu/ganesh/gl/*.cpp",
"src/gpu/ganesh/gl/*.h",
"src/gpu/ganesh/gl/builders/*.cpp",
"src/gpu/ganesh/gl/builders/*.h",
"src/gpu/ganesh/gl/iOS/GrGLMakeNativeInterface_iOS.cpp",
],
exclude = [
"src/gpu/ganesh/gl/GrGLMakeNativeInterface_none.cpp",
],
)
PORTS_SRCS_IOS = struct(
include = [
"src/ports/**/*.cpp",
"src/ports/**/*.h",
"src/utils/mac/*.cpp",
],
exclude = [
"src/ports/*FontConfig*",
"src/ports/*FreeType*",
"src/ports/*WIC*",
"src/ports/*android*",
"src/ports/*chromium*",
"src/ports/*fontconfig*",
"src/ports/*mozalloc*",
"src/ports/*nacl*",
"src/ports/*win*",
"src/ports/*NDK*",
"src/ports/SkFontMgr_custom.cpp",
"src/ports/SkFontMgr_custom_directory.cpp",
"src/ports/SkFontMgr_custom_embedded.cpp",
"src/ports/SkFontMgr_custom_empty.cpp",
"src/ports/SkFontMgr_custom_directory_factory.cpp",
"src/ports/SkFontMgr_custom_embedded_factory.cpp",
"src/ports/SkFontMgr_custom_empty_factory.cpp",
"src/ports/SkFontMgr_empty_factory.cpp",
"src/ports/SkFontMgr_fuchsia.cpp",
"src/ports/SkImageGenerator_none.cpp",
],
)
GL_SRCS_WASM = struct(
include = [
"src/gpu/ganesh/gl/*.cpp",
"src/gpu/ganesh/gl/*.h",
"src/gpu/ganesh/gl/builders/*.cpp",
"src/gpu/ganesh/gl/builders/*.h",
"src/gpu/ganesh/gl/egl/GrGLMakeEGLInterface.cpp",
"src/gpu/ganesh/gl/egl/GrGLMakeNativeInterface_egl.cpp",
],
exclude = [
"src/gpu/ganesh/gl/GrGLMakeNativeInterface_none.cpp",
],
)
PORTS_SRCS_WASM = struct(
include = [
"src/ports/**/*.cpp",
"src/ports/**/*.h",
],
exclude = [
# commented lines below left in because they indicate specifically what is
# included here and not in other PORTS_SRCS lists.
"src/ports/*FontConfig*",
#"src/ports/*FreeType*",
"src/ports/*WIC*",
"src/ports/*CG*",
"src/ports/*android*",
"src/ports/*chromium*",
"src/ports/*fontconfig*",
"src/ports/*mac*",
"src/ports/*mozalloc*",
"src/ports/*nacl*",
"src/ports/*win*",
"src/ports/*NDK*",
#"src/ports/SkDebug_stdio.cpp",
#"src/ports/SkFontMgr_custom.cpp",
"src/ports/SkFontMgr_custom_directory.cpp",
"src/ports/SkFontMgr_custom_directory_factory.cpp",
"src/ports/SkFontMgr_custom_embedded.cpp",
"src/ports/SkFontMgr_custom_embedded_factory.cpp",
"src/ports/SkFontMgr_custom_empty.cpp",
"src/ports/SkFontMgr_custom_empty_factory.cpp",
# "src/ports/SkFontMgr_empty_factory.cpp",
"src/ports/SkFontMgr_fontconfig_factory.cpp",
"src/ports/SkFontMgr_fuchsia.cpp",
"src/ports/SkImageGenerator_none.cpp",
],
)
GL_SRCS_FUCHSIA = struct(
include = [
"src/gpu/ganesh/vk/*.cpp",
"src/gpu/ganesh/vk/*.h",
],
exclude = [],
)
PORTS_SRCS_FUCHSIA = struct(
include = [
"src/ports/**/*.cpp",
"src/ports/**/*.h",
],
exclude = [
"src/ports/*FontConfig*",
#"src/ports/*FreeType*",
"src/ports/*WIC*",
"src/ports/*CG*",
"src/ports/*android*",
"src/ports/*chromium*",
"src/ports/*fontconfig*",
"src/ports/*mac*",
"src/ports/*mozalloc*",
"src/ports/*nacl*",
"src/ports/*win*",
"src/ports/*NDK*",
#"src/ports/SkDebug_stdio.cpp",
#"src/ports/SkFontMgr_custom.cpp",
"src/ports/SkFontMgr_custom_directory.cpp",
"src/ports/SkFontMgr_custom_directory_factory.cpp",
"src/ports/SkFontMgr_custom_embedded.cpp",
"src/ports/SkFontMgr_custom_embedded_factory.cpp",
"src/ports/SkFontMgr_custom_empty.cpp",
"src/ports/SkFontMgr_custom_empty_factory.cpp",
#"src/ports/SkFontMgr_empty_factory.cpp",
"src/ports/SkFontMgr_fontconfig_factory.cpp",
#"src/ports/SkFontMgr_fuchsia.cpp",
"src/ports/SkImageGenerator_none.cpp",
],
)
GL_SRCS_MACOS = struct(
include = [
"src/gpu/ganesh/gl/*.cpp",
"src/gpu/ganesh/gl/*.h",
"src/gpu/ganesh/gl/builders/*.cpp",
"src/gpu/ganesh/gl/builders/*.h",
"src/gpu/ganesh/gl/mac/GrGLMakeNativeInterface_mac.cpp",
],
exclude = [
"src/gpu/ganesh/gl/GrGLMakeNativeInterface_none.cpp",
],
)
PORTS_SRCS_MACOS = PORTS_SRCS_IOS
def base_srcs():
return skia_glob(BASE_SRCS_ALL)
def ports_srcs(os_conditions):
return skia_select(
os_conditions,
[
skia_glob(PORTS_SRCS_UNIX),
skia_glob(PORTS_SRCS_ANDROID),
skia_glob(PORTS_SRCS_IOS),
skia_glob(PORTS_SRCS_WASM),
skia_glob(PORTS_SRCS_FUCHSIA),
skia_glob(PORTS_SRCS_MACOS),
skia_glob(PORTS_SRCS_ANDROID_NO_FONT),
skia_glob(PORTS_SRCS_UNIX),
],
)
def gl_srcs(os_conditions):
return skia_select(
os_conditions,
[
skia_glob(GL_SRCS_UNIX),
skia_glob(GL_SRCS_ANDROID),
skia_glob(GL_SRCS_IOS),
skia_glob(GL_SRCS_WASM),
skia_glob(GL_SRCS_FUCHSIA),
skia_glob(GL_SRCS_MACOS),
skia_glob(GL_SRCS_ANDROID),
skia_glob(GL_SRCS_UNIX_EGL),
],
)
def skia_srcs(os_conditions):
return base_srcs() + ports_srcs(os_conditions) + gl_srcs(os_conditions)
def metal_objc_srcs():
return native.glob(
[
"include/**/*.h",
"src/**/*.h",
"src/gpu/ganesh/mtl/**/*.mm",
"third_party/**/*.h",
],
) + [
"src/image/SkSurface_GpuMtl.mm",
]
################################################################################
## INCLUDES
################################################################################
# Includes needed by Skia implementation. Not public includes.
INCLUDES = [
".",
"include/android",
"include/c",
"include/codec",
"include/config",
"include/core",
"include/docs",
"include/effects",
"include/encode",
"include/gpu",
"include/pathops",
"include/ports",
"include/private",
"include/third_party/skcms",
"include/utils",
"include/utils/mac",
"src/codec",
"src/core",
"src/gpu",
"src/image",
"src/images",
"src/lazy",
"src/opts",
"src/pdf",
"src/ports",
"src/sfnt",
"src/shaders",
Reland "Base Gradient FP Refactor" This reverts commit 1ea5656a285bcfef445d6f69eaab477e68595b54. Reason for revert: Fixed google3 build failure Original change's description: > Revert "Base Gradient FP Refactor" > > This reverts commit 10f7a1e07554a362aef979d32ba288a009bdff90. > > Reason for revert: broke google3 roll > Original change's description: > > Base Gradient FP Refactor > > > > -- > > > > Redefines how gradients will be written in the GPU back-end: > > > > They are split into three fragment processor components: master, layout, and colorizer. > > The layout FP is responsible for converting the fragment position into an interpolant value, t. > > Each high-level gradient--such as linear, radial, etc.--are implemented solely in a layout FP. > > The colorizer FP is responsible for converting t into a color. > > The master FP invokes the layout, clamps t into the proper domain, and then invokes the colorizer. > > GrGradientShader provides factory functions to create FP graphs from SkGradientShader instances. > > This pattern is documented in gpu/gradients/README.md. > > > > Goals for current CL > > ==================== > > > > Outline the FP components by providing .fp implementations for the simplest gradients. > > Defines a two-color single interval colorizer and a linear gradient layout, and the master effect. > > A MakeLinear() factory function is provided that can convert SkGradientShaders that fit these constraints. > > SkLinearGradient first attempts to use the new system, falling back to the original GrGradientEffect. > > > > Future CLs > > ========== > > > > To keep the CL reviews manageable, additional dependent CLs will be added that gradually replace past functionality. > > A CL for each layout will be defined. > > CLs for the different analytic colorizer cases and the textured gradient case will be defined. > > Once the new system supports all current layouts and colorizer capabilities, all old GPU gradient code will be removed. > > After this clean-up, analytic colorization can hopefully be expanded to reduce the usage of textured gradients. > > > > Bug: skia: > > Change-Id: Iafe7b8b4071491a71c473babcd7bedda659150c1 > > Reviewed-on: https://skia-review.googlesource.com/148120 > > Commit-Queue: Michael Ludwig <michaelludwig@google.com> > > Reviewed-by: Brian Salomon <bsalomon@google.com> > > TBR=bsalomon@google.com,michaelludwig@google.com > > Change-Id: Ib735e323795ac8874cb00b007a915786b50517a6 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: skia: > Reviewed-on: https://skia-review.googlesource.com/153600 > Reviewed-by: Cary Clark <caryclark@google.com> > Commit-Queue: Cary Clark <caryclark@google.com> TBR=bsalomon@google.com,caryclark@google.com,michaelludwig@google.com Change-Id: Ibf6ffbcb1af0dfbdac7317151aeb08f18f84c7fd No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/153887 Commit-Queue: Michael Ludwig <michaelludwig@google.com> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2018-09-12 19:22:16 +00:00
"src/shaders/gradients",
"src/sksl",
"src/utils",
"third_party/gif",
]
################################################################################
## DM_SRCS
################################################################################
DM_SRCS_ALL = struct(
include = [
"dm/*.cpp",
"dm/*.h",
"experimental/pipe/*.cpp",
"experimental/pipe/*.h",
"gm/*.cpp",
"gm/*.h",
"gm/verifiers/*.cpp",
"gm/verifiers/*.h",
# TODO(fmalita): SVG sources should not be included here
"modules/svg/include/*.h",
"modules/svg/src/*.cpp",
"src/utils/SkMultiPictureDocument.cpp",
"src/xml/*.cpp",
"tests/*.cpp",
"tests/*.h",
"tools/AutoreleasePool.h",
"tools/BinaryAsset.h",
"tools/CrashHandler.cpp",
"tools/CrashHandler.h",
"tools/DDLPromiseImageHelper.cpp",
"tools/DDLPromiseImageHelper.h",
"tools/DDLTileHelper.cpp",
"tools/DDLTileHelper.h",
"tools/HashAndEncode.cpp",
"tools/HashAndEncode.h",
"tools/ProcStats.cpp",
"tools/ProcStats.h",
"tools/Registry.h",
"tools/ResourceFactory.h",
"tools/Resources.cpp",
"tools/Resources.h",
"tools/RuntimeBlendUtils.cpp",
"tools/RuntimeBlendUtils.h",
"tools/SkMetaData.cpp",
"tools/SkMetaData.h",
"tools/SkSharingProc.cpp",
"tools/ToolUtils.cpp",
"tools/ToolUtils.h",
"tools/UrlDataManager.cpp",
"tools/UrlDataManager.h",
"tools/debugger/*.cpp",
"tools/debugger/*.h",
"tools/flags/*.cpp",
"tools/flags/*.h",
"tools/fonts/RandomScalerContext.cpp",
"tools/fonts/RandomScalerContext.h",
"tools/fonts/TestFontMgr.cpp",
"tools/fonts/TestFontMgr.h",
"tools/fonts/TestSVGTypeface.cpp",
"tools/fonts/TestSVGTypeface.h",
"tools/fonts/TestTypeface.cpp",
"tools/fonts/TestTypeface.h",
"tools/fonts/ToolUtilsFont.cpp",
"tools/fonts/test_font_index.inc",
"tools/fonts/test_font_monospace.inc",
"tools/fonts/test_font_sans_serif.inc",
"tools/fonts/test_font_serif.inc",
"tools/gpu/**/*.cpp",
"tools/gpu/**/*.h",
"tools/ios_utils.h",
"tools/random_parse_path.cpp",
"tools/random_parse_path.h",
"tools/timer/*.cpp",
"tools/timer/*.h",
"tools/trace/*.cpp",
"tools/trace/*.h",
],
exclude = [
"gm/cgms.cpp",
"gm/fiddle.cpp",
"gm/video_decoder.cpp",
"tests/FontMgrAndroidParserTest.cpp", # Android-only.
Reland "Implement onMakeClone(const SkFontArguments& args) in class SkTypeface_fontconfig." This reverts commit cce82d2b7c6ce3addd72016191e1be73bc084953. Reason for revert: Just add suppression. Original change's description: > Revert "Implement onMakeClone(const SkFontArguments& args) in class SkTypeface_fontconfig." > > This reverts commit 96b1ecc25d00a3d52dcc51a788b0df0acdd1dad9. > > Reason for revert: Breaking Google3, I think > > Original change's description: > > Implement onMakeClone(const SkFontArguments& args) in class SkTypeface_fontconfig. > > > > Create FontMgrFontConfigTest.cpp file to test the above function. > > > > Change-Id: I7716355f702af3d6f25574305914f0b82a4147ce > > Reviewed-on: https://skia-review.googlesource.com/137133 > > Reviewed-by: Ben Wagner <bungeman@google.com> > > Commit-Queue: Ben Wagner <bungeman@google.com> > > TBR=bungeman@google.com,herb@google.com,brucewang@google.com > > Change-Id: I665de46d379f1b533358f0be644814aa4bfffb33 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Reviewed-on: https://skia-review.googlesource.com/137240 > Reviewed-by: Kevin Lubick <kjlubick@google.com> > Commit-Queue: Kevin Lubick <kjlubick@google.com> TBR=bungeman@google.com,herb@google.com,kjlubick@google.com,brucewang@google.com Change-Id: I41f0e4505ed0579a77a56212898e9a6caf6f1ed5 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/137260 Commit-Queue: Ben Wagner <bungeman@google.com> Reviewed-by: Ben Wagner <bungeman@google.com>
2018-06-22 21:11:00 +00:00
"tests/FontMgrFontConfigTest.cpp", # FontConfig-only.
Reland "Reland "Test mac system font variations."" This reverts commit 759f2613b5718a41672e77c4d091dafd503ae53a. Reason for revert: Fix bzl build. Original change's description: > Revert "Reland "Test mac system font variations."" > > This reverts commit ba55be671d57cb94bb300cf925714be562976dde. > > Reason for revert: G3 roll > > (08:59:24) ERROR: third_party/skia/HEAD/BUILD:926:10: Compiling third_party/skia/HEAD/tests/TypefaceMacTest.cpp failed: (Exit 1) driver_is_not_gcc failed: error executing command third_party/crosstool/v18/stable/toolchain/bin/driver_is_not_gcc '-frandom-seed=blaze-out/k8-fastbuild/bin/third_party/skia/HEAD/_objs/dm/TypefaceMacTest.pic.o' -DSK_USE_FREETYPE_EMBOLDEN ... (remaining 383 argument(s) skipped). [forge_remote_host=ixog19] > third_party/skia/HEAD/tests/TypefaceMacTest.cpp:31:45: error: unknown type name 'CTFontRef' > auto makeSystemFont = [](float size) -> CTFontRef { > ^ > third_party/skia/HEAD/tests/TypefaceMacTest.cpp:33:46: error: use of undeclared identifier 'kCTFontUIFontSystem' > return CTFontCreateUIFontForLanguage(kCTFontUIFontSystem, size, nullptr); > ^ > 2 errors generated. > > Original change's description: > > Reland "Test mac system font variations." > > > > This reverts commit 4c0b9b90d63a155a7137dd1ebe08f74222051fb6. > > > > Reason for revert: Work around broken -Wrange-loop-analysis > > > > Original change's description: > > > Revert "Test mac system font variations." > > > > > > This reverts commit a612dc77d75fda3c9d7fb26ce3e2cd916e8c76cb. > > > > > > Reason for revert: Breaking iOS builds. > > > > > > Original change's description: > > > > Test mac system font variations. > > > > > > > > On macOS system fonts are special and sometimes have different behavior > > > > from fonts generated from data. Add a test which exercises several > > > > expectations about changing the variation on the system ui font. > > > > > > > > Bug: skia:10968 > > > > Change-Id: Ia10dfbf7f4f0ff099f9bfebf95481c95c7d3715f > > > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/372218 > > > > Commit-Queue: Ben Wagner <bungeman@google.com> > > > > Reviewed-by: Herb Derby <herb@google.com> > > > > > > TBR=bungeman@google.com,herb@google.com,drott@google.com > > > > > > Change-Id: Iccc05f25d827ab85c507b5f3bde936561349e2b8 > > > No-Presubmit: true > > > No-Tree-Checks: true > > > No-Try: true > > > Bug: skia:10968 > > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/372678 > > > Reviewed-by: Jim Van Verth <jvanverth@google.com> > > > Commit-Queue: Jim Van Verth <jvanverth@google.com> > > > > # Not skipping CQ checks because this is a reland. > > > > Bug: skia:10968 > > Change-Id: Ifddc6c5ada335d97f7796df7f6ea10577f6bc252 > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/372776 > > Commit-Queue: Ben Wagner <bungeman@google.com> > > Reviewed-by: Ben Wagner <bungeman@google.com> > > # Not skipping CQ checks because original CL landed > 1 day ago. > > Bug: skia:10968 > Change-Id: Ia5ff4ff827e3f79ff17b4d99458ffb45b7c36c58 > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/373277 > Reviewed-by: Mike Klein <mtklein@google.com> > Commit-Queue: Mike Klein <mtklein@google.com> Bug: skia:10968 Change-Id: Ieb79128745dc934a7469d84b27a9e9f3306704df Reviewed-on: https://skia-review.googlesource.com/c/skia/+/373620 Reviewed-by: Ben Wagner <bungeman@google.com> Reviewed-by: Dominik Röttsches <drott@chromium.org> Commit-Queue: Ben Wagner <bungeman@google.com>
2021-02-22 15:37:33 +00:00
"tests/TypefaceMacTest.cpp", # CoreText-only.
"tests/SkParagraphTest.cpp", # Skipping tests for now.
"tools/gpu/d3d/*",
"tools/gpu/dawn/*",
"tools/gpu/gl/angle/*",
"tools/gpu/gl/egl/*",
"tools/gpu/gl/glx/*",
"tools/gpu/gl/iOS/*",
"tools/gpu/gl/mac/*",
"tools/gpu/gl/win/*",
"tools/timer/SysTimer_mach.cpp",
"tools/timer/SysTimer_windows.cpp",
],
)
################################################################################
## dm_srcs()
################################################################################
def dm_srcs(os_conditions):
"""Sources for the dm binary for the specified os."""
return skia_glob(DM_SRCS_ALL) + skia_select(
os_conditions,
[
Reland "Reland "Test mac system font variations."" This reverts commit 759f2613b5718a41672e77c4d091dafd503ae53a. Reason for revert: Fix bzl build. Original change's description: > Revert "Reland "Test mac system font variations."" > > This reverts commit ba55be671d57cb94bb300cf925714be562976dde. > > Reason for revert: G3 roll > > (08:59:24) ERROR: third_party/skia/HEAD/BUILD:926:10: Compiling third_party/skia/HEAD/tests/TypefaceMacTest.cpp failed: (Exit 1) driver_is_not_gcc failed: error executing command third_party/crosstool/v18/stable/toolchain/bin/driver_is_not_gcc '-frandom-seed=blaze-out/k8-fastbuild/bin/third_party/skia/HEAD/_objs/dm/TypefaceMacTest.pic.o' -DSK_USE_FREETYPE_EMBOLDEN ... (remaining 383 argument(s) skipped). [forge_remote_host=ixog19] > third_party/skia/HEAD/tests/TypefaceMacTest.cpp:31:45: error: unknown type name 'CTFontRef' > auto makeSystemFont = [](float size) -> CTFontRef { > ^ > third_party/skia/HEAD/tests/TypefaceMacTest.cpp:33:46: error: use of undeclared identifier 'kCTFontUIFontSystem' > return CTFontCreateUIFontForLanguage(kCTFontUIFontSystem, size, nullptr); > ^ > 2 errors generated. > > Original change's description: > > Reland "Test mac system font variations." > > > > This reverts commit 4c0b9b90d63a155a7137dd1ebe08f74222051fb6. > > > > Reason for revert: Work around broken -Wrange-loop-analysis > > > > Original change's description: > > > Revert "Test mac system font variations." > > > > > > This reverts commit a612dc77d75fda3c9d7fb26ce3e2cd916e8c76cb. > > > > > > Reason for revert: Breaking iOS builds. > > > > > > Original change's description: > > > > Test mac system font variations. > > > > > > > > On macOS system fonts are special and sometimes have different behavior > > > > from fonts generated from data. Add a test which exercises several > > > > expectations about changing the variation on the system ui font. > > > > > > > > Bug: skia:10968 > > > > Change-Id: Ia10dfbf7f4f0ff099f9bfebf95481c95c7d3715f > > > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/372218 > > > > Commit-Queue: Ben Wagner <bungeman@google.com> > > > > Reviewed-by: Herb Derby <herb@google.com> > > > > > > TBR=bungeman@google.com,herb@google.com,drott@google.com > > > > > > Change-Id: Iccc05f25d827ab85c507b5f3bde936561349e2b8 > > > No-Presubmit: true > > > No-Tree-Checks: true > > > No-Try: true > > > Bug: skia:10968 > > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/372678 > > > Reviewed-by: Jim Van Verth <jvanverth@google.com> > > > Commit-Queue: Jim Van Verth <jvanverth@google.com> > > > > # Not skipping CQ checks because this is a reland. > > > > Bug: skia:10968 > > Change-Id: Ifddc6c5ada335d97f7796df7f6ea10577f6bc252 > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/372776 > > Commit-Queue: Ben Wagner <bungeman@google.com> > > Reviewed-by: Ben Wagner <bungeman@google.com> > > # Not skipping CQ checks because original CL landed > 1 day ago. > > Bug: skia:10968 > Change-Id: Ia5ff4ff827e3f79ff17b4d99458ffb45b7c36c58 > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/373277 > Reviewed-by: Mike Klein <mtklein@google.com> > Commit-Queue: Mike Klein <mtklein@google.com> Bug: skia:10968 Change-Id: Ieb79128745dc934a7469d84b27a9e9f3306704df Reviewed-on: https://skia-review.googlesource.com/c/skia/+/373620 Reviewed-by: Ben Wagner <bungeman@google.com> Reviewed-by: Dominik Röttsches <drott@chromium.org> Commit-Queue: Ben Wagner <bungeman@google.com>
2021-02-22 15:37:33 +00:00
["tests/FontMgrFontConfigTest.cpp"], # Unix
["tests/FontMgrAndroidParserTest.cpp"], # Android
["tests/TypefaceMacTest.cpp"], # iOS
[], # WASM
[], # Fuchsia
Reland "Reland "Test mac system font variations."" This reverts commit 759f2613b5718a41672e77c4d091dafd503ae53a. Reason for revert: Fix bzl build. Original change's description: > Revert "Reland "Test mac system font variations."" > > This reverts commit ba55be671d57cb94bb300cf925714be562976dde. > > Reason for revert: G3 roll > > (08:59:24) ERROR: third_party/skia/HEAD/BUILD:926:10: Compiling third_party/skia/HEAD/tests/TypefaceMacTest.cpp failed: (Exit 1) driver_is_not_gcc failed: error executing command third_party/crosstool/v18/stable/toolchain/bin/driver_is_not_gcc '-frandom-seed=blaze-out/k8-fastbuild/bin/third_party/skia/HEAD/_objs/dm/TypefaceMacTest.pic.o' -DSK_USE_FREETYPE_EMBOLDEN ... (remaining 383 argument(s) skipped). [forge_remote_host=ixog19] > third_party/skia/HEAD/tests/TypefaceMacTest.cpp:31:45: error: unknown type name 'CTFontRef' > auto makeSystemFont = [](float size) -> CTFontRef { > ^ > third_party/skia/HEAD/tests/TypefaceMacTest.cpp:33:46: error: use of undeclared identifier 'kCTFontUIFontSystem' > return CTFontCreateUIFontForLanguage(kCTFontUIFontSystem, size, nullptr); > ^ > 2 errors generated. > > Original change's description: > > Reland "Test mac system font variations." > > > > This reverts commit 4c0b9b90d63a155a7137dd1ebe08f74222051fb6. > > > > Reason for revert: Work around broken -Wrange-loop-analysis > > > > Original change's description: > > > Revert "Test mac system font variations." > > > > > > This reverts commit a612dc77d75fda3c9d7fb26ce3e2cd916e8c76cb. > > > > > > Reason for revert: Breaking iOS builds. > > > > > > Original change's description: > > > > Test mac system font variations. > > > > > > > > On macOS system fonts are special and sometimes have different behavior > > > > from fonts generated from data. Add a test which exercises several > > > > expectations about changing the variation on the system ui font. > > > > > > > > Bug: skia:10968 > > > > Change-Id: Ia10dfbf7f4f0ff099f9bfebf95481c95c7d3715f > > > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/372218 > > > > Commit-Queue: Ben Wagner <bungeman@google.com> > > > > Reviewed-by: Herb Derby <herb@google.com> > > > > > > TBR=bungeman@google.com,herb@google.com,drott@google.com > > > > > > Change-Id: Iccc05f25d827ab85c507b5f3bde936561349e2b8 > > > No-Presubmit: true > > > No-Tree-Checks: true > > > No-Try: true > > > Bug: skia:10968 > > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/372678 > > > Reviewed-by: Jim Van Verth <jvanverth@google.com> > > > Commit-Queue: Jim Van Verth <jvanverth@google.com> > > > > # Not skipping CQ checks because this is a reland. > > > > Bug: skia:10968 > > Change-Id: Ifddc6c5ada335d97f7796df7f6ea10577f6bc252 > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/372776 > > Commit-Queue: Ben Wagner <bungeman@google.com> > > Reviewed-by: Ben Wagner <bungeman@google.com> > > # Not skipping CQ checks because original CL landed > 1 day ago. > > Bug: skia:10968 > Change-Id: Ia5ff4ff827e3f79ff17b4d99458ffb45b7c36c58 > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/373277 > Reviewed-by: Mike Klein <mtklein@google.com> > Commit-Queue: Mike Klein <mtklein@google.com> Bug: skia:10968 Change-Id: Ieb79128745dc934a7469d84b27a9e9f3306704df Reviewed-on: https://skia-review.googlesource.com/c/skia/+/373620 Reviewed-by: Ben Wagner <bungeman@google.com> Reviewed-by: Dominik Röttsches <drott@chromium.org> Commit-Queue: Ben Wagner <bungeman@google.com>
2021-02-22 15:37:33 +00:00
["tests/TypefaceMacTest.cpp"], # macOS
],
)
################################################################################
## DM_ARGS
################################################################################
def DM_ARGS(asan):
source = ["gm", "image", "lottie"]
# TODO(benjaminwagner): f16, pic-8888, serialize-8888, and tiles_rt-8888 fail.
config = ["565", "8888", "pdf"]
match = ["~Codec_78329453"]
return (["--src"] + source + ["--config"] + config + ["--nonativeFonts"] +
["--match"] + match)
################################################################################
## COPTS
################################################################################
def base_copts(os_conditions):
return ["-Wno-implicit-fallthrough"] + skia_select(
os_conditions,
[
# UNIX
[
# Internal use of deprecated methods. :(
"-Wno-deprecated-declarations",
# TODO(kjlubick)
"-Wno-self-assign", # Spurious warning in tests/PathOpsDVectorTest.cpp?
],
# ANDROID
[
# 'GrResourceCache' declared with greater visibility than the
# type of its field 'GrResourceCache::fPurgeableQueue'... bogus.
"-Wno-error=attributes",
],
[], # iOS
[], # wasm
[], # Fuchsia
[], # macOS
],
)
################################################################################
## DEFINES
################################################################################
def base_defines(os_conditions):
return [
# Chrome DEFINES.
"SK_USE_FREETYPE_EMBOLDEN",
# Turn on a few Google3-specific build fixes.
"SK_BUILD_FOR_GOOGLE3",
# Required for building dm.
"GR_TEST_UTILS",
# Staging flags for API changes
"SK_PARAGRAPH_GRAPHEME_EDGES",
# Should remove after we update golden images
"SK_WEBP_ENCODER_USE_DEFAULT_METHOD",
# Experiment to diagnose image diffs in Google3
"SK_DISABLE_LOWP_RASTER_PIPELINE",
# JPEG is in codec_limited and is included in all
# builds except the no_codec android build
] + skia_select(
os_conditions,
[
# UNIX
[
"PNG_SKIP_SETJMP_CHECK",
"SK_BUILD_FOR_UNIX",
"SK_CODEC_DECODES_PNG",
"SK_CODEC_DECODES_WEBP",
"SK_ENCODE_PNG",
"SK_ENCODE_WEBP",
"SK_R32_SHIFT=16",
"SK_GL",
"SK_CODEC_DECODES_JPEG",
"SK_ENCODE_JPEG",
"SK_HAS_ANDROID_CODEC",
],
# ANDROID
[
"SK_BUILD_FOR_ANDROID",
"SK_CODEC_DECODES_PNG",
"SK_CODEC_DECODES_WEBP",
"SK_ENCODE_PNG",
"SK_ENCODE_WEBP",
"SK_GL",
"SK_CODEC_DECODES_JPEG",
"SK_ENCODE_JPEG",
"SK_HAS_ANDROID_CODEC",
],
# IOS
[
"SK_BUILD_FOR_IOS",
"SK_NO_COMMAND_BUFFER", # Test tools that use thread_local.
"SK_GL",
"SK_CODEC_DECODES_JPEG",
"SK_ENCODE_JPEG",
"SK_HAS_ANDROID_CODEC",
],
# WASM
[
"SK_DISABLE_LEGACY_SHADERCONTEXT",
"SK_DISABLE_TRACING",
"SK_GL",
"SK_SUPPORT_GPU=1",
"SK_DISABLE_AAA",
"SK_DISABLE_EFFECT_DESERIALIZATION",
"SK_FORCE_8_BYTE_ALIGNMENT",
"SKNX_NO_SIMD",
"SK_CODEC_DECODES_JPEG",
"SK_ENCODE_JPEG",
"SK_HAS_ANDROID_CODEC",
],
# FUCHSIA
[
"SK_BUILD_FOR_UNIX",
"SK_CODEC_DECODES_PNG",
"SK_CODEC_DECODES_WEBP",
"SK_ENCODE_PNG",
"SK_ENCODE_WEBP",
"SK_R32_SHIFT=16",
"SK_VULKAN",
"SK_CODEC_DECODES_JPEG",
"SK_ENCODE_JPEG",
"SK_HAS_ANDROID_CODEC",
],
# MACOS
[
"SK_BUILD_FOR_MAC",
"SK_GL",
"SK_CODEC_DECODES_JPEG",
"SK_ENCODE_JPEG",
"SK_HAS_ANDROID_CODEC",
],
Reland "add defines for new os condition flag(no_codec added in google3 build)" This reverts commit 716456c335e58ae1accddb25c749e10ffadcfb16. Reason for revert: This did not break the leak detection task Original change's description: > Revert "add defines for new os condition flag(no_codec added in google3 build)" > > This reverts commit d831da5b8ac2d257c5b0cf2ec6645a148f05e662. > > Reason for revert: Failing LSAN leak detection https://ci.chromium.org/raw/build/logs.chromium.org/skia/58eec496c79be011/+/annotations > > Original change's description: > > add defines for new os condition flag(no_codec added in google3 build) > > > > flag reduces build size in xeno by .1 MB > > > > Change-Id: I3fac4ebd243ea506b0a2df2eba32f016ed13a456 > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/504539 > > Reviewed-by: Ben Wagner <bungeman@google.com> > > Reviewed-by: Florin Malita <fmalita@google.com> > > Commit-Queue: Jorge Betancourt <jmbetancourt@google.com> > > Change-Id: I1a19d9e74b0ebff90ea7de447e92fcc578c45982 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/505298 > Auto-Submit: Jorge Betancourt <jmbetancourt@google.com> > Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> > Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Change-Id: I7221c85b550a363dce1ff3b84d8cdcb7ca74a2c5 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/505636 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Jorge Betancourt <jmbetancourt@google.com>
2022-02-08 15:28:49 +00:00
# ANDROID W/ NO CODECS
[
"SK_BUILD_FOR_ANDROID",
"SK_GL",
],
],
)
################################################################################
## LINKOPTS
################################################################################
def base_linkopts(os_conditions):
return [
"-ldl",
] + skia_select(
os_conditions,
[
[], # Unix
# ANDROID
[
"-lEGL",
"-lGLESv2",
],
# IOS
[
"-framework CoreFoundation",
"-framework CoreGraphics",
"-framework CoreText",
"-framework ImageIO",
"-framework MobileCoreServices",
],
[], # wasm
[], # Fuchsia
# MACOS
[
"-framework CoreFoundation",
"-framework CoreGraphics",
"-framework CoreText",
"-framework ImageIO",
"-framework ApplicationServices",
],
],
)
################################################################################
## sksg_lib
################################################################################
def sksg_lib_hdrs():
return native.glob(["modules/sksg/include/*.h"])
def sksg_lib_srcs():
return native.glob([
"modules/sksg/src/*.cpp",
"modules/sksg/src/*.h",
])
################################################################################
## skparagraph_lib
################################################################################
def skparagraph_lib_hdrs():
return native.glob(["modules/skparagraph/include/*.h"])
def skparagraph_lib_srcs():
return native.glob(["modules/skparagraph/src/*.cpp"])
################################################################################
## skresources_lib
################################################################################
def skresources_lib_hdrs():
return ["modules/skresources/include/SkResources.h"]
def skresources_lib_srcs():
return ["modules/skresources/src/SkResources.cpp"]
################################################################################
## skottie_lib
################################################################################
def skottie_lib_hdrs():
return native.glob(["modules/skottie/include/*.h"])
def skottie_lib_srcs():
return native.glob(
[
"modules/skottie/src/*.cpp",
"modules/skottie/src/*.h",
"modules/skottie/src/animator/*.cpp",
"modules/skottie/src/animator/*.h",
"modules/skottie/src/effects/*.cpp",
"modules/skottie/src/effects/*.h",
"modules/skottie/src/layers/*.cpp",
"modules/skottie/src/layers/*.h",
"modules/skottie/src/layers/shapelayer/*.cpp",
"modules/skottie/src/layers/shapelayer/*.h",
"modules/skottie/src/text/*.cpp",
"modules/skottie/src/text/*.h",
],
exclude = [
"modules/skottie/src/SkottieTest.cpp",
"modules/skottie/src/SkottieTool.cpp",
],
)
################################################################################
## skottie_utils
################################################################################
SKOTTIE_UTILS_HDRS = [
"modules/skottie/utils/SkottieUtils.h",
]
SKOTTIE_UTILS_SRCS = [
"modules/skottie/utils/SkottieUtils.cpp",
]
################################################################################
## skottie_shaper
################################################################################
SKOTTIE_SHAPER_HDRS = [
"modules/skottie/src/text/SkottieShaper.h",
]
SKOTTIE_SHAPER_SRCS = [
"modules/skottie/src/text/SkottieShaper.cpp",
]
################################################################################
## skottie_tool
################################################################################
SKOTTIE_TOOL_SRCS = [
"modules/skottie/src/SkottieTool.cpp",
"modules/skresources/src/SkResources.cpp",
"modules/skresources/include/SkResources.h",
# TODO(benjaminwagner): Add "flags" target.
"tools/flags/CommandLineFlags.cpp",
"tools/flags/CommandLineFlags.h",
]
################################################################################
## SkShaper
################################################################################
# Stubs, pending SkUnicode fission
SKUNICODE_ICU_BUILTIN_SRCS = [
"modules/skunicode/include/SkUnicode.h",
"modules/skunicode/src/SkUnicode_icu.cpp",
"modules/skunicode/src/SkUnicode_icu.h",
"modules/skunicode/src/SkUnicode_icu_builtin.cpp",
]
SKUNICODE_ICU_RUNTIME_SRCS = [
"modules/skunicode/include/SkUnicode.h",
"modules/skunicode/src/SkUnicode_icu.cpp",
"modules/skunicode/src/SkUnicode_icu.h",
"modules/skunicode/src/SkUnicode_icu_runtime.cpp",
]
SKSHAPER_HARFBUZZ_SRCS = [
"modules/skshaper/include/SkShaper.h",
"modules/skshaper/src/SkShaper.cpp",
"modules/skshaper/src/SkShaper_harfbuzz.cpp",
"modules/skshaper/src/SkShaper_primitive.cpp",
]
SKSHAPER_PRIMITIVE_SRCS = [
"modules/skshaper/include/SkShaper.h",
"modules/skshaper/src/SkShaper.cpp",
"modules/skshaper/src/SkShaper_primitive.cpp",
]
################################################################################
## skottie_ios_lib
################################################################################
SKOTTIE_IOS_LIB_SRCS = [
"tools/skottie_ios_app/SkiaContext.mm",
"tools/skottie_ios_app/SkiaUIContext.mm",
"tools/skottie_ios_app/SkiaViewController.mm",
"tools/skottie_ios_app/SkottieViewController.mm",
]
SKOTTIE_IOS_LIB_HDRS = [
"tools/skottie_ios_app/SkiaContext.h",
"tools/skottie_ios_app/SkiaViewController.h",
"tools/skottie_ios_app/SkottieViewController.h",
]
SKOTTIE_IOS_LIB_SDK_FRAMEWORKS = [
"Foundation",
"UIKit",
]
################################################################################
## svg_lib
################################################################################
def svg_lib_hdrs():
return native.glob(["modules/svg/include/*.h"])
def svg_lib_srcs():
return native.glob(["modules/svg/src/*.cpp"])
################################################################################
## svg_tool
################################################################################
SVG_TOOL_SRCS = [
"modules/svg/utils/SvgTool.cpp",
# TODO(benjaminwagner): Add "flags" target.
"tools/flags/CommandLineFlags.cpp",
"tools/flags/CommandLineFlags.h",
]
################################################################################
## EGL support
################################################################################
SKIA_EGL_HDRS = ["include/gpu/gl/egl/GrGLMakeEGLInterface.h"]
SKIA_EGL_SRCS = ["src/gpu/ganesh/gl/egl/GrGLMakeEGLInterface.cpp"]