From cfcb5c3212f0fce667885ff0de6fa0b9fc4b3ca8 Mon Sep 17 00:00:00 2001 From: ladevieq Date: Sat, 9 Jul 2022 23:45:26 +0200 Subject: Improve compilation time --- src/vulkan-loader.cpp | 54 +++++++++++++++++---------------------------------- 1 file changed, 18 insertions(+), 36 deletions(-) (limited to 'src/vulkan-loader.cpp') diff --git a/src/vulkan-loader.cpp b/src/vulkan-loader.cpp index 42c018e..0977fe8 100644 --- a/src/vulkan-loader.cpp +++ b/src/vulkan-loader.cpp @@ -1,12 +1,10 @@ -#include - #include "vulkan-loader.hpp" + +#include + #include "defines.hpp" #if defined(WINDOWS) -#include -#include - HMODULE vulkanLibrary = LoadLibrary("vulkan-1.dll"); #define LoadProcAddress GetProcAddress @@ -33,46 +31,30 @@ void *vulkanLibrary = dlopen("libvulkan.1.dylib", RTLD_NOW); VULKAN_DEVICE_FUNCTIONS #undef X -#define X(name) \ -void Load_##name() \ -{ \ - name = reinterpret_cast(LoadProcAddress(vulkanLibrary, #name)); \ - if (!name) { \ - std::cerr << "Cannot load vulkan function " << #name << std::endl; \ - } \ +#define X(name) \ +void Load_##name() \ +{ \ + (name) = reinterpret_cast(LoadProcAddress(vulkanLibrary, #name)); \ + assert((name) && "Cannot load vulkan function " #name); \ } VULKAN_EXPORTED_FUNCTIONS -#undef X - -#define X(name) \ -void Load_##name() \ -{ \ - name = reinterpret_cast(vkGetInstanceProcAddr(nullptr, #name)); \ - if (!name) { \ - std::cerr << "Cannot load vulkan function " << #name << std::endl; \ - } \ -} VULKAN_APPLICATION_FUNCTIONS #undef X -#define X(name) \ -void Load_##name(VkInstance instance) \ -{ \ - name = reinterpret_cast(vkGetInstanceProcAddr(instance, #name)); \ - if (!name) { \ - std::cerr << "Cannot load vulkan function " << #name << std::endl; \ - } \ +#define X(name) \ +void Load_##name(VkInstance instance) \ +{ \ + (name) = reinterpret_cast(vkGetInstanceProcAddr(instance, #name)); \ + assert((name) && "Cannot load vulkan function " #name); \ } VULKAN_INSTANCE_FUNCTIONS #undef X -#define X(name) \ -void Load_##name(VkDevice device) \ -{ \ - name = reinterpret_cast(vkGetDeviceProcAddr(device, #name)); \ - if (!name) { \ - std::cerr << "Cannot load vulkan function " << #name << std::endl; \ - } \ +#define X(name) \ +void Load_##name(VkDevice device) \ +{ \ + (name) = reinterpret_cast(vkGetDeviceProcAddr(device, #name)); \ + assert((name) && "Cannot load vulkan function " #name); \ } VULKAN_DEVICE_FUNCTIONS #undef X -- cgit v1.3