On 6 October 2014 15:59, Peter Maydell <peter.mayd...@linaro.org> wrote: > Hi. I'm afraid this doesn't compile on my ARM box: > > /root/qemu/linux-user/syscall.c: In function ‘do_syscall’: > /root/qemu/linux-user/syscall.c:9695:9: error: implicit declaration of > function ‘timerfd_create’ [-Werror=implicit-function-declaration] > /root/qemu/linux-user/syscall.c:9695:9: error: nested extern > declaration of ‘timerfd_create’ [-Werror=nested-externs] > /root/qemu/linux-user/syscall.c:9705:13: error: implicit declaration > of function ‘timerfd_gettime’ [-Werror=implicit-function-declaration] > /root/qemu/linux-user/syscall.c:9705:13: error: nested extern > declaration of ‘timerfd_gettime’ [-Werror=nested-externs] > /root/qemu/linux-user/syscall.c:9728:13: error: implicit declaration > of function ‘timerfd_settime’ [-Werror=implicit-function-declaration] > /root/qemu/linux-user/syscall.c:9728:13: error: nested extern > declaration of ‘timerfd_settime’ [-Werror=nested-externs] > cc1: all warnings being treated as errors
Specifically, this is because of the patch which adds #ifdef CONFIG_TIMERFD ... #endif -- it is doing so earlier in the file than the include of "qemu-common.h" which pulls in the file defining the CONFIG_* macros, so sys/timerfd.h is now never included. -- PMM