Hello, It used to be that Savannah’s libc could be compiled without libpthread, because none of the source files would explicitly include <pthread.h>.
This is no longer the case with the recent changes where the new nss_files/files-init.c includes <nscd/nscd.h> (so it can use struct traced_file), which includes <pthread.h> and uses pthread types. So, how can this all be bootstrapped? One way would be to move struct traced_file elsewhere. Another would be to build a pthread-less libc, which could then be used to build libpthread, which could then be used to build the full-blown libc. A longer-term way, would be to include libpthread in libc, like NPTL. That’s probably more work, and more divergence from Sourceware libc. Thoughts? Thanks, Ludo’.