ikarus --compile-dependencies seems to be working now.
This commit is contained in:
parent
8a809e2f58
commit
8564000d0d
|
@ -291,6 +291,14 @@
|
||||||
[else
|
[else
|
||||||
(let ([x (read)])
|
(let ([x (read)])
|
||||||
(cons x (f (- n 1))))])))]
|
(cons x (f (- n 1))))])))]
|
||||||
|
[(#\L) ;;; list of length > 255
|
||||||
|
(let ([n (read-int p)])
|
||||||
|
(let f ([n n])
|
||||||
|
(cond
|
||||||
|
[(< n 0) (read)]
|
||||||
|
[else
|
||||||
|
(let ([x (read)])
|
||||||
|
(cons x (f (- n 1))))])))]
|
||||||
[else
|
[else
|
||||||
(die who "Unexpected char as a fasl object header" h)])))
|
(die who "Unexpected char as a fasl object header" h)])))
|
||||||
(read))
|
(read))
|
||||||
|
|
|
@ -30,20 +30,29 @@
|
||||||
(define (load-serialized-library filename sk)
|
(define (load-serialized-library filename sk)
|
||||||
;;; TODO: check file last-modified date
|
;;; TODO: check file last-modified date
|
||||||
(let ([ikfasl (string-append filename ".ikfasl")])
|
(let ([ikfasl (string-append filename ".ikfasl")])
|
||||||
(and (file-exists? ikfasl)
|
(cond
|
||||||
(let ([x
|
[(not (file-exists? ikfasl)) #f]
|
||||||
(let ([p (open-file-input-port ikfasl)])
|
[(<= (file-ctime ikfasl) (file-ctime filename))
|
||||||
(let ([x (fasl-read p)])
|
(printf
|
||||||
(close-input-port p)
|
"WARNING: not using fasl file ~s because it is older \
|
||||||
x))])
|
than the source file ~s\n"
|
||||||
(if (serialized-library? x)
|
ikfasl
|
||||||
(apply sk (serialized-library-contents x))
|
filename)
|
||||||
(begin
|
#f]
|
||||||
(printf
|
[else
|
||||||
"WARNING: not using fasl file ~s because it was \
|
(let ([x
|
||||||
compiled with a different version of ikarus.\n"
|
(let ([p (open-file-input-port ikfasl)])
|
||||||
ikfasl)
|
(let ([x (fasl-read p)])
|
||||||
#f))))))
|
(close-input-port p)
|
||||||
|
x))])
|
||||||
|
(if (serialized-library? x)
|
||||||
|
(apply sk (serialized-library-contents x))
|
||||||
|
(begin
|
||||||
|
(printf
|
||||||
|
"WARNING: not using fasl file ~s because it was \
|
||||||
|
compiled with a different version of ikarus.\n"
|
||||||
|
ikfasl)
|
||||||
|
#f)))])))
|
||||||
|
|
||||||
(define (do-serialize-library filename contents)
|
(define (do-serialize-library filename contents)
|
||||||
(let ([ikfasl (string-append filename ".ikfasl")])
|
(let ([ikfasl (string-append filename ".ikfasl")])
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
1395
|
1396
|
||||||
|
|
Loading…
Reference in New Issue