summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2017-05-19 10:45:12 +0200
committerLudovic Courtès <ludo@gnu.org>2017-05-19 10:45:12 +0200
commit7afc2aabdf2041faac1d1adfc5752f1e92d29822 (patch)
treeb311b6efce647c94d7db3f1305beb89302a8d9f4
parentffa5e0a6d2851832b7f0e6f943bc69e69e1bc8b0 (diff)
downloadguix-7afc2aabdf2041faac1d1adfc5752f1e92d29822.tar.gz
modules: Add more source-less modules.
* guix/modules.scm (%source-less-modules): New variable.
(source-module-dependencies): Use it.
-rw-r--r--guix/modules.scm11
1 files changed, 8 insertions, 3 deletions
diff --git a/guix/modules.scm b/guix/modules.scm
index 8c63f21a97..24b5903579 100644
--- a/guix/modules.scm
+++ b/guix/modules.scm
@@ -95,11 +95,16 @@ depends on."
     (('gnu _ ...) #t)
     (_ #f)))
 
+(define %source-less-modules
+  ;; These are modules that have no corresponding source files or a source
+  ;; file different from what you'd expect.
+  '((system syntax)                             ;2.0, defined in boot-9
+    (ice-9 ports internal)                      ;2.2, defined in (ice-9 ports)
+    (system syntax internal)))                  ;2.2, defined in boot-9
+
 (define* (source-module-dependencies module #:optional (load-path %load-path))
   "Return the modules used by MODULE by looking at its source code."
-  ;; The (system syntax) module is a special-case because it has no
-  ;; corresponding source file (as of Guile 2.0.)
-  (if (equal? module '(system syntax))
+  (if (member module %source-less-modules)
       '()
       (module-file-dependencies
        (search-path load-path