From: "Greg J. Badros" <gjb@cs.washington.edu>
To: Ariel Rios <ariel@arcavia.com>,
Marius Vollmer <mvo@dt.e-technik.uni-dortmund.de>
Cc: gnome-announce-list@gnome.org, guile@sourceware.cygnus.com,
guile-gtk@sourceware.cygnus.com
Subject: Patch to make guile-gtk work with upcoming guile-1.4
Date: Sun, 18 Jun 2000 19:06:00 -0000 [thread overview]
Message-ID: <qrr3dmawhl4.fsf@clavicle.cs.washington.edu> (raw)
In-Reply-To: <200006020301.WAA23978@erin.galway.com.mx>
The below patch makes guile-gtk compile and run the calc.scm test
program when building against guile-1.3.5pre2 (the upcoming guile-1.4).
The patch is relative to current CVS guile-gtk. I suggest folding it
into guile-gtk after guile-1.4 is released. (It should be tested more
thoroughly, too, of course.)
Thanks,
Greg
Sun Jun 18 18:59:41 2000 Greg J. Badros <gjb@cs.washington.edu>
* guile-gtk.c: Updated for guile-1.4 which is about to be
released. Change scm_newsmob(..) to scm_make_smob_type_mfpe(..)
calls.
Index: guile-gtk.c
===================================================================
RCS file: /cvs/gnome/gnome-guile/guile-gtk/guile-gtk.c,v
retrieving revision 1.48
diff -u -p -r1.48 guile-gtk.c
--- guile-gtk.c 2000/05/16 20:18:53 1.48
+++ guile-gtk.c 2000/06/19 02:02:55
@@ -558,13 +558,6 @@ gtkobj_free (SCM obj)
return sizeof (sgtk_object_proxy);
}
-struct scm_smobfuns gtkobj_smob = {
- gtkobj_mark,
- gtkobj_free,
- gtkobj_print,
- NULL
-};
-
/* Treating GtkObject proxies right during GC. We need to run custom
code during the mark phase of the Scheme GC. We do this by
creating a new smob type and allocating one actual smob of it.
@@ -648,13 +641,6 @@ gtkobj_marker_hook_print (SCM obj, SCM p
return 1;
}
-struct scm_smobfuns gtkobj_marker_hook_smob = {
- gtkobj_marker_hook,
- NULL,
- gtkobj_marker_hook_print,
- NULL
-};
-
static void
install_marker_hook ()
{
@@ -1033,13 +1019,6 @@ boxed_print (SCM exp, SCM port, scm_prin
return 1;
}
-struct scm_smobfuns boxed_smob = {
- scm_mark0,
- boxed_free,
- boxed_print,
- NULL
-};
-
SCM
sgtk_boxed2scm (gpointer ptr, sgtk_boxed_info *info, int copyp)
{
@@ -1275,13 +1254,6 @@ gtktype_equalp (SCM obj1, SCM obj2)
return GTKTYPE (obj1) == GTKTYPE (obj2)? SCM_BOOL_T : SCM_BOOL_F;
}
-struct scm_smobfuns gtktype_smob = {
- scm_mark0,
- scm_free0,
- gtktype_print,
- gtktype_equalp
-};
-
GtkType
sgtk_type_from_name (char *name)
{
@@ -1351,13 +1323,6 @@ illobj_print (SCM obj, SCM port, scm_pri
return 1;
}
-struct scm_smobfuns illobj_smob = {
- scm_mark0,
- scm_free0,
- illobj_print,
- NULL
-};
-
static SCM
sgtk_make_illegal_type_object (GtkType type)
{
@@ -2652,11 +2617,40 @@ SCM_SYMBOL (sym_gtk_version, "gtk-1.3");
static void
sgtk_init_substrate (void)
{
- tc16_gtkobj_marker_hook = scm_newsmob (>kobj_marker_hook_smob);
- tc16_gtkobj = scm_newsmob (>kobj_smob);
- tc16_boxed = scm_newsmob (&boxed_smob);
- tc16_gtktype = scm_newsmob (>ktype_smob);
- tc16_illobj = scm_newsmob (&illobj_smob);
+ tc16_gtkobj_marker_hook = scm_make_smob_type_mfpe("gtkobj_marker_hook",
+ sizeof(sgtk_object_proxy),
+ gtkobj_marker_hook,
+ NULL,
+ gtkobj_marker_hook_print,
+ NULL);
+
+ tc16_gtkobj = scm_make_smob_type_mfpe("gtkobj",
+ sizeof(sgtk_object_proxy),
+ gtkobj_mark,
+ gtkobj_free,
+ gtkobj_print,
+ NULL);
+
+ tc16_boxed = scm_make_smob_type_mfpe("gtkboxed",
+ sizeof(sgtk_boxed_info),
+ scm_mark0,
+ boxed_free,
+ boxed_print,
+ NULL);
+
+ tc16_gtktype = scm_make_smob_type_mfpe("gtktype",
+ sizeof(sgtk_type_info),
+ scm_mark0,
+ scm_free0,
+ gtktype_print,
+ gtktype_equalp);
+
+ tc16_illobj = scm_make_smob_type_mfpe("gtkillobj",
+ sizeof(GtkType),
+ scm_mark0,
+ scm_free0,
+ illobj_print,
+ NULL);
global_protects = NULL;
sgtk_protshell_chunk = g_mem_chunk_create (sgtk_protshell, 128,
next prev parent reply other threads:[~2000-06-18 19:06 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2000-06-01 21:05 guile-gtk 0.18 Released Ariel Rios
2000-06-18 19:06 ` Greg J. Badros [this message]
2000-06-19 2:06 ` Patch to make guile-gtk work with upcoming guile-1.4 Mikael Djurfeldt
2000-06-19 14:11 ` Greg J. Badros
2000-06-19 15:47 ` Mikael Djurfeldt
2000-06-19 14:49 ` Marius Vollmer
2000-06-19 15:01 ` Greg J. Badros
2000-06-19 21:54 ` Jim Blandy
2000-06-20 8:41 ` Greg J. Badros
2000-06-20 9:15 ` Jost Boekemeier
2000-06-20 9:22 ` Brett Viren
2000-06-19 14:49 ` Marius Vollmer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=qrr3dmawhl4.fsf@clavicle.cs.washington.edu \
--to=gjb@cs.washington.edu \
--cc=ariel@arcavia.com \
--cc=gnome-announce-list@gnome.org \
--cc=guile-gtk@sourceware.cygnus.com \
--cc=guile@sourceware.cygnus.com \
--cc=mvo@dt.e-technik.uni-dortmund.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).