depot/third_party/nixpkgs/pkgs/by-name/vk/vk-bootstrap/package.nix

51 lines
1 KiB
Nix

{
lib,
stdenv,
fetchFromGitHub,
cmake,
vulkan-headers,
glfw,
catch2,
}:
stdenv.mkDerivation rec {
pname = "vk-bootstrap";
version = "0.7";
outputs = [
"out"
"dev"
];
src = fetchFromGitHub {
owner = "charles-lunarg";
repo = "vk-bootstrap";
rev = "v${version}";
hash = "sha256-X3ANqfplrCF1R494+H5/plcwMH7rbW6zpLA4MZrYaoE=";
};
postPatch = ''
# Upstream uses cmake FetchContent to resolve glfw and catch2
# needed for examples and tests
sed -iE 's=add_subdirectory(ext)==g' CMakeLists.txt
sed -iE 's=Catch2==g' tests/CMakeLists.txt
'';
nativeBuildInputs = [ cmake ];
buildInputs = [
vulkan-headers
glfw
catch2
];
cmakeFlags = [
"-DVK_BOOTSTRAP_VULKAN_HEADER_DIR=${vulkan-headers}/include"
];
meta = with lib; {
description = "Vulkan Bootstrapping Library";
license = licenses.mit;
homepage = "https://github.com/charles-lunarg/vk-bootstrap";
maintainers = with maintainers; [ shamilton ];
platforms = platforms.all;
};
}