aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorIsaac Freund <ifreund@ifreund.xyz>2020-03-29 21:05:34 +0200
committerIsaac Freund <ifreund@ifreund.xyz>2020-03-29 21:05:34 +0200
commit5e84d69237d731149a15d673ef1069fb892d4725 (patch)
tree5bf73788ecf1fdbc57d3f49ea99c3f9c44ad51e9 /src
parentd0bfa7bb01fc89750a913820273d33e482fea6e3 (diff)
downloadriver-5e84d69237d731149a15d673ef1069fb892d4725.tar.gz
river-5e84d69237d731149a15d673ef1069fb892d4725.tar.xz
Add a log utility
Diffstat (limited to 'src')
-rw-r--r--src/log.zig24
-rw-r--r--src/main.zig8
2 files changed, 30 insertions, 2 deletions
diff --git a/src/log.zig b/src/log.zig
new file mode 100644
index 0000000..4d7aae9
--- /dev/null
+++ b/src/log.zig
@@ -0,0 +1,24 @@
+const std = @import("std");
+
+pub const Log = enum {
+ const Self = @This();
+
+ Silent,
+ Error,
+ Info,
+ Debug,
+
+ var verbosity = Self.Error;
+
+ pub fn init(_verbosity: Self) void {
+ verbosity = _verbosity;
+ }
+
+ fn log(level: Self, comptime format: []const u8, args: var) void {
+ if (@enumToInt(level) <= @enumToInt(verbosity)) {
+ // TODO: log the time since start in the same format as wlroots
+ // TODO: use color if logging to a tty
+ std.debug.warn("[{}] " ++ format ++ "\n", .{@tagName(level)} ++ args);
+ }
+ }
+};
diff --git a/src/main.zig b/src/main.zig
index 2bbaf8e..ec9d5ca 100644
--- a/src/main.zig
+++ b/src/main.zig
@@ -1,12 +1,14 @@
const std = @import("std");
const c = @import("c.zig");
+const Log = @import("log.zig").Log;
const Server = @import("server.zig").Server;
pub fn main() !void {
- std.debug.warn("Starting up.\n", .{});
+ Log.init(Log.Debug);
+ c.wlr_log_init(c.enum_wlr_log_importance.WLR_ERROR, null);
- c.wlr_log_init(c.enum_wlr_log_importance.WLR_DEBUG, null);
+ Log.Info.log("Initializing server", .{});
var server: Server = undefined;
try server.init(std.heap.c_allocator);
@@ -14,5 +16,7 @@ pub fn main() !void {
try server.start();
+ Log.Info.log("Running server...", .{});
+
server.run();
}