gnu: elogind: Fix cross-compilation.

%build-inputs and friends don't exist when cross-compiling,
so use some G-expology instead.

* gnu/packages/freedesktop.scm (elogind)[arguments]<#:configure-flags>:
  Don't use '%outputs' or '%build-inputs' when cross-compiling.
This commit is contained in:
Maxime Devos 2021-08-24 09:33:08 +02:00 committed by Mathieu Othacehe
parent ea91371466
commit 04380925ea
No known key found for this signature in database
GPG key ID: 8354763531769CA6

View file

@ -583,12 +583,20 @@ (define-public elogind
(build-system meson-build-system)
(arguments
`(#:configure-flags
,#~(let* ((out (assoc-ref %outputs "out"))
;; TODO(core-updates): Use #$output unconditionally.
,#~(let* ((out #$(if (%current-target-system)
#~#$output
#~(assoc-ref %outputs "out")))
(sysconf (string-append out "/etc"))
(libexec (string-append out "/libexec/elogind"))
(dbuspolicy (string-append out "/etc/dbus-1/system.d"))
(shadow (assoc-ref %build-inputs "shadow"))
(shepherd (assoc-ref %build-inputs "shepherd"))
;; TODO(core-updates): use this-package-input unconditionally.
(shadow #$(if (%current-target-system)
(this-package-input "shadow")
#~(assoc-ref %build-inputs "shadow")))
(shepherd #$(if (%current-target-system)
(this-package-input "shepherd")
#~(assoc-ref %build-inputs "shepherd")))
(halt-path (string-append shepherd "/sbin/halt"))
(kexec-path "") ;not available in Guix yet
(nologin-path (string-append shadow "/sbin/nologin"))