[Buildroot] [git commit] empty: fix compile with toolchain w/o threads
From: Thomas Petazzoni <hidden>
Date: 2015-08-08 10:45:51
Subsystem:
the rest · Maintainer:
Linus Torvalds
commit: http://git.buildroot.net/buildroot/commit/?id=9dd523c48f8c9e250da8694308fe24e6bab2fdc8 branch: http://git.buildroot.net/buildroot/commit/?id=refs/heads/master As found via autobuilders and discussed on the list, the ifdef is wrong, as empty uses SysV semaphores and not POSIX semaphores. Tested with glibc/uclibc-ng builds. And with uclibc-ng without threads. Signed-off-by: Waldemar Brodkorb <redacted> Signed-off-by: Thomas Petazzoni <redacted> --- package/empty/0002-fix-non-thread-build.patch | 49 +++++++++++++++++++++++++ 1 files changed, 49 insertions(+), 0 deletions(-)
diff --git a/package/empty/0002-fix-non-thread-build.patch b/package/empty/0002-fix-non-thread-build.patch
new file mode 100644
index 0000000..a7e8d90
--- /dev/null
+++ b/package/empty/0002-fix-non-thread-build.patch@@ -0,0 +1,49 @@ +empty uses SysV semaphores, so the ifdef is wrong here. + +Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> + +--- empty-0.6.19b.orig/empty.c 2012-09-19 13:24:05.000000000 +0200 ++++ empty-0.6.19b/empty.c 2015-07-09 02:00:09.000000000 +0200 +@@ -179,25 +179,23 @@ int main (int argc, char *argv[]) { + 2 - unknown */ + + /* semaphores */ +-#ifdef _POSIX_SEMAPHORES +- #if defined(__linux__) && defined(__GNU_LIBRARY__) && !defined(_SEM_SEMUN_UNDEFINED) +- /* union semun is defined by including <sys/sem.h> */ +- #else +- union semun { +- int val; +- struct semid_ds *buf; +- #ifdef __SVR4 +- ushort_t *array; +- #endif +- #ifdef __hpux__ +- ushort *array; +- #endif +- #ifdef __linux__ +- unsigned short *array; +- struct seminfo *__buf; /* buffer for IPC_INFO */ +- #endif +- }; +- #endif ++#if defined(__linux__) && defined(__GNU_LIBRARY__) && !defined(_SEM_SEMUN_UNDEFINED) ++ /* union semun is defined by including <sys/sem.h> */ ++#else ++ union semun { ++ int val; ++ struct semid_ds *buf; ++ #ifdef __SVR4 ++ ushort_t *array; ++ #endif ++ #ifdef __hpux__ ++ ushort *array; ++ #endif ++ #ifdef __linux__ ++ unsigned short *array; ++ struct seminfo *__buf; /* buffer for IPC_INFO */ ++ #endif ++ }; + #endif + union semun semu; +