GNU bug report logs -
#34982
[PATCH] guile-build-system: Support building in parallel.
Previous Next
Reported by: Christopher Baines <mail <at> cbaines.net>
Date: Sun, 24 Mar 2019 21:24:01 UTC
Severity: normal
Tags: patch
Done: Christopher Baines <mail <at> cbaines.net>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Christopher Baines <mail <at> cbaines.net> skribis:
> * guix/build/guile-build-system.scm (build): Use invoke-each, instead of
> for-each, to use multiple cores if available.
> (invoke-each, report-build-process): New procedures.
[...]
> + (define (fork-and-run-command command)
> + (match (primitive-fork)
> + (0
> + (apply execlp command))
> + (pid
> + #t)))
To be on the safe side, you should probably wrap the ‘execlp’ call like
this:
(dynamic-wind
(const #t)
(lambda ()
(apply execlp command))
(lambda ()
(primitive-exit 127)))
This ensures that the child process exits immediately if something goes
wrong (e.g., ‘execlp’ raises an exception because the executable could
not be found.)
Otherwise LGTM, thank you!
Ludo’.
This bug report was last modified 6 years and 89 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.