Commit 88e0f81eef

Jacob G-W <jacoblevgw@gmail.com>
2021-09-02 21:51:49
plan9: change output executable name
Now object files have the `name.<target char>` Executables are just `name` Libs are `name.a`
1 parent c2f585e
Changed files (1)
lib
lib/std/zig.zig
@@ -176,9 +176,11 @@ pub fn binNameAlloc(allocator: *std.mem.Allocator, options: BinNameOptions) erro
         .spirv => return std.fmt.allocPrint(allocator, "{s}.spv", .{root_name}),
         .hex => return std.fmt.allocPrint(allocator, "{s}.ihex", .{root_name}),
         .raw => return std.fmt.allocPrint(allocator, "{s}.bin", .{root_name}),
-        .plan9 => return std.fmt.allocPrint(allocator, "{s}{s}", .{
-            root_name, ofmt.fileExt(target.cpu.arch),
-        }),
+        .plan9 => switch (options.output_mode) {
+            .Exe => return allocator.dupe(u8, root_name),
+            .Obj => return std.fmt.allocPrint(allocator, "{s}{s}", .{ root_name, ofmt.fileExt(target.cpu.arch) }),
+            .Lib => return std.fmt.allocPrint(allocator, "{s}{s}.a", .{ target.libPrefix(), root_name }),
+        },
     }
 }