mirror of https://gitee.com/openkylin/qemu.git
configure: Check whether makecontext() is a glibc stub function
On some systems (notably ARM Linux) glibc provides implementations of makecontext(), getcontext() and friends which are stubs which always return failure. Make the configure test for makecontext() also check for the presence of the __stub_makecontext macro which indicates the presence of these stubs, so we can avoid trying to use them and fall back to a different coroutine implementation instead. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
967c0da73a
commit
cdf84806a1
|
@ -2723,11 +2723,15 @@ fi
|
|||
|
||||
##########################################
|
||||
# check if we have makecontext
|
||||
# (and that it's not a glibc stub which always returns -1)
|
||||
|
||||
ucontext_coroutine=no
|
||||
if test "$darwin" != "yes"; then
|
||||
cat > $TMPC << EOF
|
||||
#include <ucontext.h>
|
||||
#ifdef __stub_makecontext
|
||||
#error Ignoring glibc stub makecontext which will always fail
|
||||
#endif
|
||||
int main(void) { makecontext(0, 0, 0); return 0; }
|
||||
EOF
|
||||
if compile_prog "" "" ; then
|
||||
|
|
Loading…
Reference in New Issue