From a6c24173280403b0645ad9fd3bd618c342ef7738 Mon Sep 17 00:00:00 2001 From: Jorijn van der Graaf Date: Mon, 2 Mar 2026 21:30:19 +0100 Subject: [PATCH] windows fix --- implementations/Crafter.Build-Project.cpp | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/implementations/Crafter.Build-Project.cpp b/implementations/Crafter.Build-Project.cpp index 4b714f1..d395ead 100644 --- a/implementations/Crafter.Build-Project.cpp +++ b/implementations/Crafter.Build-Project.cpp @@ -245,7 +245,20 @@ namespace Crafter { std::string editedTarget = config.target; std::replace(editedTarget.begin(), editedTarget.end(), '-', '_'); - std::string command = std::format("clang++ -stdlib=libc++ --target={} -march={} -mtune={} -std={} -D CRAFTER_BUILD_CONFIGURATION_TARGET_{} -fprebuilt-module-path={} -I{} -I{}", config.target, config.march, config.march, config.standard, editedTarget, (exeDir/config.target).string(), buildDir.string(), (exeDir/"cloneCache").string()); + std::string command = std::format("clang++ -stdlib=libc++ --target={} -march={} -mtune={} -std={} -D CRAFTER_BUILD_CONFIGURATION_TARGET_{} -fprebuilt-module-path={}", config.target, config.march, config.march, config.standard, editedTarget, (exeDir/config.target).string()); + + + for (const auto& entry : fs::directory_iterator(buildDir)) { + if (entry.is_directory()) { + command += " -I" + entry.path().string() + " "; + } + } + + for (const auto& entry : fs::directory_iterator(exeDir/"cloneCache")) { + if (entry.is_directory()) { + command += " -I" + entry.path().string() + " "; + } + } if(config.target == "wasm32-wasi") { command += std::format(" --sysroot={} -fno-exceptions -fno-c++-static-destructors", (exeDir/"wasi-sysroot-28.0").string());