From b7674e43bde4661dac2a11092826079c57a4d66c Mon Sep 17 00:00:00 2001 From: Matthew Date: Fri, 17 Apr 2026 16:37:12 +1000 Subject: [PATCH] update to include dlib import flags --- test.sh | 2 +- vulkan.d | 16 ++++++++++++++++ vulkan_funcs.d | 13 +++++++++++-- vulkan_logging.d | 11 +++++++++++ vulkan_util.d | 11 +++++++++++ 5 files changed, 50 insertions(+), 3 deletions(-) diff --git a/test.sh b/test.sh index 815e358..eb650eb 100755 --- a/test.sh +++ b/test.sh @@ -2,7 +2,7 @@ glslc -fshader-stage=comp --target-env=vulkan1.2 convert.comp.glsl -oconvert.comp.spv -ldc2 vulkan.d vulkan_funcs.d vulkan_logging.d vulkan_util.d -d-version=VULKAN_RENDERER_TEST -L-lvulkan --unittest -J./ -verrors=30 +ldc2 vulkan.d vulkan_funcs.d vulkan_logging.d vulkan_util.d -d-version=NO_DLIB -d-version=VULKAN_RENDERER_TEST -L-lvulkan --unittest -J./ -verrors=30 rm convert.comp.spv rm vulkan.o diff --git a/vulkan.d b/vulkan.d index 323fadf..cae0895 100644 --- a/vulkan.d +++ b/vulkan.d @@ -1,3 +1,19 @@ +version(NO_DLIB) enum bool BUILD_NO_DLIB = true; else enum bool BUILD_NO_DLIB = false; +version(DLIB) enum bool BUILD_DLIB = true; else enum bool BUILD_DLIB = false; + +static assert(!(BUILD_DLIB && BUILD_NO_DLIB) && (BUILD_NO_DLIB || BUILD_DLIB), "Must either build with or without DLib"); + +static if(BUILD_NO_DLIB) +{ + import vulkan_includes; +} + +static if(BUILD_DLIB) +{ + import dlibincludes; +} + + import vulkan_funcs; import vulkan_logging; import vulkan_util; diff --git a/vulkan_funcs.d b/vulkan_funcs.d index 26fb5a9..3fb40ef 100644 --- a/vulkan_funcs.d +++ b/vulkan_funcs.d @@ -1,6 +1,15 @@ -public import vulkan_includes; import vulkan_util; -import vulkan : Vulkan, VULKAN_LIBS, g_vk; +import vulkan; + +static if(BUILD_NO_DLIB) +{ + import vulkan_includes; +} + +static if(BUILD_DLIB) +{ + import dlibincludes; +} // Global Functions diff --git a/vulkan_logging.d b/vulkan_logging.d index e6d4f84..bce5877 100644 --- a/vulkan_logging.d +++ b/vulkan_logging.d @@ -1,10 +1,21 @@ import vulkan_funcs; import std.stdio; import vulkan : Vulkan; +import vulkan; import std.conv; import std.string; import core.stdc.string : strlen, strcmp; +static if(BUILD_NO_DLIB) +{ + import vulkan_includes; +} + +static if(BUILD_DLIB) +{ + import dlibincludes; +} + extern(System) VkBool32 DebugCallback( VkDebugUtilsMessageSeverityFlagBitsEXT message_severity, diff --git a/vulkan_util.d b/vulkan_util.d index 4672c94..9711915 100644 --- a/vulkan_util.d +++ b/vulkan_util.d @@ -1,7 +1,18 @@ +import vulkan; import std.stdio; import core.stdc.string : memset; import core.memory; +static if(BUILD_NO_DLIB) +{ + import vulkan_includes; +} + +static if(BUILD_DLIB) +{ + import dlibincludes; +} + alias i8 = byte; alias i16 = short; alias i32 = int;