@@ -44,9 +44,10 @@ pub fn build(b: *std.Build) !void {
4444 "-Wno-deprecated-declarations" ,
4545 "-Wno-tautological-constant-compare" ,
4646 "-Wno-error=date-time" ,
47+ "-Wno-error=unused-command-line-argument" ,
4748 };
4849 const cxx_options = common_options ++ [_ ][]const u8 {
49- "-std=c++17 " ,
50+ "-std=c++20 " ,
5051 };
5152 const c_options = common_options ++ [_ ][]const u8 {};
5253 const mm_options = cxx_options ++ [_ ][]const u8 {};
@@ -61,6 +62,7 @@ pub fn build(b: *std.Build) !void {
6162 .target = target ,
6263 .optimize = optimize ,
6364 }),
65+ .use_llvm = true ,
6466 });
6567 const combine_bin_zig = b .addExecutable (.{
6668 .name = "combine_bin_zig" ,
@@ -69,6 +71,7 @@ pub fn build(b: *std.Build) !void {
6971 .target = target ,
7072 .optimize = optimize ,
7173 }),
74+ .use_llvm = true ,
7275 });
7376
7477 b .installArtifact (combine_bin_zig );
@@ -83,6 +86,7 @@ pub fn build(b: *std.Build) !void {
8386 .target = target ,
8487 .optimize = optimize ,
8588 }),
89+ .use_llvm = true ,
8690 });
8791 bx .addCSourceFiles (.{
8892 .flags = & cxx_options ,
@@ -104,6 +108,7 @@ pub fn build(b: *std.Build) !void {
104108 .target = target ,
105109 .optimize = optimize ,
106110 }),
111+ .use_llvm = true ,
107112 });
108113 bimg .addCSourceFiles (.{
109114 .flags = & cxx_options ,
@@ -131,6 +136,7 @@ pub fn build(b: *std.Build) !void {
131136 .target = target ,
132137 .optimize = optimize ,
133138 }),
139+ .use_llvm = true ,
134140 });
135141 b .installArtifact (bgfx );
136142 bxInclude (b , bgfx , target , optimize );
@@ -220,6 +226,7 @@ pub fn build(b: *std.Build) !void {
220226 .target = target ,
221227 .optimize = optimize ,
222228 }),
229+ .use_llvm = true ,
223230 });
224231
225232 b .installArtifact (shaderc );
@@ -427,6 +434,7 @@ pub fn build(b: *std.Build) !void {
427434 .target = target ,
428435 .optimize = optimize ,
429436 }),
437+ .use_llvm = true ,
430438 });
431439 spirv_cross_lib .addIncludePath (b .path (spirv_cross_path ++ "include" ));
432440 spirv_cross_lib .addCSourceFiles (.{
@@ -465,6 +473,7 @@ pub fn build(b: *std.Build) !void {
465473 .target = target ,
466474 .optimize = optimize ,
467475 }),
476+ .use_llvm = true ,
468477 });
469478 glslang_lib .addIncludePath (b .path ("libs/bgfx/3rdparty" ));
470479 glslang_lib .addIncludePath (b .path (glslang_path ));
@@ -500,7 +509,8 @@ pub fn build(b: *std.Build) !void {
500509 "-MP" ,
501510 "-Wall" ,
502511 "-Wextra" ,
503- "-ffast-math" ,
512+ // https://github.com/bkaradzic/bgfx/commit/b4dbc129f3b69b0d6a9093f2d579b883396a839f
513+ // "-ffast-math",
504514 "-fomit-frame-pointer" ,
505515 "-g" ,
506516 "-m64" ,
@@ -519,7 +529,8 @@ pub fn build(b: *std.Build) !void {
519529 "-MP" ,
520530 "-Wall" ,
521531 "-Wextra" ,
522- "-ffast-math" ,
532+ // https://github.com/bkaradzic/bgfx/commit/b4dbc129f3b69b0d6a9093f2d579b883396a839f
533+ // "-ffast-math",
523534 "-fomit-frame-pointer" ,
524535 "-g" ,
525536 "-m64" ,
@@ -535,6 +546,7 @@ pub fn build(b: *std.Build) !void {
535546 .target = target ,
536547 .optimize = optimize ,
537548 }),
549+ .use_llvm = true ,
538550 });
539551 glsl_optimizer_lib .addIncludePath (b .path (glsl_optimizer_path ++ "include" ));
540552 glsl_optimizer_lib .addIncludePath (b .path (glsl_optimizer_path ++ "src" ));
@@ -580,7 +592,11 @@ fn bxInclude(b: *std.Build, step: *std.Build.Step.Compile, target: std.Build.Res
580592 step .root_module .addCMacro ("__STDC_FORMAT_MACROS" , "1" );
581593 step .root_module .addCMacro ("__STDC_CONSTANT_MACROS" , "1" );
582594
583- step .root_module .addCMacro ("BX_CONFIG_DEBUG" , if (optimize == .Debug ) "1" else "0" );
595+ // if (target.result.os.tag == .windows) {
596+ // step.root_module.addCMacro("BX_CONFIG_EXCEPTION_HANDLING_USE_WINDOWS_SEH", "0");
597+ // }
598+
599+ step .root_module .addCMacro ("BX_CONFIG_DEBUG" , if (optimize == .Debug ) "0" else "0" ); // FIXME: ZIG bug
584600
585601 switch (target .result .os .tag ) {
586602 .freebsd = > step .addIncludePath (b .path ("libs/bx/include/compat/freebsd" )),
@@ -820,6 +836,7 @@ const spirv_opt_files = .{
820836 spirv_opt_path ++ "source/opcode.cpp" ,
821837 spirv_opt_path ++ "source/operand.cpp" ,
822838 spirv_opt_path ++ "source/to_string.cpp" ,
839+ spirv_opt_path ++ "source/opt/graph.cpp" ,
823840 spirv_opt_path ++ "source/opt/aggressive_dead_code_elim_pass.cpp" ,
824841 spirv_opt_path ++ "source/opt/amd_ext_to_khr.cpp" ,
825842 spirv_opt_path ++ "source/opt/analyze_live_input_pass.cpp" ,
@@ -942,6 +959,7 @@ const spirv_opt_files = .{
942959 spirv_opt_path ++ "source/opt/struct_packing_pass.cpp" ,
943960 spirv_opt_path ++ "source/opt/split_combined_image_sampler_pass.cpp" ,
944961 spirv_opt_path ++ "source/opt/resolve_binding_conflicts_pass.cpp" ,
962+ spirv_opt_path ++ "source/opt/canonicalize_ids_pass.cpp" ,
945963 spirv_opt_path ++ "source/parsed_operand.cpp" ,
946964 spirv_opt_path ++ "source/print.cpp" ,
947965 spirv_opt_path ++ "source/reduce/change_operand_reduction_opportunity.cpp" ,
@@ -1035,4 +1053,5 @@ const spirv_opt_files = .{
10351053 spirv_opt_path ++ "source/val/validate_tensor_layout.cpp" ,
10361054 spirv_opt_path ++ "source/val/validate_tensor.cpp" ,
10371055 spirv_opt_path ++ "source/val/validate_invalid_type.cpp" ,
1056+ spirv_opt_path ++ "source/val/validate_graph.cpp" ,
10381057};
0 commit comments