aboutsummaryrefslogtreecommitdiff
path: root/lib/std
diff options
context:
space:
mode:
authorJakub Konka <kubkon@jakubkonka.com>2022-03-19 16:54:11 +0100
committerJakub Konka <kubkon@jakubkonka.com>2022-03-22 07:06:39 +0100
commit0376fd09bc9f29ceeb83760e32532923e4fe7f98 (patch)
tree2458f38c54fa77f642dc41658f3cf89c7af506ea /lib/std
parent91fd0f42c88f4bea424b5a5c58435a2a98b57a58 (diff)
downloadzig-0376fd09bc9f29ceeb83760e32532923e4fe7f98.tar.gz
zig-0376fd09bc9f29ceeb83760e32532923e4fe7f98.zip
macho: extend CodeSignature to accept entitlements
With this change, we can now bake in entitlements into the binary. Additionally, I see this as the first step towards full code signature support which includes baking in Apple issued certificates for redistribution, etc.
Diffstat (limited to 'lib/std')
-rw-r--r--lib/std/build.zig7
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/std/build.zig b/lib/std/build.zig
index 29a5d80705..f1287c7be5 100644
--- a/lib/std/build.zig
+++ b/lib/std/build.zig
@@ -1570,6 +1570,9 @@ pub const LibExeObjStep = struct {
/// (Darwin) Install name for the dylib
install_name: ?[]const u8 = null,
+ /// (Darwin) Path to entitlements file
+ entitlements: ?[]const u8 = null,
+
/// Position Independent Code
force_pic: ?bool = null,
@@ -2515,6 +2518,10 @@ pub const LibExeObjStep = struct {
}
}
+ if (self.entitlements) |entitlements| {
+ try zig_args.appendSlice(&[_][]const u8{ "--entitlements", entitlements });
+ }
+
if (self.bundle_compiler_rt) |x| {
if (x) {
try zig_args.append("-fcompiler-rt");