| ... | @@ -152,6 +152,7 @@ pub fn build(b: *std.Build) !void { | ... | @@ -152,6 +152,7 @@ pub fn build(b: *std.Build) !void { |
| 152 | const link_libc = b.option(bool, "force-link-libc", "Force self-hosted compiler to link libc") orelse (enable_llvm or only_c); | 152 | const link_libc = b.option(bool, "force-link-libc", "Force self-hosted compiler to link libc") orelse (enable_llvm or only_c); |
| 153 | const sanitize_thread = b.option(bool, "sanitize-thread", "Enable thread-sanitization") orelse false; | 153 | const sanitize_thread = b.option(bool, "sanitize-thread", "Enable thread-sanitization") orelse false; |
| 154 | const strip = b.option(bool, "strip", "Omit debug information"); | 154 | const strip = b.option(bool, "strip", "Omit debug information"); |
| | 155 | const pie = b.option(bool, "pie", "Produce a Position Independent Executable"); |
| 155 | const value_tracing = b.option(bool, "value-tracing", "Enable extra state tracking to help troubleshoot bugs in the compiler (using the std.debug.Trace API)") orelse false; | 156 | const value_tracing = b.option(bool, "value-tracing", "Enable extra state tracking to help troubleshoot bugs in the compiler (using the std.debug.Trace API)") orelse false; |
| 156 | | 157 | |
| 157 | const mem_leak_frames: u32 = b.option(u32, "mem-leak-frames", "How many stack frames to print when a memory leak occurs. Tests get 2x this amount.") orelse blk: { | 158 | const mem_leak_frames: u32 = b.option(u32, "mem-leak-frames", "How many stack frames to print when a memory leak occurs. Tests get 2x this amount.") orelse blk: { |
| ... | @@ -162,6 +163,7 @@ pub fn build(b: *std.Build) !void { | ... | @@ -162,6 +163,7 @@ pub fn build(b: *std.Build) !void { |
| 162 | | 163 | |
| 163 | const exe = addCompilerStep(b, optimize, target); | 164 | const exe = addCompilerStep(b, optimize, target); |
| 164 | exe.strip = strip; | 165 | exe.strip = strip; |
| | 166 | exe.pie = pie; |
| 165 | exe.sanitize_thread = sanitize_thread; | 167 | exe.sanitize_thread = sanitize_thread; |
| 166 | exe.build_id = b.option(bool, "build-id", "Include a build id note") orelse false; | 168 | exe.build_id = b.option(bool, "build-id", "Include a build id note") orelse false; |
| 167 | exe.install(); | 169 | exe.install(); |