diff options
| author | Isaac Freund <ifreund@ifreund.xyz> | 2020-06-15 14:22:09 +0200 |
|---|---|---|
| committer | Isaac Freund <ifreund@ifreund.xyz> | 2020-06-15 14:22:09 +0200 |
| commit | ecc000b1eccb85a32e1044bbe9c1f11cb05388d2 (patch) | |
| tree | 67ebf3c709db81e068be7f88bea180ae0262eb54 | |
| parent | b88443d62c935aa82230b59a6ef5a369373d0971 (diff) | |
| download | river-ecc000b1eccb85a32e1044bbe9c1f11cb05388d2.tar.gz river-ecc000b1eccb85a32e1044bbe9c1f11cb05388d2.tar.xz | |
build: allow disabling man-pages if scdoc is found
| -rw-r--r-- | build.zig | 17 |
1 files changed, 8 insertions, 9 deletions
@@ -21,7 +21,13 @@ pub fn build(b: *std.build.Builder) !void { bool, "man-pages", "Set to true to build man pages. Requires scdoc. Defaults to true if scdoc is found.", - ) orelse false; + ) orelse scdoc_found: { + _ = b.findProgram(&[_][]const u8{"scdoc"}, &[_][]const u8{}) catch |err| switch (err) { + error.FileNotFound => break :scdoc_found false, + else => return err, + }; + break :scdoc_found true; + }; const examples = b.option( bool, @@ -62,14 +68,7 @@ pub fn build(b: *std.build.Builder) !void { riverctl.install(); } - const scdoc = b.findProgram(&[_][]const u8{"scdoc"}, &[_][]const u8{}) catch |err| switch (err) { - error.FileNotFound => if (man_pages) { - @panic("scdoc not found, cannot generate man pages"); - } else null, - else => return err, - }; - - if (scdoc != null) { + if (man_pages) { const scdoc_step = ScdocStep.create(b); try scdoc_step.install(); } |
