From c8511d8c928dc1c1dc5dfed4d9627fcfc501195f Mon Sep 17 00:00:00 2001 From: torque Date: Sun, 7 Jul 2024 15:34:03 -0700 Subject: [PATCH] build: embed udev rules in the binary It is nice if the program can emit its own udev file. --- build.zig | 6 ++++++ deps/labjack/exodriver/udev_rules.zig | 2 ++ src/main.zig | 2 ++ 3 files changed, 10 insertions(+) create mode 100644 deps/labjack/exodriver/udev_rules.zig diff --git a/build.zig b/build.zig index c025869..a504c02 100644 --- a/build.zig +++ b/build.zig @@ -22,6 +22,12 @@ pub fn build(b: *std.Build) void { .{ .target = target, .optimize = optimize, .use_udev = use_udev }, ); exe.linkLibrary(ljacklm_dep.artifact("ljacklm")); + exe.root_module.addImport( + "udev_rules", + b.addModule("udev_rules", .{ + .root_source_file = b.path("deps/labjack/exodriver/udev_rules.zig"), + }), + ); b.installArtifact(exe); } diff --git a/deps/labjack/exodriver/udev_rules.zig b/deps/labjack/exodriver/udev_rules.zig new file mode 100644 index 0000000..41ad38d --- /dev/null +++ b/deps/labjack/exodriver/udev_rules.zig @@ -0,0 +1,2 @@ +pub const rules_filename = "90-labjack.rules"; +pub const rules = @embedFile(rules_filename); diff --git a/src/main.zig b/src/main.zig index 305035d..d14a265 100644 --- a/src/main.zig +++ b/src/main.zig @@ -4,6 +4,8 @@ const Config = @import("./Config.zig"); const lj = @import("./labjack.zig"); const RotCtl = @import("./RotCtl.zig"); +const udev = @import("udev_rules"); + const log = std.log.scoped(.main); pub fn main() !u8 {