summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--meson.build4
-rw-r--r--src/basic/missing_syscall.h6
2 files changed, 10 insertions, 0 deletions
diff --git a/meson.build b/meson.build
index edde42ea74..3085af49fd 100644
--- a/meson.build
+++ b/meson.build
@@ -525,6 +525,10 @@ foreach ident : [
#include <unistd.h>
#include <signal.h>
#include <sys/wait.h>'''],
+ ['rt_sigqueueinfo', '''#include <stdlib.h>
+ #include <unistd.h>
+ #include <signal.h>
+ #include <sys/wait.h>'''],
]
have = cc.has_function(ident[0], prefix : ident[1], args : '-D_GNU_SOURCE')
diff --git a/src/basic/missing_syscall.h b/src/basic/missing_syscall.h
index bea7be699d..cbda3f7c60 100644
--- a/src/basic/missing_syscall.h
+++ b/src/basic/missing_syscall.h
@@ -562,3 +562,9 @@ static inline int pidfd_send_signal(int fd, int sig, siginfo_t *info, unsigned f
#endif
}
#endif
+
+#if !HAVE_RT_SIGQUEUEINFO
+static inline int rt_sigqueueinfo(pid_t tgid, int sig, siginfo_t *info) {
+ return syscall(__NR_rt_sigqueueinfo, tgid, sig, info);
+}
+#endif