|
|
|
@ -5,15 +5,32 @@ package("vulkan-validationlayers") |
|
|
|
|
set_license("Apache-2.0") |
|
|
|
|
|
|
|
|
|
if is_plat("android") then |
|
|
|
|
add_urls("https://github.com/KhronosGroup/Vulkan-ValidationLayers/releases/download/sdk-$(version)/android-binaries-$(version).tar.gz", |
|
|
|
|
{version = function (version) return version:gsub("%+", ".") end}) |
|
|
|
|
add_urls("https://github.com/KhronosGroup/Vulkan-ValidationLayers/releases/download/$(version).tar.gz", {version = function (version) |
|
|
|
|
local versionLoc = version:gsub("%+", ".") |
|
|
|
|
if version:gt("1.3.268+0") then |
|
|
|
|
return "vulkan-sdk-" .. versionLoc .. "/android-binaries-" .. versionLoc |
|
|
|
|
elseif version:gt("1.3.261+1") then |
|
|
|
|
return "vulkan-sdk-" .. versionLoc .. "/android-binaries-vulkan-sdk-" .. versionLoc |
|
|
|
|
elseif version:gt("1.3.250+1") then |
|
|
|
|
return "sdk-" .. versionLoc .. "/android-binaries-sdk-" .. versionLoc |
|
|
|
|
else |
|
|
|
|
return "sdk-" .. versionLoc .. "/android-binaries-" .. versionLoc |
|
|
|
|
end |
|
|
|
|
end}) |
|
|
|
|
|
|
|
|
|
add_versions("1.3.275+0", "6e22fb13601c1e780c44a17497a3c999cc5207e52a09819e7c32ecd8439eff7a") |
|
|
|
|
add_versions("1.2.198+0", "5436e974d6b3133b3454edf1910f76b9f869db8bbe086859b2abe32fdb539cbc") |
|
|
|
|
add_versions("1.2.189+1", "b3e69b60a67a17b023825f9eb0ce1aef22e6b59d095afa204d883a9ce3d81021") |
|
|
|
|
else |
|
|
|
|
add_urls("https://github.com/KhronosGroup/Vulkan-ValidationLayers/archive/sdk-$(version).tar.gz", |
|
|
|
|
{version = function (version) return version:gsub("%+", ".") end}) |
|
|
|
|
add_urls("https://github.com/KhronosGroup/Vulkan-ValidationLayers/archive/$(version).tar.gz", {version = function (version) |
|
|
|
|
local prefix = "sdk-" |
|
|
|
|
if version:gt("1.3.261+1") then |
|
|
|
|
prefix = "vulkan-sdk-" |
|
|
|
|
end |
|
|
|
|
return version:startswith("v") and version or prefix .. version:gsub("%+", ".") |
|
|
|
|
end}) |
|
|
|
|
|
|
|
|
|
add_versions("1.3.275+0", "acfd84039109220129624b0ecb69980bbc3a858978c62b556dbe16efd0f26755") |
|
|
|
|
add_versions("1.2.198+0", "4a70cc5da26baf873fcf69b081eeeda545515dd66e5904f18fee32b4d275593a") |
|
|
|
|
add_versions("1.2.189+1", "d169ae71ae3ba12159df355b58f86f5635062c695d1deac9b97d5653561d517d") |
|
|
|
|
add_versions("1.2.182+0", "e88492143c8b08154807e7ead0ac784365b14464bb5016c2800cbff176ff61e7") |
|
|
|
@ -24,12 +41,19 @@ package("vulkan-validationlayers") |
|
|
|
|
|
|
|
|
|
add_deps("cmake") |
|
|
|
|
add_deps("glslang", "spirv-headers", "spirv-tools") |
|
|
|
|
|
|
|
|
|
if is_plat("windows") then |
|
|
|
|
add_syslinks("Advapi32") |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
if is_plat("mingw") and is_subhost("msys") then |
|
|
|
|
add_extsources("pacman::vulkan-validation-layers") |
|
|
|
|
elseif is_plat("linux") then |
|
|
|
|
add_extsources("apt::vulkan-validationlayers-dev", "pacman::vulkan-extra-layers") |
|
|
|
|
add_extsources("apt::vulkan-validationlayers-dev", "pacman::vulkan-validation-layers") |
|
|
|
|
add_deps("ninja") |
|
|
|
|
add_deps("wayland", "libxrandr", "libxcb", "libxkbcommon") |
|
|
|
|
elseif is_plat("macosx") then |
|
|
|
|
add_extsources("brew::vulkan-validationlayers") |
|
|
|
|
end |
|
|
|
|
end |
|
|
|
|
|
|
|
|
@ -39,6 +63,10 @@ package("vulkan-validationlayers") |
|
|
|
|
if package:version():ge("1.2.189") then |
|
|
|
|
package:add("deps", "robin-hood-hashing") |
|
|
|
|
end |
|
|
|
|
|
|
|
|
|
if package:version():ge("1.3.275") then |
|
|
|
|
package:add("deps", "vulkan-utility-libraries " .. sdkver) |
|
|
|
|
end |
|
|
|
|
end) |
|
|
|
|
|
|
|
|
|
on_install("windows", "linux", function (package) |
|
|
|
@ -89,7 +117,5 @@ package("vulkan-validationlayers") |
|
|
|
|
assert(os.isfile(path.join(package:installdir("lib"), "x86", "libVkLayer_khronos_validation.so"))) |
|
|
|
|
assert(os.isfile(path.join(package:installdir("lib"), "armeabi-v7a", "libVkLayer_khronos_validation.so"))) |
|
|
|
|
assert(os.isfile(path.join(package:installdir("lib"), "arm64-v8a", "libVkLayer_khronos_validation.so"))) |
|
|
|
|
else |
|
|
|
|
assert(package:has_cxxfuncs("getLayerOption", {includes = "layers/vk_layer_config.h"})) |
|
|
|
|
end |
|
|
|
|
end) |
|
|
|
|