• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1load("//bazel:skia_rules.bzl", "exports_files_legacy", "generate_cpp_files_for_headers", "skia_filegroup")
2
3package(
4    default_applicable_licenses = ["//:license"],
5)
6
7licenses(["notice"])
8
9exports_files_legacy()
10
11# This is a separate gropu to make it easier to enforce that Graphite does not
12# include Ganesh-specific Vulkan headers.
13skia_filegroup(
14    name = "shared_public_hdrs",
15    srcs = [
16        "VulkanBackendContext.h",
17        "VulkanExtensions.h",
18        "VulkanMemoryAllocator.h",
19        "VulkanMutableTextureState.h",
20        "VulkanTypes.h",
21    ],
22)
23
24# These are Ganesh specific. In a perfect world, we'd move these to
25# //include/gpu/ganesh/vk, but that involves updating several clients.
26skia_filegroup(
27    name = "ganesh_public_hdrs",
28    srcs = [
29        "GrVkBackendContext.h",
30        "GrVkExtensions.h",
31        "GrVkMemoryAllocator.h",
32        "GrVkTypes.h",
33    ],
34)
35
36# Group is exported to //gn/gpu.gni:skia_gpu_vk_public.
37skia_filegroup(
38    name = "public_hdrs",
39    srcs = [
40        ":ganesh_public_hdrs",
41        ":shared_public_hdrs",
42    ],
43    visibility = [
44        "//include/gpu:__pkg__",
45        "//src/gpu/ganesh/vk:__pkg__",
46    ],
47)
48
49generate_cpp_files_for_headers(
50    name = "headers_to_compile",
51    headers = [
52        "VulkanBackendContext.h",
53        "VulkanMemoryAllocator.h",
54        "VulkanTypes.h",
55    ],
56)
57