gnu: racket: Support cross-compiling the VM packages.
Cross-compilation works for 'racket-vm-cgc', 'racket-vm-bc', and 'racket-vm-cs'. These changes are not enough to cross-compile 'racket-minimal' or 'racket': that would require building and loading cross-compilation pluggins for 'racket-vm-cs', which will be much easier once we can build the package 'raco-cross'. * gnu/packages/racket.scm (racket-vm-cgc): Add 'this-package' when cross-compiling. (racket-vm-bc)[native-inputs]: Adjust accordingly. (racket-vm-cs)[native-inputs]: Use 'racket-vm-cs' instead of 'racket-vm-bc' when cross-compiling. Adapt to changes to 'racket-vm-cgc'. [arguments]<#:configure-flags>: Fix '--enable-scheme' for cross-compilation. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
parent
9ed6e51ceb
commit
cb0d106590
|
@ -312,8 +312,11 @@ (define-public racket-vm-cgc
|
||||||
(source %racket-origin)
|
(source %racket-origin)
|
||||||
(inputs (list ncurses ;; <- common to all variants (for #%terminal)
|
(inputs (list ncurses ;; <- common to all variants (for #%terminal)
|
||||||
libffi)) ;; <- only for BC variants
|
libffi)) ;; <- only for BC variants
|
||||||
(native-inputs (list zuo ;; <- for all variants
|
(native-inputs (cons* zuo ;; <- for all variants
|
||||||
libtool)) ;; <- only for BC variants
|
libtool ;; <- only for BC variants
|
||||||
|
(if (%current-target-system)
|
||||||
|
(list this-package)
|
||||||
|
'())))
|
||||||
(outputs '("out" "debug"))
|
(outputs '("out" "debug"))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
|
@ -401,8 +404,10 @@ (define-public racket-vm-bc
|
||||||
(inherit racket-vm-cgc)
|
(inherit racket-vm-cgc)
|
||||||
(name "racket-vm-bc")
|
(name "racket-vm-bc")
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(modify-inputs (package-native-inputs racket-vm-cgc)
|
(if (%current-target-system)
|
||||||
(prepend racket-vm-cgc)))
|
(package-native-inputs racket-vm-cgc)
|
||||||
|
(modify-inputs (package-native-inputs racket-vm-cgc)
|
||||||
|
(prepend racket-vm-cgc))))
|
||||||
(arguments
|
(arguments
|
||||||
(substitute-keyword-arguments (package-arguments racket-vm-cgc)
|
(substitute-keyword-arguments (package-arguments racket-vm-cgc)
|
||||||
((#:configure-flags _ '())
|
((#:configure-flags _ '())
|
||||||
|
@ -432,11 +437,17 @@ (define-public racket-vm-cs
|
||||||
(prepend zlib lz4)
|
(prepend zlib lz4)
|
||||||
(delete "libffi")))
|
(delete "libffi")))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(modify-inputs (package-native-inputs racket-vm-cgc)
|
(let ((native-inputs (package-native-inputs racket-vm-cgc)))
|
||||||
(delete "libtool")
|
(modify-inputs (if (%current-target-system)
|
||||||
(prepend chez-scheme-for-racket
|
(modify-inputs native-inputs
|
||||||
chez-nanopass-bootstrap
|
(delete "racket-vm-cgc"))
|
||||||
racket-vm-bc)))
|
native-inputs)
|
||||||
|
(delete "libtool")
|
||||||
|
(prepend chez-scheme-for-racket
|
||||||
|
chez-nanopass-bootstrap
|
||||||
|
(if (%current-target-system)
|
||||||
|
racket-vm-cs
|
||||||
|
racket-vm-bc)))))
|
||||||
(arguments
|
(arguments
|
||||||
(substitute-keyword-arguments (package-arguments racket-vm-cgc)
|
(substitute-keyword-arguments (package-arguments racket-vm-cgc)
|
||||||
((#:phases those-phases #~%standard-phases)
|
((#:phases those-phases #~%standard-phases)
|
||||||
|
@ -450,7 +461,7 @@ (define-public racket-vm-cs
|
||||||
"--enable-libz"
|
"--enable-libz"
|
||||||
"--enable-lz4"
|
"--enable-lz4"
|
||||||
(string-append "--enable-scheme="
|
(string-append "--enable-scheme="
|
||||||
#$(this-package-native-input
|
#+(this-package-native-input
|
||||||
"chez-scheme-for-racket")
|
"chez-scheme-for-racket")
|
||||||
"/bin/scheme")
|
"/bin/scheme")
|
||||||
#$racket-vm-common-configure-flags))))
|
#$racket-vm-common-configure-flags))))
|
||||||
|
|
Loading…
Reference in a new issue