scm_i_thread_root when USE_THREADS is defined. Use scm_root
otherwise.
* scmsigs.c (take_signal): Only call scm_i_thread_root when
USE_THREADS is defined. Use scm_root otherwise.
(scm_sigaction_for_thread): Ignore THREAD argument when
USE_THREADS is not defined. Also, move THREAD argument defaulting
out of HAVE_SIGACTION section, which was a bug.
scm_call_with_unblocked_asyncs, scm_c_call_with_blocked_asyncs,
scm_c_call_with_unblocked_asyncs): New prototypes.
(scm_mask_signals, scm_unmask_signals): Deprecated.
(scm_mask_ints): Turned into a macro.
* async.c (scm_mask_ints): Removed.
(scm_run_asyncs): Do not set scm_mask_ints while running an async.
this should not be necessary.
(scm_async_click): Test block_asyncs instead of scm_mask_ints.
(scm_mask_signals, scm_unmask_signals): Deprecated. Emit
deprecation warning and check for errornous use. Set block_asyncs
instead of scm_mask_ints.
(increase_block, decrease_block, scm_call_with_blocked_asyncs,
scm_call_with_unblocked_asyncs, scm_c_call_with_blocked_asyncs,
scm_c_call_with_unblocked_asyncs): New.
(scm_lt_dlpreload_default): new function. Replaces
scm_lt_dlset_preloaded_symbols which depended on global that
libtool automagically defines in binaries, not libs.
scm_lt_dlset_preloaded_symbols which depended on global that
libtool automagically defines in binaries, not libs. Now the call
in guile.c has to pass us that magic value.
(SCM_INSERTED_DLSYMLIST_STRUCT_DECL): used to add a struct name in
the lt_dlsymlist typedef -- we use such a crazy name so we can
remove this in the upstream diff computation.
cell to SCM_BOOL_F, not SCM_EOL.
(scm_i_queue_async_cell): Queue the cell at the end of the list,
and only if the handler procedure is not already present.
(scm_system_async_mark_for_thread): Initialize cdr of handler cell
with SCM_BOOL_F.
* scmsigs.c (scm_sigaction_for_thread): Likewise.
like to stay that way. If we want, we can turn it off by default
when we make the stable release, but I caught a lot of bugs this
way. Accomodate libguile-ltdl -- therea are some ltdl things that
are commented out now INCLTDL and LIBLTDL. I think we may not
need them anymore, but I'll leave them until we're sure. We also
killed off the libltdl dir and related options including the
AC_CONFIG_SUBDIRS. I also added some explicit tests for some
headers and functions that weren't listed but were in
scmconfig.h.in. though this may have been unnecessary.
scm_lt_dlopenext, and scm_lt_dlerror.
(sysdep_dynl_unlink): switch to scm_lt_dlhandle, scm_lt_dlclose,
and scm_lt_dlerror.
(sysdep_dynl_func): switch to scm_lt_dlhandle, scm_lt_dlsym,
and scm_lt_dlerror.
(sysdep_dynl_init): switch to scm_lt_dlinit();