diff options
author | Ludovic Courtès <ludo@gnu.org> | 2020-04-23 23:10:19 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2020-04-23 23:59:22 +0200 |
commit | 12da5162e49ea3b0f2e5e46f7aa5e410ebf30845 (patch) | |
tree | 47a5d804eee3cdce859bc6713a250cfd6bf0a42b | |
parent | 0f25feb15917c48cd37ee9b5a2cfc40014b0c520 (diff) | |
download | patches-12da5162e49ea3b0f2e5e46f7aa5e410ebf30845.tar patches-12da5162e49ea3b0f2e5e46f7aa5e410ebf30845.tar.gz |
compile: Pre-load the compiler outside 'with-target'.
* guix/build/compile.scm (compile-files): Move call to 'compile' before
'with-target'. Failing to do that, if the target has a different word
size than the host, the first call to 'compile-file' fails with:
ice-9/eval.scm:293:34: In procedure load-thunk-from-memory: ELF file does not have native word size
while attempting loading 'language/spec.go'.
-rw-r--r-- | guix/build/compile.scm | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/guix/build/compile.scm b/guix/build/compile.scm index 3ce0ecede5..c4dbb6e34c 100644 --- a/guix/build/compile.scm +++ b/guix/build/compile.scm @@ -194,6 +194,11 @@ files are for HOST, a GNU triplet such as \"x86_64-linux-gnu\"." (with-augmented-search-path %load-path source-directory (with-augmented-search-path %load-compiled-path build-directory (with-fluids ((*current-warning-prefix* "")) + ;; Make sure the compiler's modules are loaded before 'with-target' + ;; (since 'with-target' influences the .go loader), and before + ;; starting to compile files in parallel. + (compile #f) + (with-target host (lambda () ;; FIXME: To work around <https://bugs.gnu.org/15602>, we first @@ -202,10 +207,6 @@ files are for HOST, a GNU triplet such as \"x86_64-linux-gnu\"." #:report-load report-load #:debug-port debug-port) - ;; Make sure compilation related modules are loaded before - ;; starting to compile files in parallel. - (compile #f) - ;; XXX: Don't use too many workers to work around the insane ;; memory requirements of the compiler in Guile 2.2.2: ;; <https://lists.gnu.org/archive/html/guile-devel/2017-05/msg00033.html>. |