;; -*- scheme -*- ;; Store the version for the reflective operations and the build and ;; packaging process. All version numbers and reflective references ;; are derived from the planet version number. (define planet-version '(1 12)) (define info '((define name "Staapl") (define blurb '("A collection of abstractions for metaprogramming microcontrollers.")) (define repositories '("4.x")) (define primary-file '("pic18.ss" ;; PIC18 compiler. "staaplc.ss" ;; command line compiler "live.ss")) ;; interaction tools (define homepage "http://zwizwa.be/staapl") (define categories '(devtools metaprogramming)) (define scribblings '(("scribblings/staapl.scrbl" ()))) (define release-notes '(div () "See the " (a ((href "http://zwizwa.be/ramblings/staapl-blog")) "Staapl blog") " for release notes.")))) ;; ----------------------------------------------------------------- (require racket/pretty) (define staapl-version (format "0.~a.~a" (+ 4 (car planet-version)) (cadr planet-version))) (define-syntax-rule (patch filename . body) (begin (with-handlers ((void void)) (delete-file filename)) (with-output-to-file filename (lambda () . body)))) (patch "planet-version.txt" (apply printf "~a ~a\n" planet-version)) (patch "staapl-version.txt" (printf "~a\n" staapl-version)) (patch "staapl/info.ss" (printf "#lang setup/infotab\n;; *** generated from bin/release ***\n") (for-each pretty-print info) (pretty-print `(define version ,staapl-version))) (printf "updated versions:\n staapl ~a\n planet ~a\n" staapl-version planet-version)