From fc5540a1c4830753da030a057bfbbee43b92e335 Mon Sep 17 00:00:00 2001 From: "Jeffrey C. Ollie" Date: Sat, 14 Oct 2023 13:04:34 -0500 Subject: [PATCH] add module --- build.zig | 32 ++++++++++---------------------- 1 file changed, 10 insertions(+), 22 deletions(-) diff --git a/build.zig b/build.zig index 80b35b8..09bfa33 100644 --- a/build.zig +++ b/build.zig @@ -1,36 +1,27 @@ const std = @import("std"); -// Although this function looks imperative, note that its job is to -// declaratively construct a build graph that will be executed by an external -// runner. pub fn build(b: *std.Build) void { - // Standard target options allows the person running `zig build` to choose - // what target to build for. Here we do not override the defaults, which - // means any target is allowed, and the default is native. Other options - // for restricting supported target set are available. const target = b.standardTargetOptions(.{}); - - // Standard optimization options allow the person running `zig build` to select - // between Debug, ReleaseSafe, ReleaseFast, and ReleaseSmall. Here we do not - // set a preferred release mode, allowing the user to decide how to optimize. const optimize = b.standardOptimizeOption(.{}); + var module = b.createModule( + .{ + .source_file = .{ + .path = "src/main.zig", + }, + }, + ); + + try b.modules.put(b.dupe("datetime"), module); + const lib = b.addStaticLibrary(.{ .name = "datetime", - // In this case the main source file is merely a path, however, in more - // complicated build scripts, this could be a generated file. .root_source_file = .{ .path = "src/main.zig" }, .target = target, .optimize = optimize, }); - - // This declares intent for the library to be installed into the standard - // location when the user invokes the "install" step (the default step when - // running `zig build`). b.installArtifact(lib); - // Creates a step for unit testing. This only builds the test executable - // but does not run it. const main_tests = b.addTest(.{ .root_source_file = .{ .path = "src/main.zig" }, .target = target, @@ -39,9 +30,6 @@ pub fn build(b: *std.Build) void { const run_main_tests = b.addRunArtifact(main_tests); - // This creates a build step. It will be visible in the `zig build --help` menu, - // and can be selected like this: `zig build test` - // This will evaluate the `test` step rather than the default, which is "install". const test_step = b.step("test", "Run library tests"); test_step.dependOn(&run_main_tests.step); }