~ chicken-core (chicken-5) 0c64540da8de435dd0cf8365e8ab3756c98bce22
commit 0c64540da8de435dd0cf8365e8ab3756c98bce22
Author: Evan Hanson <evhan@foldling.org>
AuthorDate: Fri Oct 28 13:56:55 2016 +1300
Commit: Evan Hanson <evhan@foldling.org>
CommitDate: Fri Oct 28 13:57:01 2016 +1300
Remove use of `##sys#fudge` from setversion script
Also, simplify buildversion handling and fix imports for chicken-5.
diff --git a/scripts/setversion b/scripts/setversion
index f1db588b..4656cf85 100755
--- a/scripts/setversion
+++ b/scripts/setversion
@@ -3,9 +3,9 @@
exec csi -s "$0" "$@"
|#
-(use srfi-1 utils posix irregex)
+(use data-structures files format io utils irregex)
-(define buildversion (->string (car (call-with-input-file "buildversion" read-all))))
+(define buildversion (with-input-from-file "buildversion" read))
(define files '("README" "manual/The User's Manual"))
@@ -39,8 +39,9 @@ exec csi -s "$0" "$@"
(irregex-match-substring m 4))))
(define (main args)
- (let ((major (##sys#fudge 41))
- (minor (##sys#fudge 43)))
+ (let* ((version (parse-version (chicken-version)))
+ (major (cadr version))
+ (minor (caddr version)))
(cond ((member "-set" args) =>
(lambda (a)
(set! buildversion (cadr a))
@@ -57,7 +58,7 @@ exec csi -s "$0" "$@"
(set! minor min)
(set! buildversion
(conc maj "." min "." (add1 (string->number pl)) huh)) ) ) )
- (with-output-to-file "buildversion" (cut display buildversion) binary:)
+ (with-output-to-file "buildversion" (cut print buildversion) binary:)
(system* "cat buildversion")
(let ([vstr (sprintf "version ~A" buildversion)])
(for-each (cut patch <> (irregex "version [0-9][-.0-9a-zA-Z]+") vstr) files) )
Trap