I have done this by writing a header file "scm.h" containing
various bits of pre-processor hair, mostly lifted from scmhob.h in
the guile-hobbit distribution, and suplementing it with about 15 lines of c
to replace two functions that I could not find. When in doubt, I just put
scm_ in front of lower case names, and SCM_ for upper case.
Sophisticated or what? Do not redefine display to scm_display; X11
uses lots of variables called display.
The whole port took me about six hours; somebody who knew something
about guile and/or scm could do it much faster. I can run most of the
examples in the xscm distribution, some needed a bit of adapting because
of different library paths etc; some want assert.scm in slib (which is
not there in my slib2b2) which I commented out.
I would love to release this, but as I am a government employee it will
take ages to get approval. Jim Blandy suggested I should post this to
the guile mailing list. If somebody who knew anything about this
volunteered to redo the port, I would be very happy to help out with hints
if needed. Almost certainly they would do it more safely and elegantly, as
I am nervous about something whose workings are so far beyond me.
I used the following versions, but probably these don't matter in detail.
guile guile-core-970825 (--with-threads=qt)
xscm xscm-2.01
slib slib2b2
Xt,Xaw X11R6.3
Xm lesstif-0.80
$(CC) gcc-2.7.2
guile-hobbit ?? (got at same time as snap shot above)
If nobody volunteers in the next two weeks I will apply for permission
to release; this will take three to six months to come through.
Julian Satchell
<satchell@dera.gov.uk>