From a368c0d099a4eb43e9794d3c458a051e89a6d82e Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Mon, 21 Dec 2020 18:38:49 -0700 Subject: [PATCH] std: add Darwin and FreeBSD sem_t bits --- lib/std/c/darwin.zig | 1 + lib/std/c/freebsd.zig | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/lib/std/c/darwin.zig b/lib/std/c/darwin.zig index 635e0f97d4..9c5056d9c4 100644 --- a/lib/std/c/darwin.zig +++ b/lib/std/c/darwin.zig @@ -177,6 +177,7 @@ pub const pthread_cond_t = extern struct { __sig: c_long = 0x3CB0B1BB, __opaque: [__PTHREAD_COND_SIZE__]u8 = [_]u8{0} ** __PTHREAD_COND_SIZE__, }; +pub const sem_t = c_int; const __PTHREAD_MUTEX_SIZE__ = if (@sizeOf(usize) == 8) 56 else 40; const __PTHREAD_COND_SIZE__ = if (@sizeOf(usize) == 8) 40 else 24; diff --git a/lib/std/c/freebsd.zig b/lib/std/c/freebsd.zig index 8fa78b0d6f..4ca8234110 100644 --- a/lib/std/c/freebsd.zig +++ b/lib/std/c/freebsd.zig @@ -47,6 +47,15 @@ pub const pthread_attr_t = extern struct { __align: c_long, }; +pub const sem_t = extern struct { + _magic: u32, + _kern: extern struct { + _count: u32, + _flags: u32, + }, + _padding: u32, +}; + pub const EAI = extern enum(c_int) { /// address family for hostname not supported ADDRFAMILY = 1,