rekado pushed a commit to branch master
in repository guix.
commit 6ce68a7a83a6106da9abaa818e25084e882219b5
Author: Ricardo Wurmus <[email protected]>
AuthorDate: Fri Feb 17 22:20:45 2023 +0100
import/cran: Add directory-needs-esbuild?.
* guix/import/cran.scm (directory-needs-esbuild?): New procedure.
(source-dir->dependencies): Use it.
---
guix/import/cran.scm | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/guix/import/cran.scm b/guix/import/cran.scm
index c4b36da12b..632d632163 100644
--- a/guix/import/cran.scm
+++ b/guix/import/cran.scm
@@ -447,6 +447,13 @@ empty list when the FIELD cannot be found."
(() #f)
(_ #t)))
+(define (directory-needs-esbuild? dir)
+ "Check if the directory DIR contains minified JavaScript files and thus
+needs a JavaScript compiler."
+ (match (find-files dir "\\.min.js$")
+ (() #f)
+ (_ #t)))
+
(define (files-match-pattern? directory regexp . file-patterns)
"Return #T if any of the files matching FILE-PATTERNS in the DIRECTORY match
the given REGEXP."
@@ -479,6 +486,7 @@ of package names for INPUTS and another list of names of
NATIVE-INPUTS."
(values
(if (directory-needs-zlib? dir) '("zlib") '())
(append
+ (if (directory-needs-esbuild? dir) '("esbuild") '())
(if (directory-needs-pkg-config? dir) '("pkg-config") '())
(if (directory-needs-fortran? dir) '("gfortran") '()))))