YaaZ / VulkanMemoryAllocator-Hpp

C++ bindings for VulkanMemoryAllocator
Creative Commons Zero v1.0 Universal
55 stars 29 forks source link

vcpkg Dependencies #42

Open matt328 opened 2 months ago

matt328 commented 2 months ago

Is the vcpkg package just currently unusable? From what I can tell this package depends on vulkan@2023-12-17 which depends on vulkan-headers@1.3.280, and because of that, my project is pulling in vulkan.hpp@1.3.280, which isn't compatible with this package's latest due to the namespace issue talked about in #41.

I guess there's not much maintainers of this package can do, guess I'm looking for some others' perspectives on how they manage Vulkan dependencies in their projects. Up to this point, I've been able to use vcpkg for everything, but I guess an option is to submodule all the Vulkan related deps so I can carefully control which versions are pulled in. I think I would also need to hand craft some CMake stuff to find_package() the Vulkan SDK I have installed locally.

stripe2933 commented 1 month ago

I use vcpkg overlay for force vcpkg to use locally installed Vulkan SDK.

Folder structure:

portfile.cmake

set(VCPKG_POLICY_EMPTY_PACKAGE enabled)

vcpkg.json

{
  "name": "vulkan",
  "version": "1.3.283"
}

At the configuration time, I pass -DVCPKG_OVERLAY_PORTS="../overlays". Then vcpkg will not use vulkan sub-dependency for any dependencies.