aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--module/hnh/util/path.scm1
-rw-r--r--scripts/all-modules.scm12
2 files changed, 12 insertions, 1 deletions
diff --git a/module/hnh/util/path.scm b/module/hnh/util/path.scm
index ed2d9f24..b0991073 100644
--- a/module/hnh/util/path.scm
+++ b/module/hnh/util/path.scm
@@ -16,6 +16,7 @@
(define path-absolute? absolute-file-name?)
+;; TODO remove intermidiate period components
(define (path-append . strings)
(fold (lambda (s done)
(string-append
diff --git a/scripts/all-modules.scm b/scripts/all-modules.scm
index 613f9db2..23bbb32d 100644
--- a/scripts/all-modules.scm
+++ b/scripts/all-modules.scm
@@ -8,7 +8,9 @@
:use-module ((static-util) :select (get-forms))
:export (all-files-and-modules-under-directory
all-modules-under-directory
- fs-find-base fs-find))
+ fs-find-base fs-find
+ module-file-mapping
+ ))
(define (fs-find dir)
(define files '())
@@ -43,3 +45,11 @@ level modules in those files"
(values
(map car pairs)
(filter identity (map cadr pairs))))
+
+;; Returns an association list from module names the modules
+;; containing filename
+(define (module-file-mapping dir)
+ (filter
+ car
+ (map (lambda (pair) (cons (cadr pair) (car pair)))
+ (all-files-and-modules-under-directory dir))))