From ce9929fadfcdb1426eec4ea228aaf68db7fd2db3 Mon Sep 17 00:00:00 2001 From: Romain GARBAGE Date: Wed, 18 Mar 2026 15:47:08 +0100 Subject: profiles: Add manifest generator based on build-system. * guix/profiles.scm (build-system->manifest): New procedure. * doc/guix.texi (Writing Manifests): Document it. * tests/profiles.scm: Test it. Merges: #7272 Change-Id: Iaba54d5d4a1a9ae304de45f91374098617adebfc Signed-off-by: Simon Tournier --- doc/guix.texi | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'doc') diff --git a/doc/guix.texi b/doc/guix.texi index d3abbf29351..c25a30701f9 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -9837,6 +9837,23 @@ line, which can often be more convenient. @c TODO: specifications->package, etc. +@deffn {Procedure} build-system->manifest build-system [system] [#:target] +Given @var{build-system}, a variable referring to a build system value +suitable for the @code{build-system} field in the @code{package} record +type, return a manifest providing all the packages required by the build +system, for @var{system}, optionally when cross-compiling to +@var{target}. + +In order to be able to use a build system variable, the corresponding +module must be loaded, as in the following example: + +@lisp +(use-modules (guix build-system cmake)) + +(build-system->manifest cmake-build-system) +@end lisp +@end deffn + @node Build Systems @section Build Systems -- cgit v1.2.3