commit 3f693cf5d51fbc53d32203e5a5faf69d4a49a099 (tree)
parent bf316e550671cc71eb498b3cf799493627bb0fdc
Author: Andrew Kelley <andrew@ziglang.org>
Date: Tue, 6 Dec 2022 12:46:59 -0700
CLI: quality of life enhancement for windows CBE behavior tests
When testing with
```
stage4/bin/zig test ../test/behavior.zig -I../test -ofmt=c -target x86_64-windows
```
previously, one would see this message:
```
error: lld-link: subsystem must be defined
```
Now, `--subsystem console` as well as `-lntdll -lkernel32` are on the
`zig run` line, producing a binary.
Diffstat:
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/src/main.zig b/src/main.zig
@@ -3059,7 +3059,15 @@ fn buildOutputType(
try test_exec_args.appendSlice(&.{ "-I", p });
}
- if (link_libc) try test_exec_args.append("-lc");
+ if (link_libc) {
+ try test_exec_args.append("-lc");
+ } else if (target_info.target.os.tag == .windows) {
+ try test_exec_args.appendSlice(&.{
+ "--subsystem", "console",
+ "-lkernel32", "-lntdll",
+ });
+ }
+
if (!mem.eql(u8, target_arch_os_abi, "native")) {
try test_exec_args.append("-target");
try test_exec_args.append(target_arch_os_abi);