diff options
author | raingloom <raingloom@riseup.net> | 2020-10-13 09:26:52 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2020-12-03 16:18:33 +0100 |
commit | 64f032d73f83727c0d06a1ea6531c226593ee976 (patch) | |
tree | cac4cfdcba62748fe875ba9d7a47d7f1bf04b004 /doc/guix.texi | |
parent | 918a643bf905de2e027be50ca9a461f4af811e32 (diff) |
build-system: Add chicken-build-system.
* guix/build-system/chicken.scm: New file.
* guix/build/chicken-build-system.scm: New file.
* Makefile.am: Add them.
* doc/guix.texi: Document it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'doc/guix.texi')
-rw-r--r-- | doc/guix.texi | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/doc/guix.texi b/doc/guix.texi index 889f380108..9835d19d2b 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -7335,6 +7335,28 @@ parameters available to cargo. It will also remove an included defined by the crate. @end defvr +@defvr {Scheme Variable} chicken-build-system +This variable is exported by @code{(guix build-system chicken)}. +It builds Chicken Scheme modules (also called ``eggs'' or ``extensions''). +Chicken generates C source code, which then gets compiled by a C compiler, +in this case GCC. + +It adds @code{chicken} to the package inputs, as well as the packages of +@code{gnu-build-system}. + +The build system can't (yet) deduce the egg's name automatically, so just like +with @code{go-build-system} and its @code{#:import-path}, you should define +@code{#:egg-name} in the package's @code{arguments} field. + +For example, if you are packaging the srfi-1 egg: +@lisp +(arguments '(#:egg-name "srfi-1")) +@end lisp + +Egg dependencies must be defined in @code{propagated-inputs}, not @code{inputs} +because Chicken doesn't embed absolute references in compiled eggs. +Test dependecies should go to @code{native-inputs}, as usual. +@end defvr @defvr {Scheme Variable} copy-build-system This variable is exported by @code{(guix build-system copy)}. It |