diff options
author | Ludovic Courtès <ludo@gnu.org> | 2016-01-03 14:53:03 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2016-01-03 14:53:03 +0100 |
commit | 53334dd6e9e296e17110ebcd2b1f93f117ffe36a (patch) | |
tree | 2653db2eab9a204dab892ea8b6812cadf7209e84 /gnu/packages.scm | |
parent | 1575dcd134f4fae7255787293f4988bbd043de95 (diff) | |
parent | 51385362f76e2f823ac8d8cf720d06c386504069 (diff) | |
download | guix-patches-53334dd6e9e296e17110ebcd2b1f93f117ffe36a.tar guix-patches-53334dd6e9e296e17110ebcd2b1f93f117ffe36a.tar.gz |
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu/packages.scm')
-rw-r--r-- | gnu/packages.scm | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/gnu/packages.scm b/gnu/packages.scm index fb277389c7..b309a7806d 100644 --- a/gnu/packages.scm +++ b/gnu/packages.scm @@ -46,10 +46,6 @@ find-best-packages-by-name find-newest-available-packages - package-direct-dependents - package-transitive-dependents - package-covering-dependents - check-package-freshness specification->package @@ -263,63 +259,6 @@ VERSION." (#f '())))) -(define* (vhash-refq vhash key #:optional (dflt #f)) - "Look up KEY in the vhash VHASH, and return the value (if any) associated -with it. If KEY is not found, return DFLT (or `#f' if no DFLT argument is -supplied). Uses `eq?' for equality testing." - (or (and=> (vhash-assq key vhash) cdr) - dflt)) - -(define package-dependencies - (memoize - (lambda () - "Return a vhash keyed by package, and with associated values that are a -list of packages that depend on that package." - (fold-packages - (lambda (package dag) - (fold - (lambda (in d) - ;; Insert a graph edge from each of package's inputs to package. - (vhash-consq in - (cons package (vhash-refq d in '())) - (vhash-delq in d))) - dag - (match (package-direct-inputs package) - (((labels packages . _) ...) - packages) ))) - vlist-null)))) - -(define (package-direct-dependents packages) - "Return a list of packages from the distribution that directly depend on the -packages in PACKAGES." - (delete-duplicates - (concatenate - (map (lambda (p) - (vhash-refq (package-dependencies) p '())) - packages)))) - -(define (package-transitive-dependents packages) - "Return the transitive dependent packages of the distribution packages in -PACKAGES---i.e. the dependents of those packages, plus their dependents, -recursively." - (let ((dependency-dag (package-dependencies))) - (fold-tree - cons '() - (lambda (node) (vhash-refq dependency-dag node)) - ;; Start with the dependents to avoid including PACKAGES in the result. - (package-direct-dependents packages)))) - -(define (package-covering-dependents packages) - "Return a minimal list of packages from the distribution whose dependencies -include all of PACKAGES and all packages that depend on PACKAGES." - (let ((dependency-dag (package-dependencies))) - (fold-tree-leaves - cons '() - (lambda (node) (vhash-refq dependency-dag node)) - ;; Start with the dependents to avoid including PACKAGES in the result. - (package-direct-dependents packages)))) - - (define %sigint-prompt ;; The prompt to jump to upon SIGINT. (make-prompt-tag "interruptible")) |