packages: 'package-transitive-supported-systems' ignores '%current-target-system'.
Previously 'package-transitive-supported-systems' would enter an infinite loop over the cross-compilation tool chain if %CURRENT-TARGET-SYSTEM was set. * guix/packages.scm (package-transitive-supported-systems)[supported-systems-procedure]: Pass explicit SYSTEM and TARGET parameters. * tests/packages.scm ("supported-package? vs. %current-target-system"): New test.
This commit is contained in:
parent
9724da9abc
commit
0572737a62
@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012-2022 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2015, 2017, 2018, 2019 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
|
||||
@ -1235,7 +1235,7 @@ in INPUTS and their transitive propagated inputs."
|
||||
(_
|
||||
systems)))
|
||||
(package-supported-systems package)
|
||||
(bag-direct-inputs (package->bag package))))))
|
||||
(bag-direct-inputs (package->bag package system #f))))))
|
||||
|
||||
supported-systems)
|
||||
|
||||
|
@ -508,6 +508,16 @@
|
||||
(and (supported-package? p "x86_64-linux")
|
||||
(supported-package? p "armhf-linux"))))
|
||||
|
||||
(test-assert "supported-package? vs. %current-target-system"
|
||||
;; The %CURRENT-TARGET-SYSTEM value should have no influence.
|
||||
(parameterize ((%current-target-system "arm-linux-gnueabihf"))
|
||||
(let ((p (dummy-package "foo"
|
||||
(build-system gnu-build-system)
|
||||
(supported-systems '("x86_64-linux" "armhf-linux")))))
|
||||
(and (supported-package? p "x86_64-linux")
|
||||
(not (supported-package? p "i686-linux"))
|
||||
(supported-package? p "armhf-linux")))))
|
||||
|
||||
(test-skip (if (not %store) 8 0))
|
||||
|
||||
(test-assert "package-source-derivation, file"
|
||||
|
Loading…
Reference in New Issue
Block a user