mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2025-01-11 13:49:23 -05:00
gnu: cdparanoia: Fix cross-compiling.
* gnu/packages/cdrom.scm (cdparanoia) [native-inputs]: when cross compiling to {riscv,aarch}64-linux-gnu, add config. [arguments]: when target {riscv,aarch}64-linux-gnu, add update-config-scripts phase. <#:configure-flags>: when cross-compiling, use `(assoc-ref %outputs "out")'. Change-Id: I442c668c3d52c241f0d405f51ea8d995bfefd3fd Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
This commit is contained in:
parent
d460b12d76
commit
eeb29e167b
1 changed files with 28 additions and 2 deletions
|
@ -14,6 +14,7 @@
|
||||||
;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2019 Eric Bavier <bavier@member.fsf.org>
|
;;; Copyright © 2019 Eric Bavier <bavier@member.fsf.org>
|
||||||
;;; Copyright © 2020 Timotej Lazar <timotej.lazar@araneo.si>
|
;;; Copyright © 2020 Timotej Lazar <timotej.lazar@araneo.si>
|
||||||
|
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -233,10 +234,35 @@ (define-public cdparanoia
|
||||||
`(#:tests? #f ; there is no check target
|
`(#:tests? #f ; there is no check target
|
||||||
#:parallel-build? #f ;randomly fails to link
|
#:parallel-build? #f ;randomly fails to link
|
||||||
#:configure-flags ; Add $libdir to the RUNPATH of all the executables.
|
#:configure-flags ; Add $libdir to the RUNPATH of all the executables.
|
||||||
(list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib"))
|
(list (string-append "LDFLAGS=-Wl,-rpath="
|
||||||
|
,(if (%current-target-system)
|
||||||
|
'(assoc-ref %outputs "out")
|
||||||
|
'%output)
|
||||||
|
"/lib"))
|
||||||
;; Building in parallel is flaky: “ld: […]/cachetest.c:393: undefined
|
;; Building in parallel is flaky: “ld: […]/cachetest.c:393: undefined
|
||||||
;; reference to `paranoia_free'”.
|
;; reference to `paranoia_free'”.
|
||||||
#:parallel-build? #f))
|
#:parallel-build? #f
|
||||||
|
,@(if (and (or (target-riscv64?)
|
||||||
|
(target-aarch64?))
|
||||||
|
(%current-target-system))
|
||||||
|
'(#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'update-config-scripts
|
||||||
|
(lambda* (#:key inputs native-inputs #:allow-other-keys)
|
||||||
|
;; Replace outdated config.guess and config.sub.
|
||||||
|
(for-each (lambda (file)
|
||||||
|
(install-file
|
||||||
|
(search-input-file
|
||||||
|
(or native-inputs inputs)
|
||||||
|
(string-append "/bin/" file)) "."))
|
||||||
|
'("config.guess" "config.sub"))))))
|
||||||
|
'())))
|
||||||
|
(native-inputs
|
||||||
|
(if (and (or (target-riscv64?)
|
||||||
|
(target-aarch64?))
|
||||||
|
(%current-target-system))
|
||||||
|
(list config)
|
||||||
|
'()))
|
||||||
(home-page "https://www.xiph.org/paranoia/")
|
(home-page "https://www.xiph.org/paranoia/")
|
||||||
(synopsis "Audio CD reading utility")
|
(synopsis "Audio CD reading utility")
|
||||||
(description "Cdparanoia retrieves audio tracks from CDDA capable CDROM
|
(description "Cdparanoia retrieves audio tracks from CDDA capable CDROM
|
||||||
|
|
Loading…
Reference in a new issue