On 27 December 2012 23:15, Arnd Bergmann arnd@arndb.de wrote:
On x86, this never showed up, because its bits/sigcontext.h does not include asm/sigcontext.h, which it does on arm64, causing the conflicting __s64 definition to be pulled in through linux/types.h.
Ok, that explains.
I think it would be good to change the fuse private header file copy to undefine all the __u64 and related types at the end, which will make new fuse version work with the existing glibc and kernel header files on all architectures.
It's not good enough - the __u64 and friends are used elsewhere in the fuse code. However just pulling in linux/types.h as done in out OE overlay is good enough:
http://git.linaro.org/gitweb?p=openembedded/meta-aarch64.git%3Ba=blob%3Bf=re...
To not break non-linux platforms, I sent to fuse-devel a slightly different patch that keeps the defines when not on linux:
http://sourceforge.net/mailarchive/forum.php?thread_name=CAAqcGH%3D-xM_a%3DR...
No response back yet,
Riku