(INCLUDES): Include the value of THREAD_CPPFLAGS.
(guile_LDADD, check_ldadd): THREAD_LIBS_LOCAL has been renamed from
THREAD_LIBS.
(THREAD_LIBS): Definition deleted; automake will generate such
things automatically.
* Makefile.in: Regenerated.
* qthreads.m4: New file, which knows how to configure the qthreads
library.
* configure.in: Replace all thread package selection code. Do the
--with-threads argument processing here. Enable the appropriate
thread interface files in libguile. Remove all qthreads
configuration code; call QTHREADS_CONFIGURE instead. Set
GUILE_LIBS using the info provided by QTHREADS_CONFIGURE.
* threads.m4: Removed; not used any more.
* Makefile.am (aclocal_DATA): Mention qthreads.m4, not threads.m4.
* Makefile.in, aclocal.m4, configure: Rgnrtd. (Sv th vwls!)
Note that these were regenerated with the tools available from
Cygnus's source tree, which have patches not available to the
general public. I'm not sure this was a good idea; feel free to
revert them to the latest released versions of the tools.
marking code, and make marker routines only responsible for
turning up outgoing pointers.
* gc.c (scm_gc_mark): Set the mark bit on ports and smobs here,
before calling the marking function. Don't call the marking
function if it's zero.
* markers.c (scm_mark0): Just return #f. This function isn't
necessary at all now, but it's harmless to call it. We'll leave
it in so other folks' code doesn't croak at link time.
(scm_markcdr): Don't call SCM_SETGC8MARK.
* async.c (mark_async): Don't call SCM_SETGC8MARK.
* dynl.c (mark_dynl_obj): Same.
* root.c (mark_root): Same.
* srcprop.c (marksrcprops): Same.
* unif.c (markra): Same.
* variable.c (scm_markvar): Same.
* ports.c (scm_markstream): Same.
(void_port_ptob): Specify zero for our marking function.
* debug.c (debugobjsmob): Same.
* dynwind.c (guardsmob): Same.
* filesys.c (dir_smob): Same.
* fluids.c (fluid_smob): Same.
* fports.c (scm_fptob, scm_pipob): Same.
* mallocs.c (mallocsmob): Same.
* regex-posix.c (regex_t_smob): Same.
* smob.c (freecell, flob, bigob): Same.
* threads.c (thread_smob, mutex_smob, condvar_smob): Same.
* throw.c (jbsmob, lazy_catch_funs): Same.
ungetc-char-ready?, since we don't provide that function any
more. The unread-string function doesn't interact properly with
any of the standard I/O functions anyway. (Thanks to Andrew
Archibald.)
scm_copy_tree on code in order not to let memoized code to leak
out. Thus, scm_copy_tree needs to copy vectors as well since
quasiquote can introduce evaluated code also inside vector
constants.
bindings from a module. `(export name1 name2 ...)' can be used at
the top of a module (after `define-module') to specify which names
should be exported. It can be used as an alternative to
`define-public'. `export-syntax' works equivalently to `export'
but is intended for export of syntactic keywords.
(Thanks to Thien-Thi Nguyen.)
of module `(guile)'. Also make sure that `(guile-repl)' uses
suitable modules. This change improves Guile stability
substantially since bindings will only be copied from the root
module: If the user redefines builtins in `(guile-repl)' it won't
affect the internal operation of Guile itself.
module `(guile)'. Also make sure that `(user)' uses suitable
modules. This change improves Guile stability substantially since
bindings will only be copied from the root module: If the user
redefines builtins in `(user)' it won't affect the internal
operation of Guile itself.
reports anymore. We've had them since April. The current reason
is a completely unintelligible failure of totoro.red-bean.com to
do the test for rl_getc_function in libreadline correctly. This
kludge overrides the test if we're on totoro so that the snapshot
generation process can work.
* readline.c: Define a strdup replacement if not existent on system.
This change makes scm_make_vector R5RS compatible. We cannot keep
the third argument since people want to be able to deduce the form
of the C function call only by looking at R5RS. (At the same time
we have removed some unnecessary complexity!)
* eval.c, filesys.c, fluids.c, gc.c, gh_data.c, init.c, kw.c,
net_db.c, posix.c, print.c, regex-posix.c, scmsigs.c, socket.c,
stime.c, symbols.c, unif.c, vectors.c, weaks.c: Removed third
argument in call to scm_make_vector.