summary refs log tree commit diff
path: root/doc
diff options
context:
space:
mode:
authorJosselin Poiret <dev@jpoiret.xyz>2023-04-30 12:01:43 +0200
committerJosselin Poiret <dev@jpoiret.xyz>2023-06-04 10:59:34 +0200
commit80d122832135c4b7f1a35d22ae746cc6374a83f5 (patch)
tree4a9b112dbac908ffb50d5cdce17d9a8a2644eb03 /doc
parent0769a9b3c580df7d31db05e439d33e76d5db17e2 (diff)
downloadguix-80d122832135c4b7f1a35d22ae746cc6374a83f5.tar.gz
build-system: New agda-build-system.
* guix/build-system/agda.scm: New file.
* guix/build/agda-build-system.scm: New file.
* Makefile.am (MODULES): Register them.
* doc/guix.texi (Build Systems): Add documentation for agda-build-system.
Diffstat (limited to 'doc')
-rw-r--r--doc/guix.texi21
1 files changed, 21 insertions, 0 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index db37676e12..c9b3fb642c 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -8963,6 +8963,27 @@ of @code{gnu-build-system}, and differ mainly in the set of inputs
 implicitly added to the build process, and in the list of phases
 executed.  Some of these build systems are listed below.
 
+@defvar agda-build-system
+This variable is exported by @code{(guix build-system agda)}.  It
+implements a build procedure for Agda libraries.
+
+It adds @code{agda} to the set of inputs.  A different Agda can be
+specified with the @code{#:agda} key.
+
+The @code{#:plan} key is a list of cons cells @code{(@var{regexp}
+. @var{parameters})}, where @var{regexp} is a regexp that should match
+the @code{.agda} files to build, and @var{parameters} is an optional
+list of parameters that will be passed to @code{agda} when type-checking
+it.
+
+When the library uses Haskell to generate a file containing all imports,
+the convenience @code{#:gnu-and-haskell?} can be set to @code{#t} to add
+@code{ghc} and the standard inputs of @code{gnu-build-system} to the
+input list.  You will still need to manually add a phase or tweak the
+@code{'build} phase, as in the definition of @code{agda-stdlib}.
+
+@end defvar
+
 @defvar ant-build-system
 This variable is exported by @code{(guix build-system ant)}.  It
 implements the build procedure for Java packages that can be built with