Samuel Barreto
2018-04-07 18:59:32 UTC
Hi everyone,
I'm trying to write a GSL wrapper in guile. I have written a lot of
simple functions using SCM_DEFINE and documented them using the last
SCM_DEFINE macro argument.
Now I'd like to make those docstrings accessible from Scheme code.
The way I do it for now is with this makefile instructions:
%.doc: %.c
/wherevere/guile/source/code/is/libguile/guile-snarf-docs -o $@ $< \
-- $(CFLAGS)
%.texi: %.doc
cat $< | guild snarf-check-and-output-texi > $@
And then call makeinfo on it.
(I had to change some hardcoded path in the guile-snarf-docs scripts so
that it worked from another directory btw.)
So I do am able to generate the info files that I want. My two problems
are:
1. how to use guile-snarf-docs portably ? (I have hardcoded them in my
Makefile for now.)
2. how to "link" them with functions defined in the extensions ? (I have
tried to (set! documentation-files "PATH/TO/doc.txt") but I think I
miss a step so that (procedure-documentation my-gsl-function) returns
the docstring I want)
And from a broader perspective, is it the way it is supposed to work ? I
mean, am I doing it the right way or are other "guile-extension-writers"
doing it otherwise ?
Thank you for your help,
samuel
I'm trying to write a GSL wrapper in guile. I have written a lot of
simple functions using SCM_DEFINE and documented them using the last
SCM_DEFINE macro argument.
Now I'd like to make those docstrings accessible from Scheme code.
The way I do it for now is with this makefile instructions:
%.doc: %.c
/wherevere/guile/source/code/is/libguile/guile-snarf-docs -o $@ $< \
-- $(CFLAGS)
%.texi: %.doc
cat $< | guild snarf-check-and-output-texi > $@
And then call makeinfo on it.
(I had to change some hardcoded path in the guile-snarf-docs scripts so
that it worked from another directory btw.)
So I do am able to generate the info files that I want. My two problems
are:
1. how to use guile-snarf-docs portably ? (I have hardcoded them in my
Makefile for now.)
2. how to "link" them with functions defined in the extensions ? (I have
tried to (set! documentation-files "PATH/TO/doc.txt") but I think I
miss a step so that (procedure-documentation my-gsl-function) returns
the docstring I want)
And from a broader perspective, is it the way it is supposed to work ? I
mean, am I doing it the right way or are other "guile-extension-writers"
doing it otherwise ?
Thank you for your help,
samuel