From 917dcebb26ec492f276cdc3b55867aa90e01fa12 Mon Sep 17 00:00:00 2001 From: Romain Naour Date: Sat, 5 Nov 2016 19:09:00 +0100 Subject: [PATCH] bfin: remove inline keyword Xenomai user space tools fail to build for bfin target since it's provide it's own pthread_atfork(), shm_open() and shm_unlink() definition using the inline keyword and weak attribute. With gcc 5+ the weak attribute is discarded by the inline keyword, so each symbol are global and are redefined several time while linking. Fixes: http://autobuild.buildroot.net/results/0c2/0c2e5eb4edd4f9427f61d3c9b67a12a7a0e24140 Signed-off-by: Romain Naour --- include/asm-blackfin/syscall.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/include/asm-blackfin/syscall.h b/include/asm-blackfin/syscall.h index 9eda8b9aa..b5728b553 100644 --- a/include/asm-blackfin/syscall.h +++ b/include/asm-blackfin/syscall.h @@ -132,9 +132,9 @@ static inline int __xn_interrupted_p(struct pt_regs *regs) #define XENOMAI_SKINCALL5(id,op,a1,a2,a3,a4,a5) XENOMAI_DO_SYSCALL(5,id,op,a1,a2,a3,a4,a5) /* uClibc does not provide pthread_atfork() for this arch; provide it - here. Note: let the compiler decides whether it wants to actually - inline this routine, i.e. do not force always_inline. */ -inline __attribute__((weak)) int pthread_atfork(void (*prepare)(void), + here. +*/ +__attribute__((weak)) int pthread_atfork(void (*prepare)(void), void (*parent)(void), void (*child)(void)) { @@ -143,7 +143,7 @@ inline __attribute__((weak)) int pthread_atfork(void (*prepare)(void), #include -inline __attribute__((weak)) int shm_open(const char *name, +__attribute__((weak)) int shm_open(const char *name, int oflag, mode_t mode) { @@ -151,7 +151,7 @@ inline __attribute__((weak)) int shm_open(const char *name, return -1; } -inline __attribute__((weak)) int shm_unlink(const char *name) +__attribute__((weak)) int shm_unlink(const char *name) { errno = ENOSYS; return -1; -- 2.11.4.GIT