Skip to content

Commit 046973a

Browse files
committed
Add step to check if examples compile
1 parent 20ee62a commit 046973a

File tree

1 file changed

+53
-2
lines changed

1 file changed

+53
-2
lines changed

build.zig

Lines changed: 53 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,44 @@ const test_scripts = [_][]const u8{
8787
"test/suite-vm.janet",
8888
};
8989

90+
const example_scripts = [_][]const u8{
91+
"examples/3sum.janet",
92+
"examples/abstract-unix-socket.janet",
93+
"examples/assembly.janet",
94+
"examples/async-execute.janet",
95+
"examples/channel.janet",
96+
"examples/chatserver.janet",
97+
"examples/colors.janet",
98+
"examples/debug.janet",
99+
"examples/debugger.janet",
100+
"examples/echoclient.janet",
101+
"examples/echoserve.janet",
102+
"examples/error.janet",
103+
"examples/evlocks.janet",
104+
"examples/evsleep.janet",
105+
"examples/fizzbuzz.janet",
106+
"examples/hello.janet",
107+
"examples/iterate-fiber.janet",
108+
"examples/lazyseqs.janet",
109+
"examples/life.janet",
110+
"examples/lineloop.janet",
111+
"examples/marshal-stress.janet",
112+
"examples/maxtriangle.janet",
113+
"examples/posix-exec.janet",
114+
"examples/primes.janet",
115+
"examples/rtest.janet",
116+
"examples/select.janet",
117+
"examples/select2.janet",
118+
"examples/sigaction.janet",
119+
"examples/tcpclient.janet",
120+
"examples/tcpserver.janet",
121+
"examples/threaded-channels.janet",
122+
"examples/udpclient.janet",
123+
"examples/udpserver.janet",
124+
"examples/urlloader.janet",
125+
"examples/weak-tables.janet",
126+
};
127+
90128
pub fn build(b: *std.Build) void {
91129
const target = b.standardTargetOptions(.{});
92130
const optimize = b.standardOptimizeOption(.{});
@@ -215,12 +253,25 @@ pub fn build(b: *std.Build) void {
215253
run_cmd.addArgs(args);
216254
}
217255

218-
const test_step = b.step("test", "Run tests");
256+
const run_tests_step = b.step("run-tests", "Run Janet test suite scripts");
219257
for (test_scripts) |test_script| {
220258
const run_test_cmd = b.addRunArtifact(janet_exe);
221259
run_test_cmd.addFileArg(b.path(test_script));
222260
run_test_cmd.expectExitCode(0);
223261
run_test_cmd.stdio = .inherit;
224-
test_step.dependOn(&run_test_cmd.step);
262+
run_tests_step.dependOn(&run_test_cmd.step);
225263
}
264+
265+
const check_examples_step = b.step("examples", "Check if example scripts compile");
266+
for (example_scripts) |example_script| {
267+
const check_example_cmd = b.addRunArtifact(janet_exe);
268+
check_example_cmd.addArg("-k");
269+
check_example_cmd.addFileArg(b.path(example_script));
270+
check_example_cmd.stdio = .inherit;
271+
check_examples_step.dependOn(&check_example_cmd.step);
272+
}
273+
274+
const test_step = b.step("test", "Runs the Janet tests and checks the examples");
275+
test_step.dependOn(run_tests_step);
276+
test_step.dependOn(check_examples_step);
226277
}

0 commit comments

Comments
 (0)