[git commit future 1/1] librt: provide missing prototypes for mq_timedreceive, mq_timedsend
Khem Raj
raj.khem at gmail.com
Sat Mar 19 18:51:25 UTC 2011
commit: http://git.uclibc.org/uClibc/commit/?id=8c8d9ffe9259661e11a06552c5ef7373b775660c
branch: http://git.uclibc.org/uClibc/commit/?id=refs/heads/future
If ADVANCED_REALTIME is disabled, these prototypes are missing and
librt_hidden_proto() fails.
Makefile.in: added a comment, we build mq_timedreceive/mq_timedsend
on NPTL even if ADVANCED_REALTIME is disabled.
Signed-off-by: Peter S. Mazinger <ps.m at gmx.net>
---
librt/Makefile.in | 1 +
librt/mq_receive.c | 7 ++++++-
librt/mq_send.c | 6 +++++-
3 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/librt/Makefile.in b/librt/Makefile.in
index 7d295d4..97f1ae7 100644
--- a/librt/Makefile.in
+++ b/librt/Makefile.in
@@ -26,6 +26,7 @@ ifeq ($(UCLIBC_HAS_THREADS_NATIVE),y)
librt_CSRC := $(filter-out mq_notify.c timer_create.c timer_delete.c \
timer_getoverr.c timer_gettime.c timer_settime.c, \
$(notdir $(wildcard $(librt_DIR)/*.c)))
+# these should really be guarded by ADVANCED_REALTIME, we use them in mq_send.c/mq_receive.c
librt_SSRC := $(wildcard $(librt_DIR)/*.S)
librt_OBJ := $(patsubst %.c,$(librt_OUT)/%.o,$(librt_CSRC))
librt_OBJ += $(patsubst $(librt_DIR)/%.S,$(librt_OUT)/%.o,$(librt_SSRC))
diff --git a/librt/mq_receive.c b/librt/mq_receive.c
index 26fc451..2be1c1a 100644
--- a/librt/mq_receive.c
+++ b/librt/mq_receive.c
@@ -10,13 +10,18 @@
#include <mqueue.h>
#ifdef __UCLIBC_HAS_THREADS_NATIVE__
+# ifndef __UCLIBC_HAS_ADVANCED_REALTIME__
+extern ssize_t mq_timedreceive(mqd_t mqdes, char *msg_ptr, size_t msg_len,
+ unsigned int *msg_prio,
+ const struct timespec *abs_timeout);
+# endif
librt_hidden_proto(mq_timedreceive)
#else
# define __NR___syscall_mq_timedreceive __NR_mq_timedreceive
static _syscall5(int, __syscall_mq_timedreceive, int, mqdes,
char *, msg_ptr, size_t, msg_len, unsigned int *,
- msg_prio, const void *, abs_timeout);
+ msg_prio, const void *, abs_timeout)
# ifdef __UCLIBC_HAS_ADVANCED_REALTIME__
/*
diff --git a/librt/mq_send.c b/librt/mq_send.c
index 78308d8..5e50d1a 100644
--- a/librt/mq_send.c
+++ b/librt/mq_send.c
@@ -10,13 +10,17 @@
#include <mqueue.h>
#ifdef __UCLIBC_HAS_THREADS_NATIVE__
+# ifndef __UCLIBC_HAS_ADVANCED_REALTIME__
+extern int mq_timedsend(mqd_t mqdes, const char *msg_ptr, size_t msg_len,
+ unsigned int msg_prio, const struct timespec *abs_timeout);
+# endif
librt_hidden_proto(mq_timedsend)
#else
# define __NR___syscall_mq_timedsend __NR_mq_timedsend
static _syscall5(int, __syscall_mq_timedsend, int, mqdes,
const char *, msg_ptr, size_t, msg_len, unsigned int,
- msg_prio, const void *, abs_timeout);
+ msg_prio, const void *, abs_timeout)
# ifdef __UCLIBC_HAS_ADVANCED_REALTIME__
/*
--
1.7.3.4
More information about the uClibc-cvs
mailing list