From d5d5f7f06397d73f497d352f2f38b1a53d932b0d Mon Sep 17 00:00:00 2001 From: Uko Kokņevičs Date: Mon, 19 Feb 2024 23:38:33 +0200 Subject: Big update to modern zig --- src/main.zig | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/main.zig') diff --git a/src/main.zig b/src/main.zig index 7a3f007..fd1c304 100644 --- a/src/main.zig +++ b/src/main.zig @@ -1,4 +1,5 @@ pub const Buffer = @import("Buffer.zig"); +pub const c = @import("c.zig"); pub const conf = @import("es-config"); pub const Config = @import("Config.zig"); pub const Editor = @import("Editor.zig"); @@ -13,6 +14,7 @@ pub const search = @import("search.zig").search; pub const StringBuilder = @import("StringBuilder.zig"); pub const Syntax = @import("Syntax.zig"); +const builtin = @import("builtin"); const std = @import("std"); const Allocator = std.mem.Allocator; @@ -21,6 +23,12 @@ const GPA = std.heap.GeneralPurposeAllocator(.{}); var log_file: ?File = null; +// TODO[zigbug]: Why isn't getpid defined for Darwin? +const getpid = switch (builtin.os.tag) { + .macos, .ios, .tvos, .watchos => c.getpid, + else => std.os.system.getpid, +}; + pub fn log( comptime level: std.log.Level, comptime scope: @TypeOf(.EnumLiteral), @@ -45,7 +53,7 @@ pub fn main() !void { const log_file_name = try std.fmt.allocPrint( allocator, "/tmp/es.{}.log", - .{std.os.linux.getpid()}, + .{getpid()}, ); defer { std.log.info("Logs in {s}", .{log_file_name}); -- cgit v1.2.3