summaryrefslogtreecommitdiff
path: root/guix
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2019-05-23 10:54:17 +0200
committerRicardo Wurmus <rekado@elephly.net>2019-05-23 16:10:32 +0200
commite96619baf748c589c23eae1b61a38144177b7baf (patch)
treebf4488fbd5464ebdbeaf2a7bdfb759bda2d4cfe4 /guix
parent0f3794fb7c480e845ea3842c70abd317b26ec8f1 (diff)
downloadgnu-guix-e96619baf748c589c23eae1b61a38144177b7baf.tar
gnu-guix-e96619baf748c589c23eae1b61a38144177b7baf.tar.gz
import: cran: Ignore invalid packages.
* guix/import/cran.scm (invalid-packages): New variable. (description->package): Use it.
Diffstat (limited to 'guix')
-rw-r--r--guix/import/cran.scm8
1 files changed, 7 insertions, 1 deletions
diff --git a/guix/import/cran.scm b/guix/import/cran.scm
index f08ff61990..4763fccd36 100644
--- a/guix/import/cran.scm
+++ b/guix/import/cran.scm
@@ -237,6 +237,11 @@ empty list when the FIELD cannot be found."
"translations"
"utils"))
+;; The field for system dependencies is often abused to specify non-package
+;; dependencies (such as c++11). This list is used to ignore them.
+(define invalid-packages
+ (list "c++11"))
+
(define cran-guix-name (cut guix-name "r-" <>))
(define (needs-fortran? tarball)
@@ -310,7 +315,8 @@ from the alist META, which was derived from the R package's DESCRIPTION file."
(if (needs-zlib? tarball) '("zlib") '())
(map string-downcase (listify meta "SystemRequirements"))))
(propagate (filter (lambda (name)
- (not (member name default-r-packages)))
+ (not (member name (append default-r-packages
+ invalid-packages))))
(lset-union equal?
(listify meta "Imports")
(listify meta "LinkingTo")