mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2025-02-07 11:29:59 +01:00
compile: Run the load phase within 'with-target'.
* guix/build/compile.scm (compile-files)[build]: Remove 'with-target'. Wrap body in 'with-target'.
This commit is contained in:
parent
93add9bf7d
commit
041c3c22dc
1 changed files with 22 additions and 23 deletions
|
@ -184,36 +184,35 @@ files are for HOST, a GNU triplet such as \"x86_64-linux-gnu\"."
|
||||||
;; Exit as soon as something goes wrong.
|
;; Exit as soon as something goes wrong.
|
||||||
(exit-on-exception
|
(exit-on-exception
|
||||||
file
|
file
|
||||||
(with-target host
|
|
||||||
(lambda ()
|
|
||||||
(let ((relative (relative-file source-directory file)))
|
(let ((relative (relative-file source-directory file)))
|
||||||
(compile-file file
|
(compile-file file
|
||||||
#:output-file (string-append build-directory "/"
|
#:output-file (string-append build-directory "/"
|
||||||
(scm->go relative))
|
(scm->go relative))
|
||||||
#:opts (append warning-options
|
#:opts (append warning-options
|
||||||
(optimization-options relative))))))))
|
(optimization-options relative))))))
|
||||||
|
|
||||||
(with-augmented-search-path %load-path source-directory
|
(with-augmented-search-path %load-path source-directory
|
||||||
(with-augmented-search-path %load-compiled-path build-directory
|
(with-augmented-search-path %load-compiled-path build-directory
|
||||||
(with-fluids ((*current-warning-prefix* ""))
|
(with-fluids ((*current-warning-prefix* ""))
|
||||||
|
(with-target host
|
||||||
;; FIXME: To work around <https://bugs.gnu.org/15602>, we first load all
|
(lambda ()
|
||||||
;; of FILES.
|
;; FIXME: To work around <https://bugs.gnu.org/15602>, we first
|
||||||
|
;; load all of FILES.
|
||||||
(load-files source-directory files
|
(load-files source-directory files
|
||||||
#:report-load report-load
|
#:report-load report-load
|
||||||
#:debug-port debug-port)
|
#:debug-port debug-port)
|
||||||
|
|
||||||
;; Make sure compilation related modules are loaded before starting to
|
;; Make sure compilation related modules are loaded before
|
||||||
;; compile files in parallel.
|
;; starting to compile files in parallel.
|
||||||
(compile #f)
|
(compile #f)
|
||||||
|
|
||||||
;; XXX: Don't use too many workers to work around the insane memory
|
;; XXX: Don't use too many workers to work around the insane
|
||||||
;; requirements of the compiler in Guile 2.2.2:
|
;; memory requirements of the compiler in Guile 2.2.2:
|
||||||
;; <https://lists.gnu.org/archive/html/guile-devel/2017-05/msg00033.html>.
|
;; <https://lists.gnu.org/archive/html/guile-devel/2017-05/msg00033.html>.
|
||||||
(n-par-for-each (min workers 8) build files)
|
(n-par-for-each (min workers 8) build files)
|
||||||
|
|
||||||
(unless (zero? total)
|
(unless (zero? total)
|
||||||
(report-compilation #f total total))))))
|
(report-compilation #f total total))))))))
|
||||||
|
|
||||||
(eval-when (eval load)
|
(eval-when (eval load)
|
||||||
(when (and (string=? "2" (major-version))
|
(when (and (string=? "2" (major-version))
|
||||||
|
|
Loading…
Add table
Reference in a new issue