librt: provide missing prototypes for mq_timedreceive,mq_timedsend

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@gmx.net>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
This commit is contained in:
Peter S. Mazinger
2011-03-23 15:24:46 +01:00
committed by Bernhard Reutner-Fischer
parent b8e6e4064c
commit cfe1298282
3 changed files with 12 additions and 2 deletions

View File

@@ -28,6 +28,7 @@ librt_filter_SRC :=
ifeq ($(UCLIBC_HAS_THREADS_NATIVE),y)
librt_filter_SRC += mq_notify.c timer_create.c timer_delete.c \
timer_getoverr.c timer_gettime.c timer_settime.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)
else
librt_filter_SRC += clock_nanosleep.c clock_getcpuclockid.c clock_gettime.c

View File

@@ -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__
/*

View File

@@ -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__
/*