From 89be82ec25fd2c924f8601f554e51aefa8dfa6b2 Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Fri, 3 Jan 2020 15:39:22 -0500 Subject: [PATCH] WIP --- test-lib-dep.scm | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/test-lib-dep.scm b/test-lib-dep.scm index f64ef922..bf6db81b 100644 --- a/test-lib-dep.scm +++ b/test-lib-dep.scm @@ -2,30 +2,33 @@ (scheme base) (scheme write) (scheme cyclone libraries) + (scheme cyclone pretty-print) ) (define append-dirs '()) (define prepend-dirs '()) -;(define lib-dep '(tmp)) (define lib-dep '(scheme cyclone common2)) -(let* ((sld-file (lib:import->filename lib-dep ".sld" append-dirs prepend-dirs)) - (obj-file (lib:import->filename lib-dep ".o" append-dirs prepend-dirs)) - ) - (write (list - (file-mtime sld-file) - (file-mtime obj-file) - (recompile? lib-dep) - ))) +(pretty-print (list + (list '(tmp) (recompile? '(tmp))) + (list '(scheme cyclone common) (recompile? '(scheme cyclone common))) + (list lib-dep (recompile? lib-dep)) +)) (define (recompile? lib-dep) (let* ((sld-file (lib:import->filename lib-dep ".sld" append-dirs prepend-dirs)) - (obj-file (lib:import->filename lib-dep ".o" append-dirs prepend-dirs)) ;; TODO: update base name?? + (base (basename sld-file ".sld")) + (obj-file (string-append base ".o")) ) (> (file-mtime sld-file) (file-mtime obj-file)))) ;; Is obj file out of date?? +(define (basename filename ext) + (let* ((len (string-length filename)) + (ext-len (string-length ext))) + (substring filename 0 (- len ext-len)))) + (define-c file-mtime "(void *data, int argc, closure _, object k, object filename)" " make_double(box, 0.0);