Hello,

I was investigating the recent build failures of the libbluray package
in Buildroot, which occur on the Microblaze, Blackfin and m68k
architecture (at least), using the latest uClibc-ng release. The
failure looks like this:

  
http://autobuild.buildroot.net/results/941/941c06e29f6542e258f20799dc6f3f94b2f8af88/build-end.log

Relevant part:

In file included from 
/home/buildroot/autobuild/run/instance-3/output/host/usr/microblazeel-buildroot-linux-uclibc/sysroot/usr/include/pthread.h:686:0,
                 from src/util/mutex.c:32:
/home/buildroot/autobuild/run/instance-3/output/host/usr/microblazeel-buildroot-linux-uclibc/sysroot/usr/include/bits/sigthread.h:31:14:
 error: unknown type name '__sigset_t'
        const __sigset_t *__restrict __newmask,
              ^
/home/buildroot/autobuild/run/instance-3/output/host/usr/microblazeel-buildroot-linux-uclibc/sysroot/usr/include/bits/sigthread.h:32:8:
 error: unknown type name '__sigset_t'
        __sigset_t *__restrict __oldmask)__THROW;

And indeed, one can reproduce this problem with a very simple test case:

====

#include <pthread.h>

int main(void) { return 0; }

====

If you build it with the Microblaze/uClibc compiler with no special
flags, it works just fine:

$ ./output/host/usr/bin/microblazeel-linux-gcc -o test test.c 
$ 

However, as soon as you start adding the -std=c99 flag, the build fails:

$ ./output/host/usr/bin/microblazeel-linux-gcc -std=c99 -o test test.c 
In file included from 
/home/thomas/projets/buildroot/output/host/usr/microblazeel-buildroot-linux-uclibc/sysroot/usr/include/pthread.h:686:0,
                 from pouet.c:1:
/home/thomas/projets/buildroot/output/host/usr/microblazeel-buildroot-linux-uclibc/sysroot/usr/include/bits/sigthread.h:31:14:
 error: unknown type name ‘__sigset_t’
        const __sigset_t *__restrict __newmask,
              ^
/home/thomas/projets/buildroot/output/host/usr/microblazeel-buildroot-linux-uclibc/sysroot/usr/include/bits/sigthread.h:32:8:
 error: unknown type name ‘__sigset_t’
        __sigset_t *__restrict __oldmask)__THROW;
        ^
Is this problem already known? 

Best regards,

Thomas Petazzoni
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
_______________________________________________
devel mailing list
devel@uclibc-ng.org
http://mailman.uclibc-ng.org/cgi-bin/mailman/listinfo/devel

Reply via email to