summaryrefslogtreecommitdiff
path: root/libc-test
diff options
context:
space:
mode:
authorAlan Somers <asomers@gmail.com>2017-12-13 20:49:17 -0700
committerAlan Somers <asomers@gmail.com>2017-12-16 10:22:11 -0700
commit831ca990d2a55feb45aeaefc639298b7e181a6fa (patch)
treea4754714b3e88408db04c14d8258d5f3b676cb75 /libc-test
parent9d6115ac1e1b750329646d6fc157b7611e1c717d (diff)
downloadrust-libc-831ca990d2a55feb45aeaefc639298b7e181a6fa.tar.gz
POSIX mqueue bindings for the BSDs
Note that OpenBSD and OSX do not support POSIX message queues.
Diffstat (limited to 'libc-test')
-rw-r--r--libc-test/build.rs17
1 files changed, 16 insertions, 1 deletions
diff --git a/libc-test/build.rs b/libc-test/build.rs
index edf94d715e..d6bc8814f5 100644
--- a/libc-test/build.rs
+++ b/libc-test/build.rs
@@ -268,6 +268,7 @@ fn main() {
}
if freebsd {
+ cfg.header("mqueue.h");
cfg.header("pthread_np.h");
cfg.header("sched.h");
cfg.header("ufs/ufs/quota.h");
@@ -278,6 +279,7 @@ fn main() {
}
if netbsd {
+ cfg.header("mqueue.h");
cfg.header("ufs/ufs/quota.h");
cfg.header("ufs/ufs/quota1.h");
cfg.header("sys/ioctl_compat.h");
@@ -293,6 +295,7 @@ fn main() {
}
if dragonfly {
+ cfg.header("mqueue.h");
cfg.header("ufs/ufs/quota.h");
cfg.header("pthread_np.h");
cfg.header("sys/ioctl_compat.h");
@@ -424,7 +427,9 @@ fn main() {
"uuid_t" if dragonfly => true,
n if n.starts_with("pthread") => true,
// sem_t is a struct or pointer
- "sem_t" if openbsd || freebsd || dragonfly || rumprun => true,
+ "sem_t" if openbsd || freebsd || dragonfly || netbsd => true,
+ // mqd_t is a pointer on FreeBSD and DragonFly
+ "mqd_t" if freebsd || dragonfly => true,
// windows-isms
n if n.starts_with("P") => true,
@@ -590,6 +595,16 @@ fn main() {
"shm_open" |
"shm_unlink" |
"syscall" |
+ "mq_open" |
+ "mq_close" |
+ "mq_getattr" |
+ "mq_notify" |
+ "mq_receive" |
+ "mq_send" |
+ "mq_setattr" |
+ "mq_timedreceive" |
+ "mq_timedsend" |
+ "mq_unlink" |
"ptrace" |
"sigaltstack" if rumprun => true,