Skip to content

Commit 8da77d7

Browse files
Experiment with optional Vulkan Setup
1 parent 023e788 commit 8da77d7

5 files changed

Lines changed: 20 additions & 6 deletions

File tree

ZEngine/ZEngine/CMakeLists.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,8 @@ if(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
3333
endif()
3434

3535
if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
36-
target_link_libraries(zEngineLib PRIVATE stdc++fs)
36+
target_link_libraries(zEngineLib PUBLIC stdc++fs)
37+
target_compile_definitions (zEngineLib PUBLIC VK_USE_PLATFORM_WAYLAND_KHR)
3738
endif ()
3839

3940
target_link_libraries (zEngineLib PUBLIC imported::External_libs)

ZEngine/ZEngine/Hardwares/VulkanDevice.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
*/
77
#define VMA_IMPLEMENTATION
88
#define VMA_VULKAN_VERSION 1003000 // Vulkan 1.3
9-
9+
#include <vk_mem_alloc.h>
1010
#include <ZEngine/Hardwares/VulkanDevice.h>
1111
#include <ZEngine/Helpers/MemoryOperations.h>
1212
#include <ZEngine/Helpers/ThreadPool.h>

ZEngine/ZEngine/Windows/Inputs/KeyCode.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,5 +137,5 @@ namespace ZEngine::Windows::Inputs
137137

138138
} GlfwKey;
139139

140-
auto format_as(GlfwKey f) { return fmt::underlying(f); }
140+
inline auto format_as(GlfwKey f) { return fmt::underlying(f); }
141141
} // namespace ZEngine::Windows::Inputs

ZEngine/tests/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,5 @@ add_executable(ZEngineTests ${TEST_SOURCES})
88

99
target_link_libraries(ZEngineTests PRIVATE
1010
zEngineLib
11-
GTest::gtest
1211
GTest::gtest_main
1312
)

dependencies.cmake

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ set(YAML_BUILD_SHARED_LIBS=OFF)
4040
#VULKAN_LOADER
4141
set(USE_MASM=OFF)
4242
set(USE_GAS=OFF)
43+
set(UPDATE_DEPS=ON)
4344

4445
#GLSLANG
4546
set(ALLOW_EXTERNAL_SPIRV_TOOLS=ON)
@@ -224,6 +225,7 @@ Fetchcontent_Declare(
224225
FetchContent_Declare(Vulkan-Loader
225226
GIT_REPOSITORY https://github.com/KhronosGroup/Vulkan-Loader
226227
GIT_SHALLOW TRUE
228+
GIT_TAG main
227229
)
228230

229231
FetchContent_Declare(Vulkan-Headers
@@ -259,6 +261,17 @@ FetchContent_MakeAvailable(
259261

260262
find_package(Vulkan REQUIRED)
261263

264+
if(NOT Vulkan_FOUND)
265+
266+
fetchpackage_makeavailable(
267+
Vulkan-Loader
268+
)
269+
270+
add_library(myvulkan INTERFACE)
271+
target_link_libraries(myvulkan INTERFACE Vulkan::Headers Vulkan::Loader)
272+
add_library(Vulkan::Vulkan ALIAS myvulkan)
273+
endif()
274+
262275
set(IMGUIDIR ${FETCHCONTENT_BASE_DIR}/imgui)
263276

264277
add_library(imgui STATIC)
@@ -281,7 +294,7 @@ target_sources(
281294

282295
target_compile_definitions(imgui PUBLIC GLFW_INCLUDE_VULKAN IMGUI_DEFINE_MATH_OPERATORS)
283296

284-
target_link_libraries(imgui PUBLIC glfw Vulkan::Vulkan)
297+
target_link_libraries(imgui PUBLIC glfw Vulkan::Headers)
285298

286299
add_library(imguizmo STATIC)
287300

@@ -323,7 +336,8 @@ target_link_libraries(External_libs
323336
glslang::glslang-default-resource-limits
324337
glslang::SPIRV
325338
glslang::SPVRemapper
326-
GPUOpen::VulkanMemoryAllocator
339+
GPUOpen::VulkanMemoryAllocator
340+
Vulkan::Vulkan
327341
)
328342

329343
add_library(imported::External_libs ALIAS External_libs)

0 commit comments

Comments
 (0)