How to silence the compiler and only show output produced by my program?

Question

Is there any way to stop the compiler from outputting any of its standard messages about the compilation result? So that if I run my program at compile time with #run, the only output I see is the one produced by the program.

Example 1

It doesn’t output anything if there’s no target:

#run {
    set_build_options_dc(.{do_output=false});
    write_string("Hello world\n");
}

This only shows “Hello world”.
(do_output refers to outputting an executable, not console output)


Example 2

#import "Compiler";

w := compiler_create_workspace();
options := get_build_options(w);
options.output_executable_name = "whatever_name";
options.text_output_flags = 0; //this line disables most of the text output from the compiler
set_build_options(options, w);

The only thing the compiler outputs when we add that line to the metaprogram is :
Creating library D:/Projects/jai/jai_game/.build/jai_game.lib and object D:/Projects/jai/jai_game/.build/jai_game.exp

1 Like