summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2019-11-07 10:22:24 +0100
committerLudovic Courtès <ludo@gnu.org>2019-11-07 18:39:55 +0100
commit537b2daba9a5f0c17bde2203e6fb074a661d5b32 (patch)
tree09049a8567d4104c02eeed4ee450abc6accb3edc
parent665467767577172db40eea510583dbf2faf56a58 (diff)
downloadguix-537b2daba9a5f0c17bde2203e6fb074a661d5b32.tar.gz
gnu: commencement: Ensure 'gnu-make-final' refers to the native 'pkg-config'.
Fixes <https://bugs.gnu.org/38093>.

When running:

  guix build --target=arm-linux-gnueabihf -e '(@ (gnu packages base) coreutils)'

the '%current-target-system' parameter is set by the time the top-level
of (gnu packages commencement) is evaluated.  Consequently, we need to
ensure that the 'pkg-config' macro evaluates in a context where
'%current-target-system' is unset.

* gnu/packages/commencement.scm (gnu-make-final): Refer to '%pkg-config'
instead of 'pkg-config'.
* tests/guix-build.sh: Add test.
-rw-r--r--gnu/packages/commencement.scm2
-rw-r--r--tests/guix-build.sh4
2 files changed, 5 insertions, 1 deletions
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index b022a0d634..6a382c7517 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -2402,7 +2402,7 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
   ;; PKG-CONFIG.
   ;; TODO: Fix that on the next rebuild cycle.
   (let ((pkg-config (package
-                      (inherit pkg-config)
+                      (inherit %pkg-config)       ;the native pkg-config
                       (inputs `(("guile" ,guile-final)
                                 ,@(%boot5-inputs)))
                       (arguments
diff --git a/tests/guix-build.sh b/tests/guix-build.sh
index 37666ffd01..52feda9d3a 100644
--- a/tests/guix-build.sh
+++ b/tests/guix-build.sh
@@ -226,6 +226,10 @@ rmdir "$result"
 # Cross building.
 guix build coreutils --target=mips64el-linux-gnu --dry-run --no-substitutes
 
+# Likewise, but with '-e' (see <https://bugs.gnu.org/38093>).
+guix build --target=arm-linux-gnueabihf --dry-run \
+     -e '(@ (gnu packages base) coreutils)'
+
 # Replacements.
 drv1=`guix build guix --with-input=guile@2.0=guile@2.2 -d`
 drv2=`guix build guix -d`