This is the mail archive of the
guile@sourceware.cygnus.com
mailing list for the Guile project.
Re: New Guile module: guile-gtkthreads
- To: Mikael Djurfeldt <mdj at mdj dot nada dot kth dot se>
- Subject: Re: New Guile module: guile-gtkthreads
- From: Ole Myren Rohne <ole dot rohne at cern dot ch>
- Date: 05 Apr 2000 16:57:01 +0200
- Cc: guile at sourceware dot cygnus dot com
- References: <E12aKBf-000457-00@mdj.nada.kth.se> <xy7wvmlvvyb.fsf@mdj.nada.kth.se>
Mikael Djurfeldt <mdj@mdj.nada.kth.se> writes:
> > I've made the frist version of a new Guile module:
> >
> > http://www.nada.kth.se/~mdj/guile-gtkthreads/guile-gtkthreads-0.1.0.tar.gz
>
> New version: 0.1.2 can now be found at the same place.
Kuuult!
> Dependencies
> ------------
>
> This library needs to be compiled with:
>
> * libguile >2000-03-29 with thread support (--with-threads)
>
> * guile-gtk
As you didn't say which versions of glib/gtk+ that is required, I
deciced to try with 1.3 from CVS. The bad news is that glib actually
wants to call thread_set_priority and thread_self. The good news is
that empty functions seems to do for now.
BTW: which version of gtk+ are people using anyway? I have a set of
personal fixes to guile-gtk that seems necessary to make it compile
with gtk+ 1.3 from CVS.
Ole
diff -C 3 guile-gtkthreads-0.1.2.orig/gthread-guile.c guile-gtkthreads-0.1.2/gthread-guile.c
*** guile-gtkthreads-0.1.2.orig/gthread-guile.c Thu Mar 30 02:56:06 2000
--- guile-gtkthreads-0.1.2/gthread-guile.c Wed Apr 5 16:23:38 2000
***************
*** 157,162 ****
--- 157,172 ----
return scm_getspecific (*(scm_key_t *) private_key);
}
+ static void
+ g_thread_set_priority_guile_impl (gpointer thread, GThreadPriority priority)
+ {
+ }
+
+ static void
+ g_thread_self_guile_impl (gpointer thread)
+ {
+ }
+
static GThreadFunctions g_guile_thread_functions_for_glib =
{
g_mutex_new_guile_impl,
***************
*** 172,178 ****
g_cond_free_guile_impl,
g_private_new_guile_impl,
g_private_get_guile_impl,
! g_private_set_guile_impl
};
void
--- 182,194 ----
g_cond_free_guile_impl,
g_private_new_guile_impl,
g_private_get_guile_impl,
! g_private_set_guile_impl,
! NULL, /* g_thread_create_guile_impl */
! NULL, /* g_thread_yield_guile_impl */
! NULL, /* g_thread_join_guile_impl */
! NULL, /* g_thread_exit_guile_impl */
! g_thread_set_priority_guile_impl,
! g_thread_self_guile_impl
};
void