mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-28 16:00:22 +02:00
check for GC_allow_register_threads
This is not present in earlier versions of BDW-GC * configure.ac: check for GC_allow_register_threads * libguile/threads.c (scm_i_init_thread_for_guile): Only call GC_allow_register_threads if it is present.
This commit is contained in:
parent
443f25dcff
commit
4000d0641f
2 changed files with 3 additions and 1 deletions
|
@ -1238,7 +1238,7 @@ save_LIBS="$LIBS"
|
||||||
LIBS="$BDW_GC_LIBS $LIBS"
|
LIBS="$BDW_GC_LIBS $LIBS"
|
||||||
CFLAGS="$BDW_GC_CFLAGS $CFLAGS"
|
CFLAGS="$BDW_GC_CFLAGS $CFLAGS"
|
||||||
|
|
||||||
AC_CHECK_FUNCS([GC_do_blocking GC_call_with_gc_active GC_pthread_exit GC_pthread_cancel])
|
AC_CHECK_FUNCS([GC_do_blocking GC_call_with_gc_active GC_pthread_exit GC_pthread_cancel GC_allow_register_threads])
|
||||||
|
|
||||||
# Though the `GC_do_blocking ()' symbol is present in GC 7.1, it is not
|
# Though the `GC_do_blocking ()' symbol is present in GC 7.1, it is not
|
||||||
# declared, and has a different type (returning void instead of
|
# declared, and has a different type (returning void instead of
|
||||||
|
|
|
@ -772,8 +772,10 @@ scm_i_init_thread_for_guile (struct GC_stack_base *base, SCM parent)
|
||||||
*/
|
*/
|
||||||
scm_i_init_guile (base);
|
scm_i_init_guile (base);
|
||||||
|
|
||||||
|
#ifdef HAVE_GC_ALLOW_REGISTER_THREADS
|
||||||
/* Allow other threads to come in later. */
|
/* Allow other threads to come in later. */
|
||||||
GC_allow_register_threads ();
|
GC_allow_register_threads ();
|
||||||
|
#endif
|
||||||
|
|
||||||
scm_i_pthread_mutex_unlock (&scm_i_init_mutex);
|
scm_i_pthread_mutex_unlock (&scm_i_init_mutex);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue