package(default_visibility = ["//visibility:public"]) licenses(["notice"]) exports_files(["LICENSE"]) VULKAN_HDRS = [ "include/vulkan/vk_platform.h", "include/vulkan/vk_sdk_platform.h", "include/vulkan/vulkan.h", "include/vulkan/vulkan_core.h", ] VULKAN_TEXTUAL_HDRS = [ "include/vulkan/vulkan_android.h", "include/vulkan/vulkan_fuchsia.h", "include/vulkan/vulkan_ggp.h", "include/vulkan/vulkan_ios.h", "include/vulkan/vulkan_macos.h", "include/vulkan/vulkan_metal.h", "include/vulkan/vulkan_vi.h", "include/vulkan/vulkan_wayland.h", "include/vulkan/vulkan_win32.h", "include/vulkan/vulkan_xcb.h", "include/vulkan/vulkan_xlib.h", "include/vulkan/vulkan_xlib_xrandr.h", ] # The main vulkan public headers for applications. This excludes headers # designed for ICDs and layers. cc_library( name = "vulkan_headers", hdrs = VULKAN_HDRS, includes = ["include"], textual_hdrs = VULKAN_TEXTUAL_HDRS, ) # Like :vulkan_headers but defining VK_NO_PROTOTYPES to disable the # inclusion of C function prototypes. Useful if dynamically loading # all symbols via dlopen/etc. cc_library( name = "vulkan_headers_no_prototypes", hdrs = VULKAN_HDRS, defines = ["VK_NO_PROTOTYPES"], includes = ["include"], textual_hdrs = VULKAN_TEXTUAL_HDRS, ) # Provides a C++-ish interface to Vulkan. cc_library( name = "vulkan_hpp", hdrs = ["include/vulkan/vulkan.hpp"], defines = ["VULKAN_HPP_NO_EXCEPTIONS"], includes = ["include"], deps = [":vulkan_headers"], )