• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1load(
2    "//bazel:skia_rules.bzl",
3    "exports_files_legacy",
4    "generate_cpp_files_for_header_list",
5    "skia_filegroup",
6)
7
8licenses(["notice"])
9
10exports_files_legacy()
11
12# Headers with no corresponding .cpp files
13IWYU_HDRS = [
14    "SkASAN.h",
15    "SkArenaAllocList.h",
16    "SkLeanWindows.h",
17    "SkScopeExit.h",
18    "SkRandom.h",
19    "SkMSAN.h",
20    "SkStringView.h",
21    "SkTBlockList.h",
22    "SkTDPQueue.h",
23    "SkTInternalLList.h",
24    "SkTLazy.h",
25    "SkTSort.h",
26    "SkZip.h",
27]
28
29skia_filegroup(
30    name = "private_hdrs",
31    srcs = IWYU_HDRS + [
32        "SkArenaAlloc.h",
33        "SkAutoMalloc.h",
34        "SkBezierCurves.h",
35        "SkBlockAllocator.h",
36        "SkBuffer.h",
37        "SkCubics.h",
38        "SkHalf.h",
39        "SkMathPriv.h",
40        "SkQuads.h",
41        "SkSafeMath.h",
42        "SkTSearch.h",
43        "SkUTF.h",
44        "SkUtils.h",
45        "SkVx.h",  # Causes IWYU to crash when compiling.
46    ],
47    visibility = ["//src:__pkg__"],
48)
49
50generate_cpp_files_for_header_list(
51    name = "generated_base_header_cpps",
52    headers = IWYU_HDRS,
53    visibility = ["//src:__pkg__"],
54)
55
56# In a separate file group because these files are exported to sksl.gni:skslc_deps.
57skia_filegroup(
58    name = "skslc_srcs",
59    srcs = [
60        "SkArenaAlloc.cpp",
61        "SkBlockAllocator.cpp",
62        "SkContainers.cpp",
63        "SkHalf.cpp",
64        "SkMalloc.cpp",
65        "SkMathPriv.cpp",
66        "SkSafeMath.cpp",
67        "SkSemaphore.cpp",
68        "SkThreadID.cpp",
69        "SkUTF.cpp",
70        "SkUtils.cpp",
71    ],
72)
73
74skia_filegroup(
75    name = "srcs",
76    srcs = [
77        "SkBezierCurves.cpp",
78        "SkBuffer.cpp",
79        "SkCubics.cpp",
80        "SkDeque.cpp",
81        "SkFloatingPoint.cpp",
82        "SkQuads.cpp",
83        "SkTDArray.cpp",
84        "SkTSearch.cpp",
85        ":skslc_srcs",
86    ],
87    visibility = ["//src:__pkg__"],
88)
89