;;;; -*- Hen -*- (define (dynld-name fn) (make-pathname #f fn ##sys#load-dynamic-extension)) (define version "0.25") (use make) (make ( ("expr.grm.scm" ("expr.grm") (run (csi -s expr.grm))) ((dynld-name "salt") ("salt.scm" "env.scm" "parser.scm" "expr.grm.scm" "codegen.scm" ) (compile -O -d2 -S -s -I ,(repository-path) salt.scm -j salt)) ((dynld-name "salt.import") ("salt.import.scm") (compile -O -d2 -S -s salt.import.scm)) ) (list (dynld-name "salt") (dynld-name "salt.import")) ) (install-extension ; Name of your extension: 'salt ; Files to install for your extension: `(,(dynld-name "salt") ,(dynld-name "salt.import") ) ; Assoc list with properties for your extension: `((version ,version) )) ;; From setup-header.scm by Kon Lovett (define (installation-chicken-home) (if (not (installation-prefix)) (chicken-home) (make-pathname `(,(installation-prefix) "share") "chicken") ) ) ;;; Constants & Procedures (define SHARED-DIR (installation-chicken-home)) (define SALT-DIR (make-pathname SHARED-DIR "salt")) ;; File Copy Operations (define (copy-file-to-salt-dir fn) (let ([fn (->string fn)]) (copy-file fn (make-pathname SALT-DIR fn)) ) ) (copy-file-to-salt-dir "sml-lib/mlb-path-map") (copy-file-to-salt-dir "sml-lib/rk/rk.sml") (copy-file-to-salt-dir "sml-lib/rk/rk.mlb") (copy-file-to-salt-dir "sml-lib/rk/crk.sml") (copy-file-to-salt-dir "sml-lib/rk/crk.mlb") (copy-file-to-salt-dir "sml-lib/rk/crklib.c") (copy-file-to-salt-dir "sml-lib/rk/crk_common.h") (copy-file-to-salt-dir "sml-lib/dynamics/dynamics.sig") (copy-file-to-salt-dir "sml-lib/dynamics/dynamics.sml") (copy-file-to-salt-dir "sml-lib/dynamics/dynamics.mlb") (copy-file-to-salt-dir "sml-lib/queue/fun-queue.sig") (copy-file-to-salt-dir "sml-lib/queue/fun-queue.sml") (copy-file-to-salt-dir "sml-lib/queue/fun-queue.mlb") (copy-file-to-salt-dir "sml-lib/prioq/SkewBinomialHeap.sml") (copy-file-to-salt-dir "sml-lib/prioq/prioq.sml") (copy-file-to-salt-dir "sml-lib/prioq/prioq.mlb") (copy-file-to-salt-dir "sml-lib/lininterp/lininterp.sml") (copy-file-to-salt-dir "sml-lib/lininterp/lininterp.mlb") (copy-file-to-salt-dir "sml-lib/randmtzig/randmtzig.sml") (copy-file-to-salt-dir "sml-lib/randmtzig/randmtziglib.c") (copy-file-to-salt-dir "sml-lib/randmtzig/randmtzig.mlb") (copy-file-to-salt-dir "sml-lib/findroot/findroot.sml") (copy-file-to-salt-dir "sml-lib/findroot/findroot.mlb") (copy-file-to-salt-dir "sml-lib/printf/printf.sml") (copy-file-to-salt-dir "sml-lib/printf/printf.mlb") (copy-file-to-salt-dir "sml-lib/state/state.sml") (copy-file-to-salt-dir "sml-lib/state/state.mlb") (copy-file-to-salt-dir "sml-lib/model/model.sig") (copy-file-to-salt-dir "sml-lib/model/model-randmtzig.sig") (copy-file-to-salt-dir "sml-lib/model/prelude.sml") (copy-file-to-salt-dir "sml-lib/model/random.sml")