diff options
Diffstat (limited to 'librt/rt_stubs.c')
-rw-r--r-- | librt/rt_stubs.c | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/librt/rt_stubs.c b/librt/rt_stubs.c new file mode 100644 index 000000000..b2c09dea9 --- /dev/null +++ b/librt/rt_stubs.c @@ -0,0 +1,39 @@ +/* + * system call not available stub + * based on libc's stubs.c + * + * Copyright (C) 2009 Analog Devices Inc. + * + * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball. + */ + +#include <errno.h> +#include <sys/syscall.h> + +#ifdef __UCLIBC_HAS_STUBS__ + +static int rt_enosys_stub(void) +{ + __set_errno(ENOSYS); + return -1; +} + +#define make_stub(stub) \ + link_warning(stub, #stub ": this function is not implemented") \ + strong_alias(rt_enosys_stub, stub) + +#ifndef __NR_mq_timedreceive +make_stub(mq_receive) +# ifdef __UCLIBC_HAS_ADVANCED_REALTIME__ +make_stub(mq_timedreceive) +# endif +#endif + +#ifndef __NR_mq_timedsend +make_stub(mq_send) +# ifdef __UCLIBC_HAS_ADVANCED_REALTIME__ +make_stub(mq_timedsend) +# endif +#endif + +#endif |