diff --git a/build.zig b/build.zig index 704215a27f4..ac93e91674f 100644 --- a/build.zig +++ b/build.zig @@ -64,6 +64,16 @@ pub fn build(b: *std.Build) void { .{ .name = "cli", .module = b.createModule(.{ .root_source_file = b.path("src/cli.zig") }) }, }, ); + + const libroc = b.addStaticLibrary(.{ + .name = "roc", + .root_source_file = b.path("src/lib.zig"), + .target = target, + // don't include a lot of extra symbols + .optimize = .ReleaseSmall, + }); + + b.installArtifact(libroc); } fn add_fuzz_target( diff --git a/src/lib.zig b/src/lib.zig new file mode 100644 index 00000000000..3f3de1664fa --- /dev/null +++ b/src/lib.zig @@ -0,0 +1,11 @@ +const std = @import("std"); +const mem = std.mem; +const Allocator = std.mem.Allocator; + +export fn roc_check(path: *const c_char) i32 { + + // TODO implement `roc check` for libroc + _ = path; + + return 0; +}