Commit fdd32a2257

Alex Rønne Petersen <alex@alexrp.com>
2025-08-29 00:18:12
std.Target: add managarm OS tag
1 parent 464eef3
Changed files (3)
lib
compiler
aro
std
src
codegen
lib/compiler/aro/aro/target.zig
@@ -667,6 +667,7 @@ pub fn toLLVMTriple(target: std.Target, buf: []u8) []const u8 {
         .driverkit => "driverkit",
         .visionos => "xros",
         .serenity => "serenity",
+        .managarm => "managarm",
         .opencl,
         .opengl,
         .vulkan,
lib/std/Target.zig
@@ -22,6 +22,7 @@ pub const Os = struct {
         contiki,
         fuchsia,
         hermit,
+        managarm,
 
         aix,
         haiku,
@@ -158,6 +159,8 @@ pub const Os = struct {
                 .freestanding,
                 .other,
 
+                .managarm,
+
                 .haiku,
                 .plan9,
                 .serenity,
@@ -388,6 +391,8 @@ pub const Os = struct {
                 .freestanding,
                 .other,
 
+                .managarm,
+
                 .haiku,
                 .plan9,
                 .serenity,
@@ -895,6 +900,7 @@ pub const Abi = enum {
             .contiki,
             .fuchsia,
             .hermit,
+            .managarm,
             .plan9,
             .serenity,
             .zos,
@@ -2094,6 +2100,7 @@ pub fn requiresLibC(target: *const Target) bool {
         .netbsd,
         .freestanding,
         .fuchsia,
+        .managarm,
         .ps3,
         .zos,
         .rtems,
@@ -2206,6 +2213,7 @@ pub const DynamicLinker = struct {
 
             .contiki,
             .hermit,
+            .managarm, // Needs to be double-checked.
 
             .aix,
             .plan9,
@@ -2621,6 +2629,8 @@ pub const DynamicLinker = struct {
 
             // TODO go over each item in this list and either move it to the above list, or
             // implement the standard dynamic linker path code for it.
+            .managarm,
+
             .ps3,
             .ps4,
             .ps5,
@@ -3148,6 +3158,7 @@ pub fn cTypeBitSize(target: *const Target, c_type: CType) u16 {
 
         .ps3,
         .contiki,
+        .managarm,
         .opengl,
         => @panic("specify the C integer and float type sizes for this OS"),
     }
src/codegen/llvm.zig
@@ -230,6 +230,7 @@ pub fn targetTriple(allocator: Allocator, target: *const std.Target) ![]const u8
         .visionos => "xros",
         .serenity => "serenity",
         .vulkan => "vulkan",
+        .managarm => "managarm",
 
         .@"3ds",
         .opengl,