blob: f768aaa922cdc2451217234597af3c1b37dafb60 [file] [log] [blame]
load("//bazel:skia_rules.bzl", "exports_files_legacy", "skia_filegroup", "generate_cpp_files_for_headers")
licenses(["notice"])
exports_files_legacy()
skia_filegroup(
name = "hdrs",
srcs = [
"BentleyOttmann1.h",
"BruteForceCrossings.h",
"EventQueue.h",
"EventQueueInterface.h",
"Int96.h",
"Point.h",
"Segment.h",
"SweepLine.h",
],
visibility = ["//modules/bentleyottmann:__pkg__"],
)
skia_filegroup(
name = "srcs",
srcs = select({
# These sources are not checked in - Bazel generates them dynamically. We only want to
# generate and compile them when we are doing compile-time analysis, e.g. IWYU.
"//bazel/common_config_settings:compile_generated_cpp_files_for_headers_true": [
":generated_srcs",
],
# If filegroups are empty and used in a cc_library, Bazel throws an error. So we have to
# put something here.
"//conditions:default": [":hdrs"],
}),
visibility = ["//:__pkg__"],
)
generate_cpp_files_for_headers(
name = "generated_srcs",
headers = [
":hdrs",
],
# All headers listed here (using paths relative to the Skia root) will have a .cpp file
# generated that is a copy of the header file just with a .cpp suffix so Bazel will try to
# compile it. This allows us to run IWYU on these files.
to_generate = [
"modules/bentleyottmann/include/EventQueueInterface.h",
],
)