[Buildroot] [PATCH 3/5] Added the libpth package.
Gustavo Zacarias
gustavo at zacarias.com.ar
Fri May 11 23:11:18 UTC 2012
On 2012-05-11 19:52, Arnout Vandecappelle wrote:
>> depends on BR2_TOOLCHAIN_EXTERNAL_GLIBC || BR2_TOOLCHAIN_CTNG_glibc
>> || BR2_TOOLCHAIN_CTNG_eglibc
>> pth doesn't work with uClibc...
>
> Why do you say that? I've just tried it with a default
> uClibc-0.9.33.1 config
> on i486 and the pth tests run fine.
>
> It probably won't work on NOMMU, however: I see some fork calls in
> there that
> are not configured out.
>
> Regards,
> Arnout
Because it only works for i386 uclibc, see pth_mctx.c lines 464-485,
snip:
*****
intern int pth_mctx_set(
pth_mctx_t *mctx, void (*func)(void), char *sk_addr_lo, char
*sk_addr_hi)
{
pth_mctx_save(mctx);
#if defined(__GLIBC__) && defined(__GLIBC_MINOR__) \
&& __GLIBC__ >= 2 && __GLIBC_MINOR__ >= 0 && defined(JB_PC) &&
defined(JB_SP)
mctx->jb[0].__jmpbuf[JB_PC] = (int)func;
mctx->jb[0].__jmpbuf[JB_SP] = (int)sk_addr_hi;
#elif defined(__GLIBC__) && defined(__GLIBC_MINOR__) \
&& __GLIBC__ >= 2 && __GLIBC_MINOR__ >= 0 && defined(__mc68000__)
mctx->jb[0].__jmpbuf[0].__aregs[0] = (long int)func;
mctx->jb[0].__jmpbuf[0].__sp = (int *)sk_addr_hi;
#elif defined(__GNU_LIBRARY__) && defined(__i386__)
mctx->jb[0].__jmpbuf[0].__pc = (char *)func;
mctx->jb[0].__jmpbuf[0].__sp = sk_addr_hi;
#else
#error "Unsupported Linux (g)libc version and/or platform"
#endif
sigemptyset(&mctx->sigs);
mctx->error = 0;
return TRUE;
}
*****
Regards.
More information about the buildroot
mailing list