summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2018-07-03 13:49:28 +0200
committerLudovic Courtès <ludo@gnu.org>2018-07-03 17:50:04 +0200
commit86eee976f5ef21fa132de9827ad09a026bfdfd63 (patch)
tree9f34a6b4c4c08505666b9b9dda0ff556f0247342
parentf3f1d0a5578b4ad6d85494283eedfaa62b28fe2c (diff)
Revert "packages: Optimize 'package-transitive-supported-systems'."
This reverts commit 24420f5ffabfbdbe913a5765e5c00e17de18fb4c. This broke 'package-transitive-supported-systems', which would return the union of supported systems instead of the intersection.
-rw-r--r--guix/packages.scm19
1 files changed, 9 insertions, 10 deletions
diff --git a/guix/packages.scm b/guix/packages.scm
index cd7d3b895cb..c762fa7c397 100644
--- a/guix/packages.scm
+++ b/guix/packages.scm
@@ -766,16 +766,15 @@ in INPUTS and their transitive propagated inputs."
766 (mlambdaq (package) 766 (mlambdaq (package)
767 "Return the intersection of the systems supported by PACKAGE and those 767 "Return the intersection of the systems supported by PACKAGE and those
768supported by its dependencies." 768supported by its dependencies."
769 (set->list 769 (fold (lambda (input systems)
770 (fold (lambda (input systems) 770 (match input
771 (match input 771 ((label (? package? p) . _)
772 ((label (? package? p) . _) 772 (lset-intersection
773 (fold set-insert systems 773 string=? systems (package-transitive-supported-systems p)))
774 (package-transitive-supported-systems p))) 774 (_
775 (_ 775 systems)))
776 systems))) 776 (package-supported-systems package)
777 (list->set (package-supported-systems package)) 777 (bag-direct-inputs (package->bag package)))))
778 (bag-direct-inputs (package->bag package))))))
779 778
780(define* (supported-package? package #:optional (system (%current-system))) 779(define* (supported-package? package #:optional (system (%current-system)))
781 "Return true if PACKAGE is supported on SYSTEM--i.e., if PACKAGE and all its 780 "Return true if PACKAGE is supported on SYSTEM--i.e., if PACKAGE and all its