refactor: Use vulkan-headers.wrap instead of depending on a vulkan sdk install
All checks were successful
Ubuntu Cross to Win64 / Cross Compile with ming64 (1.4.0, ubuntu-latest) (push) Successful in 1m52s

This commit is contained in:
Kevin Trogant 2024-07-26 09:38:28 +02:00
parent dd76b924c0
commit b70cafecef
4 changed files with 36 additions and 7 deletions

12
docs/REQUIRED_TOOLS.md Normal file
View File

@ -0,0 +1,12 @@
# Tools required to build this
- [meson](https://mesonbuild.com/Getting-meson.html) The build system we use.
- [cmake](https://cmake.org/download/) For building some of the dependencies.
- [git](https://git-scm.com/) of course
On Windows:
- Visual Studio (2022 is what is frequently tested). Install the Game Development with C++ package for DirectX.
On Linux:
- GCC or clang.
- wget (for scripts)

View File

@ -2,7 +2,7 @@
#include "runtime/mem_arena.h" #include "runtime/mem_arena.h"
#include "runtime/timing.h" #include "runtime/timing.h"
#ifdef __WIN32 #ifdef _WIN32
#define GLFW_EXPOSE_NATIVE_WIN32 #define GLFW_EXPOSE_NATIVE_WIN32
#elif defined(RT_USE_XLIB) #elif defined(RT_USE_XLIB)
#define GLFW_EXPOSE_NATIVE_X11 #define GLFW_EXPOSE_NATIVE_X11
@ -13,6 +13,11 @@
#include <GLFW/glfw3.h> #include <GLFW/glfw3.h>
#include <GLFW/glfw3native.h> #include <GLFW/glfw3native.h>
#ifdef _WIN32
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#endif
#include <runtime/runtime.h> #include <runtime/runtime.h>
#include <runtime/config.h> #include <runtime/config.h>
#include <runtime/dynamic_libs.h> #include <runtime/dynamic_libs.h>
@ -403,9 +408,6 @@ static int Entry(int argc, char **argv) {
} }
#ifdef _WIN32 #ifdef _WIN32
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR pCmdLine, int nCmdShow) { int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR pCmdLine, int nCmdShow) {
_hInstance = hInstance; _hInstance = hInstance;

View File

@ -3,9 +3,11 @@ if get_option('build_vk')
vma_proj = subproject('vulkan-memory-allocator', default_options: ['warning_level=0', 'werror=false']) vma_proj = subproject('vulkan-memory-allocator', default_options: ['warning_level=0', 'werror=false'])
vma_dep = vma_proj.get_variable('vma_allocator_dep') vma_dep = vma_proj.get_variable('vma_allocator_dep')
vk_dep = dependency('vulkan', required : true) #vk_dep = dependency('vulkan', required : true)
vk_inc_dep = vk_dep.partial_dependency(compile_args: true, includes: true) #vk_inc_dep = vk_dep.partial_dependency(compile_args: true, includes: true)
vk_inc_proj = subproject('vulkan-headers')
vk_inc_dep = vk_inc_proj.get_variable('vulkan_headers_dep')
vk_renderer_lib = library('rtvk', vk_renderer_lib = library('rtvk',
'init.c', 'init.c',

View File

@ -0,0 +1,13 @@
[wrap-file]
directory = Vulkan-Headers-1.3.283
source_url = https://github.com/KhronosGroup/Vulkan-Headers/archive/v1.3.283.tar.gz
source_filename = vulkan-headers-1.3.283.tar.gz
source_hash = a76ff77815012c76abc9811215c2167128a73a697bcc23948e858d1f7dd54a85
patch_filename = vulkan-headers_1.3.283-1_patch.zip
patch_url = https://wrapdb.mesonbuild.com/v2/vulkan-headers_1.3.283-1/get_patch
patch_hash = 00e30d35117ae90a19b5b8878746fceaf31b41778b817ca9e6b3ae6063be8233
source_fallback_url = https://github.com/mesonbuild/wrapdb/releases/download/vulkan-headers_1.3.283-1/vulkan-headers-1.3.283.tar.gz
wrapdb_version = 1.3.283-1
[provide]
vulkanheaders = vulkan_headers_dep