commit e12a72db92164dab46023dad03d10f5047477d95 (tree)
parent c5bd19e45edfa2989909f825269c462d1bf641b7
Author: Elaine Gibson <ypsvlq@gmail.com>
Date: Wed, 20 Mar 2024 22:14:12 +0000
main: set subsystem version from target windows version
Diffstat:
1 file changed, 10 insertions(+), 0 deletions(-)
diff --git a/src/main.zig b/src/main.zig
@@ -2799,6 +2799,16 @@ fn buildOutputType(
const target = main_mod.resolved_target.result;
+ if (target.os.tag == .windows and major_subsystem_version == null and minor_subsystem_version == null) {
+ major_subsystem_version, minor_subsystem_version = switch (target.os.version_range.windows.min) {
+ .nt4 => .{ 4, 0 },
+ .win2k => .{ 5, 0 },
+ .xp => if (target.cpu.arch == .x86_64) .{ 5, 2 } else .{ 5, 1 },
+ .ws2003 => .{ 5, 2 },
+ else => .{ null, null },
+ };
+ }
+
if (target.ofmt != .coff) {
if (manifest_file != null) {
fatal("manifest file is not allowed unless the target object format is coff (Windows/UEFI)", .{});