[solved] How to use sigemptyset, sigaddset and alike?

Standart library contains wrappers for sigprocmask() function and for sigset_t type,
but I could not find wrappers for macro group from man sigsetops in zig files.
How can I use these C macros in Zig program?

partially solved

    pub fn getSignalId(signo: u6) !i32 {
        var sset: SigSet = undefined;

        // block the signal
        std.os.linux.sigemptyset(&sset); // error :(
        std.os.linux.sigaddset(&sset, signo);
        sigProcMask(SIG.BLOCK, &sset, null);

        return signalFd(-1, &sset, signo);
    }
$ /opt/zig/zig build-exe 2-test.zig 
event-sources.zig:93:21: error: struct 'os.linux.os.linux' has no member named 'sigemptyset'
        std.os.linux.sigemptyset(&sset);
        ~~~~~~~~~~~~^~~~~~~~~~~~
/opt/zig/lib/std/os/linux.zig:1:1: note: struct declared here
$ grep -rI "fn sigaddset" /opt/zig/lib/
/opt/zig/lib/std/os/linux.zig:pub fn sigaddset(set: *sigset_t, sig: u6) void {
/opt/zig/lib/std/c/darwin.zig:pub fn sigaddset(set: *sigset_t, signo: u5) void {

so we have sigaddset, but there is no sigemptyset.

solved

    pub fn getSignalId(signo: u6) !i32 {
        var sset: SigSet = std.os.empty_sigset;

        // block the signal
        std.os.linux.sigaddset(&sset, signo);
        sigProcMask(SIG.BLOCK, &sset, null);

        return signalFd(-1, &sset, signo);
    }

see sigemptyset is missing in lib/std/os/linux.zig · Issue #12859 · ziglang/zig · GitHub