blob: 67d7c7abf11cf5e9951ac8dc8839db287af475bd [file] [log] [blame]
load("//bazel:skia_rules.bzl", "skia_cc_library", "skia_filegroup")
load("@skia_user_config//:copts.bzl", "DEFAULT_COPTS")
package(
default_applicable_licenses = ["//:license"],
)
licenses(["notice"])
# A separate group duplicating :skcms.hdrs for
# export to //modules/skcms/skcms.gni:skcms_public_headers.
skia_filegroup(
name = "public_hdrs",
srcs = ["skcms.h"],
)
# A separate group duplicating :skcms.srcs for
# export to //modules/skcms/skcms.gni:skcms_sources.
skia_filegroup(
name = "srcs",
srcs = [
"skcms.cc",
"src/skcms_Transform.h",
"src/skcms_TransformBaseline.cc",
"src/skcms_TransformHsw.cc",
"src/skcms_TransformSkx.cc",
"src/skcms_internals.h",
"src/skcms_public.h",
],
)
# A separate group duplicating :skcms.textual_hdrs for
# export to //modules/skcms/skcms.gni:skcms_sources.
skia_filegroup(
name = "textual_hdrs",
srcs = [
"src/Transform_inl.h",
],
)
skia_cc_library(
name = "skcms",
hdrs = [
"skcms.h",
],
visibility = ["//:__subpackages__"],
deps = [
":skcms_TransformBaseline",
":skcms_TransformHsw",
":skcms_TransformSkx",
":skcms_public",
],
)
skia_cc_library(
name = "skcms_public",
srcs = [
"skcms.cc",
"src/skcms_internals.h",
"src/skcms_public.h",
],
hdrs = [
"skcms.h",
],
deps = [":skcms_TransformBaseline"] +
select({
"@platforms//cpu:x86_64": [
":skcms_TransformHsw",
":skcms_TransformSkx",
],
"//conditions:default": [],
}),
)
skia_cc_library(
name = "skcms_TransformBaseline",
srcs = [
"src/skcms_Transform.h",
"src/skcms_TransformBaseline.cc",
"src/skcms_internals.h",
"src/skcms_public.h",
],
# This header does not compile on its own and is meant to be included from skcms_Transform*.cc
textual_hdrs = [
"src/Transform_inl.h",
],
)
skia_cc_library(
name = "skcms_TransformHsw",
srcs = [
"src/skcms_Transform.h",
"src/skcms_TransformHsw.cc",
"src/skcms_internals.h",
"src/skcms_public.h",
],
copts = DEFAULT_COPTS + select({
"@platforms//cpu:x86_64": ["-march=haswell"],
"//conditions:default": [],
}),
# This header does not compile on its own and is meant to be included from skcms_Transform*.cc
textual_hdrs = [
"src/Transform_inl.h",
],
)
skia_cc_library(
name = "skcms_TransformSkx",
srcs = [
"src/skcms_Transform.h",
"src/skcms_TransformSkx.cc",
"src/skcms_internals.h",
"src/skcms_public.h",
],
copts = DEFAULT_COPTS + select({
"@platforms//cpu:x86_64": ["-march=skylake-avx512"],
"//conditions:default": [],
}),
# This header does not compile on its own and is meant to be included from skcms_Transform*.cc
textual_hdrs = [
"src/Transform_inl.h",
],
)