From patchwork Wed May 25 16:52:08 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [1/1] uclibc: Upgrade to 0.9.32-rc3 Date: Wed, 25 May 2011 16:52:08 -0000 From: Phil Blundell X-Patchwork-Id: 4769 Message-Id: <1306342328.2525.249.camel@phil-desktop> To: Patches and discussions about the oe-core layer On Tue, 2011-05-24 at 11:33 +0100, Phil Blundell wrote: > On Sun, 2011-05-22 at 16:04 -0700, Khem Raj wrote: > > Bring in the uclibc recipes from meta-oe they have been well > > tested by now. > > This doesn't build for me on i586: > > | ccache i586-oe-linux-uclibc-gcc -march=i586 --sysroot=/home/pb/oe/build-meta-uclibc/tmp-uclibc-uclibc/sysroots/qemux86-tcbootstrap -c libc/sysdeps/linux/common/execve.c -o libc/sysdeps/linux/common/execve.o -include ./include/libc-symbols.h -Wall -Wstrict-prototypes -Wstrict-aliasing -Wformat=2 -Wmissing-noreturn -Wmissing-format-attribute -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wnonnull -Wold-style-declaration -Wold-style-definition -Wshadow -Wundef -funsigned-char -fno-builtin -fno-asm -std=gnu99 -ffunction-sections -fdata-sections -m32 -march=pentium4 -fno-stack-protector -nostdinc -I./include -I./include -I. -I./libc/sysdeps/linux -I./libc/sysdeps/linux/i386 -O2 -pipe -g -feliminate-unused-debug-types -Os -funit-at-a-time -fmerge-all-constants -fstrict-aliasing -fno-tree-loop-optimize -fno-tree-dominator-opts -fno-strength-reduce -fomit-frame-pointer -mpreferred-stack-boundary=4 -falign-functions=1 -falign-jumps=1 -falign-labels=1 -falign-loops=1 -DHAVE_FORCED_UNWIND -I./libpthread/nptl -I./libpthread/nptl -I./libpthread/nptl/sysdeps/unix/sysv/linux/i386/i686 -I./libpthread/nptl/sysdeps/unix/sysv/linux/i386 -I./libpthread/nptl/sysdeps/i386 -I./libpthread/nptl/sysdeps/i386 -I./libpthread/nptl/sysdeps/unix/sysv/linux -I./libpthread/nptl/sysdeps/unix/sysv/linux -I./libpthread/nptl/sysdeps/pthread -I./libpthread/nptl/sysdeps/pthread/bits -I./libpthread/nptl/sysdeps/generic -I./ldso/ldso/i386 -I./ldso/include -I./libc/sysdeps/linux/common -I/home/pb/oe/build-meta-uclibc/tmp-uclibc-uclibc/sysroots/qemux86/include/ -isystem /home/pb/oe/build-meta-uclibc/tmp-uclibc-uclibc/sysroots/x86_64-linux/lib/i586-oe-linux-uclibc.gcc-cross-intermediate/gcc/i586-oe-linux-uclibc/4.6.0/include-fixed -isystem /home/pb/oe/build-meta-uclibc/tmp-uclibc-uclibc/sysroots/x86_64-linux/lib/i586-oe-linux-uclibc.gcc-cross-intermediate/gcc/i586-oe-linux-uclibc/4.6.0/include -DNDEBUG -D__USE_STDIO_FUTEXES__ -MT libc/sysdeps/linux/common/execve.o -MD -MP -MF libc/sysdeps/linux/common/.execve.o.dep > | libc/sysdeps/linux/common/epoll.c: In function '__libc_epoll_pwait': > | libc/sysdeps/linux/common/epoll.c:71:80: error: memory input 7 is not directly addressable > | libc/sysdeps/linux/common/epoll.c:75:86: error: memory input 7 is not directly addressable > | make: *** [libc/sysdeps/linux/common/epoll.o] Error 1 > | make: *** Waiting for unfinished jobs.... This patch seems to fix it. p. diff --git a/libc/sysdeps/linux/common/epoll.c b/libc/sysdeps/linux/common/epoll.c index 85b0cfd..c034b2c 100644 --- a/libc/sysdeps/linux/common/epoll.c +++ b/libc/sysdeps/linux/common/epoll.c @@ -67,12 +67,13 @@ extern __typeof(epoll_pwait) __libc_epoll_pwait; int __libc_epoll_pwait(int epfd, struct epoll_event *events, int maxevents, int timeout, const sigset_t *set) { + int nsig = _NSIG / 8; if (SINGLE_THREAD_P) - return INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, _NSIG / 8); + return INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, nsig); # ifdef __UCLIBC_HAS_THREADS_NATIVE__ else { int oldtype = LIBC_CANCEL_ASYNC (); - int result = INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, _NSIG / 8); + int result = INLINE_SYSCALL(epoll_pwait, 6, epfd, events, maxevents, timeout, set, nsig); LIBC_CANCEL_RESET (oldtype); return result; }