this my build system
const std = @import("std");
const Builder = std.Build;
pub fn build(b: *Builder) void {
const target = b.standardTargetOptions(.{});
const optimize = b.standardOptimizeOption(.{});
const module = b.addModule("main", .{
.target = target,
.optimize = optimize,
.link_libcpp = true,
});
module.addCSourceFiles(.{
.files = &[_][]const u8{
"D3D12HelloWindow.cpp",
"DXSample.cpp",
"Main.cpp",
"stdafx.cpp",
"Win32Application.cpp",
},
.flags = &[_][]const u8{
"-std=c++20",
"-I.",
"-Iinclude",
"-Iinclude/d3dx12",
"-Wno-switch",
"-Wno-switch-enum",
"-DUNICODE",
"-D_UNICODE",
"-DWIN32_LEAN_AND_MEAN",
"-DNOMINMAX",
"-D_CRT_SECURE_NO_WARNINGS",
},
});
const exe = b.addExecutable(.{
.name = "hello",
.root_module = module,
});
const windows_libs = &[_][]const u8{
"kernel32",
"user32",
"gdi32",
"winspool",
"comdlg32",
"advapi32",
"shell32",
"ole32",
"oleaut32",
"uuid",
};
for (windows_libs) |lib| {
exe.linkSystemLibrary(lib);
}
exe.linkSystemLibrary("d3d12");
exe.linkSystemLibrary("dxgi");
b.installArtifact(exe);
}