cf1e959c65
Importantly, this adds options for encoding using certain codecs, not just decoding. Change-Id: I4a610ebf985b67d4545c71b3f3eed4c7807e6a26 Bug: skia:12541 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/472277 Reviewed-by: Ben Wagner <bungeman@google.com> Reviewed-by: Leandro Lovisolo <lovisolo@google.com>
136 lines
3.4 KiB
Python
136 lines
3.4 KiB
Python
load(":defs.bzl", "string_flag_with_values")
|
|
|
|
# @platforms is found at https://github.com/bazelbuild/platforms
|
|
package(default_visibility = ["//:__subpackages__"])
|
|
|
|
config_setting(
|
|
name = "linux_x64",
|
|
constraint_values = [
|
|
"@platforms//cpu:x86_64",
|
|
"@platforms//os:linux",
|
|
],
|
|
)
|
|
|
|
config_setting(
|
|
name = "windows_x64",
|
|
constraint_values = [
|
|
"@platforms//cpu:x86_64",
|
|
"@platforms//os:windows",
|
|
],
|
|
)
|
|
|
|
config_setting(
|
|
name = "linux_arm64",
|
|
constraint_values = [
|
|
"@platforms//cpu:arm64",
|
|
"@platforms//os:linux",
|
|
],
|
|
)
|
|
|
|
config_setting(
|
|
name = "debug_build",
|
|
values = {"compilation_mode": "dbg"},
|
|
)
|
|
|
|
config_setting(
|
|
name = "release_build",
|
|
values = {"compilation_mode": "opt"},
|
|
)
|
|
|
|
constraint_value(
|
|
name = "fuchsia",
|
|
constraint_setting = "@platforms//os:os",
|
|
)
|
|
|
|
config_setting(
|
|
name = "fuchsia_arm64",
|
|
constraint_values = [
|
|
"@platforms//cpu:arm64",
|
|
":fuchsia",
|
|
],
|
|
)
|
|
|
|
# We define this here because the emscripten toolchain calls the cpu wasm, whereas the
|
|
# bazelbuild/platforms call it wasm32. https://github.com/emscripten-core/emsdk/issues/919
|
|
config_setting(
|
|
name = "cpu_wasm",
|
|
values = {
|
|
"cpu": "wasm",
|
|
},
|
|
)
|
|
|
|
# =============================================================================
|
|
# Configurable Skia Features
|
|
# =============================================================================
|
|
# These are flags that we can specify when invoking bazel build to turn on and
|
|
# off certain features, such as GPU backend, or codec support.
|
|
# https://docs.bazel.build/versions/4.2.1/skylark/config.html#using-build-settings-on-the-command-line
|
|
# For example, to use the GL backend with the WebGL flavor, one would run
|
|
# bazel build //:skia-core --//bazel/common_config_settings:gpu_backend=gl_backend \
|
|
# --//bazel/common_config_settings:with_gl_standard=webgl_standard
|
|
# This is a bit wordy, so we define aliases in the //.bazelrc file that condense this to
|
|
# bazel build //:skia-core --gpu_backend=gl_backend --with_gl_standard=webgl_standard
|
|
#
|
|
# Developers can specify their own short-hands by making a .bazelrc file in their home
|
|
# directory. https://docs.bazel.build/versions/main/guide.html#where-are-the-bazelrc-files
|
|
#
|
|
|
|
string_flag_with_values(
|
|
flag_name = "gpu_backend",
|
|
multiple = True,
|
|
values = [
|
|
"gl_backend",
|
|
"vulkan_backend",
|
|
],
|
|
)
|
|
|
|
string_flag_with_values(
|
|
flag_name = "with_gl_standard",
|
|
values = [
|
|
"gles_standard",
|
|
"gl_standard",
|
|
"webgl_standard",
|
|
],
|
|
)
|
|
|
|
string_flag_with_values(
|
|
default = "empty_fontmgr_factory",
|
|
flag_name = "fontmgr_factory",
|
|
values = [
|
|
"empty_fontmgr_factory",
|
|
"custom_embedded_fontmgr_factory",
|
|
],
|
|
)
|
|
|
|
string_flag_with_values(
|
|
flag_name = "include_fontmgr",
|
|
multiple = True,
|
|
values = [
|
|
"custom_directory_fontmgr",
|
|
"custom_embedded_fontmgr",
|
|
"custom_empty_fontmgr",
|
|
],
|
|
)
|
|
|
|
string_flag_with_values(
|
|
flag_name = "include_decoder",
|
|
multiple = True,
|
|
values = [
|
|
"gif_decode_codec",
|
|
"jpeg_decode_codec",
|
|
"png_decode_codec",
|
|
"raw_decode_codec",
|
|
"webp_decode_codec",
|
|
],
|
|
)
|
|
|
|
string_flag_with_values(
|
|
flag_name = "include_encoder",
|
|
multiple = True,
|
|
values = [
|
|
"jpeg_encode_codec",
|
|
"png_encode_codec",
|
|
"webp_encode_codec",
|
|
],
|
|
)
|