commit 10ad3253de4dad4675fbd84da874f2cd73cd2deb (tree)
parent 24b6dcc507c6598351ab817e03027cc60f220f19
Author: Andrew Kelley <superjoe30@gmail.com>
Date: Mon, 18 Sep 2017 18:01:58 -0400
std.build: catch mistake of setting output path to build dir
closes #464
Diffstat:
1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/std/build.zig b/std/build.zig
@@ -937,8 +937,13 @@ pub const LibExeObjStep = struct {
self.build_mode = mode;
}
- pub fn setOutputPath(self: &LibExeObjStep, value: []const u8) {
- self.output_path = value;
+ pub fn setOutputPath(self: &LibExeObjStep, file_path: []const u8) {
+ self.output_path = file_path;
+
+ // catch a common mistake
+ if (mem.eql(u8, self.builder.pathFromRoot(file_path), self.builder.pathFromRoot("."))) {
+ debug.panic("setOutputPath wants a file path, not a directory\n");
+ }
}
pub fn getOutputPath(self: &LibExeObjStep) -> []const u8 {
@@ -949,8 +954,13 @@ pub const LibExeObjStep = struct {
}
}
- pub fn setOutputHPath(self: &LibExeObjStep, value: []const u8) {
- self.output_h_path = value;
+ pub fn setOutputHPath(self: &LibExeObjStep, file_path: []const u8) {
+ self.output_h_path = file_path;
+
+ // catch a common mistake
+ if (mem.eql(u8, self.builder.pathFromRoot(file_path), self.builder.pathFromRoot("."))) {
+ debug.panic("setOutputHPath wants a file path, not a directory\n");
+ }
}
pub fn getOutputHPath(self: &LibExeObjStep) -> []const u8 {