diff options
Diffstat (limited to 'src/main.zig')
| -rw-r--r-- | src/main.zig | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/main.zig b/src/main.zig index d58c3525c5..8b5fbba90d 100644 --- a/src/main.zig +++ b/src/main.zig @@ -589,6 +589,10 @@ fn buildOutputType( var linker_bind_global_refs_locally: ?bool = null; var linker_z_nodelete = false; var linker_z_defs = false; + var linker_z_origin = false; + var linker_z_noexecstack = false; + var linker_z_now = false; + var linker_z_relro = false; var linker_tsaware = false; var linker_nxcompat = false; var linker_dynamicbase = false; @@ -1393,6 +1397,14 @@ fn buildOutputType( linker_z_nodelete = true; } else if (mem.eql(u8, z_arg, "defs")) { linker_z_defs = true; + } else if (mem.eql(u8, z_arg, "origin")) { + linker_z_origin = true; + } else if (mem.eql(u8, z_arg, "noexecstack")) { + linker_z_noexecstack = true; + } else if (mem.eql(u8, z_arg, "now")) { + linker_z_now = true; + } else if (mem.eql(u8, z_arg, "relro")) { + linker_z_relro = true; } else { warn("unsupported linker arg: -z {s}", .{z_arg}); } @@ -2077,6 +2089,10 @@ fn buildOutputType( .linker_bind_global_refs_locally = linker_bind_global_refs_locally, .linker_z_nodelete = linker_z_nodelete, .linker_z_defs = linker_z_defs, + .linker_z_origin = linker_z_origin, + .linker_z_noexecstack = linker_z_noexecstack, + .linker_z_now = linker_z_now, + .linker_z_relro = linker_z_relro, .linker_tsaware = linker_tsaware, .linker_nxcompat = linker_nxcompat, .linker_dynamicbase = linker_dynamicbase, |
