blob: 239589108d0124d116901709acedc1562f6bf4bd [file] [log] [blame]
Patrick Williamsac13d5f2023-11-24 18:59:46 -06001SUMMARY = "Vulkan Validation layers"
2DESCRIPTION = "Khronos official Vulkan validation layers to assist developers \
3in verifying that their applications correctly use the Vulkan API"
4HOMEPAGE = "https://www.khronos.org/vulkan/"
5BUGTRACKER = "https://github.com/KhronosGroup/Vulkan-ValidationLayers"
6SECTION = "libs"
7
8LICENSE = "Apache-2.0 & MIT"
9LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=cd3c0bc366cd9b6a906e22f0bcb5910f"
10
Patrick Williamsb58112e2024-03-07 11:16:36 -060011SRC_URI = "git://github.com/KhronosGroup/Vulkan-ValidationLayers.git;branch=vulkan-sdk-1.3.275;protocol=https"
12SRCREV = "780c65337e111c7385109c7b720d757a778e4fe2"
Patrick Williamsac13d5f2023-11-24 18:59:46 -060013
14S = "${WORKDIR}/git"
15
16REQUIRED_DISTRO_FEATURES = "vulkan"
17
18DEPENDS = "vulkan-headers vulkan-loader spirv-headers spirv-tools glslang vulkan-utility-libraries"
19
20# BUILD_TESTS - Not required for OE builds
21# USE_ROBIN_HOOD_HASHING - Provides substantial performance improvements on all platforms.
22# Yocto project doesn't contain a recipe for package so disabled it.
23EXTRA_OECMAKE = "\
24 -DBUILD_TESTS=OFF \
25 -DUSE_ROBIN_HOOD_HASHING=OFF \
26 -DGLSLANG_INSTALL_DIR=${STAGING_LIBDIR} \
27 -DVULKAN_HEADERS_INSTALL_DIR=${STAGING_EXECPREFIXDIR} \
28 -DSPIRV_HEADERS_INSTALL_DIR=${STAGING_EXECPREFIXDIR} \
29 "
30
31PACKAGECONFIG[x11] = "-DBUILD_WSI_XLIB_SUPPORT=ON -DBUILD_WSI_XCB_SUPPORT=ON, -DBUILD_WSI_XLIB_SUPPORT=OFF -DBUILD_WSI_XCB_SUPPORT=OFF, libxcb libx11 libxrandr"
32PACKAGECONFIG[wayland] = "-DBUILD_WSI_WAYLAND_SUPPORT=ON, -DBUILD_WSI_WAYLAND_SUPPORT=OFF, wayland"
33
34PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'x11 wayland', d)}"
35
36inherit cmake features_check pkgconfig
37
38FILES:${PN} += "${datadir}/vulkan"
39
40SOLIBS = ".so"
41FILES_SOLIBSDEV = ""
42
43# These recipes need to be updated in lockstep with each other:
44# glslang, vulkan-headers, vulkan-loader, vulkan-tools,
45# vulkan-validation-layers, spirv-headers, spirv-tools,
46# vulkan-utility-libraries.
47# The tags versions should always be sdk-x.y.z, as this is what
48# upstream considers a release.
49UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"