;;;; -*- Hen -*- (define (dynld-name fn) (make-pathname #f fn ##sys#load-dynamic-extension)) (define version "3.01") (use make) (make ( ("expr.grm.scm" ("expr.grm") (run (csi -s expr.grm))) ((dynld-name "9ML-types") ("types.scm") (compile -O -d2 -S -s types.scm -o ,(dynld-name "9ML-types") -j 9ML-types)) ((dynld-name "9ML-types.import") ("9ML-types.import.scm") (compile -s 9ML-types.import.scm)) ((dynld-name "9ML-parse") ("parse.scm" "expr.grm.scm" "expr-parser.scm") (compile -O -d2 -S -s parse.scm -o ,(dynld-name "9ML-parse") -j 9ML-parse)) ((dynld-name "9ML-parse.import") ("9ML-parse.import.scm") (compile -s 9ML-parse.import.scm)) ;((dynld-name "9ML-ivp-chicken") ("ivp-chicken.scm" ) ;(compile -O -d2 -S -s ivp-chicken.scm -o ,(dynld-name "9ML-ivp-chicken") -j 9ML-ivp-chicken)) ;((dynld-name "9ML-ivp-chicken.import") ( "9ML-ivp-chicken.import.scm" ) ;(compile -s 9ML-ivp-chicken.import.scm)) ((dynld-name "9ML-ivp-mlton") ( "ivp-mlton.scm" ) (compile -O -d2 -S -s ivp-mlton.scm -o ,(dynld-name "9ML-ivp-mlton") -j 9ML-ivp-mlton)) ((dynld-name "9ML-ivp-mlton.import") ( "9ML-ivp-mlton.import.scm" ) (compile -s 9ML-ivp-mlton.import.scm)) ((dynld-name "9ML-alsys-mlton" ) ("alsys-mlton.scm" ) (compile -O -d2 -S -s alsys-mlton.scm -o ,(dynld-name "9ML-alsys-mlton") -j 9ML-alsys-mlton)) ((dynld-name "9ML-alsys-mlton.import") ("9ML-alsys-mlton.import.scm") (compile -s 9ML-alsys-mlton.import.scm)) ) (list (dynld-name "9ML-types") (dynld-name "9ML-types.import") (dynld-name "9ML-parse") (dynld-name "9ML-parse.import") ;(dynld-name "9ML-ivp-chicken") (dynld-name "9ML-ivp-chicken.import") (dynld-name "9ML-ivp-mlton") (dynld-name "9ML-ivp-mlton.import") (dynld-name "9ML-alsys-mlton") (dynld-name "9ML-alsys-mlton.import") ) ) (install-extension ; Name of your extension: '9ML-type ; Files to install for your extension: `(,(dynld-name "9ML-types") ,(dynld-name "9ML-types.import") ) ; Assoc list with properties for your extension: `((version ,version) )) (install-extension ; Name of your extension: '9ML-alsys-mlton ; Files to install for your extension: `(,(dynld-name "9ML-alsys-mlton") ,(dynld-name "9ML-alsys-mlton.import") ) ; Assoc list with properties for your extension: `((version ,version) )) #;(install-extension ; Name of your extension: '9ML-ivp-chicken ; Files to install for your extension: `(,(dynld-name "9ML-ivp-chicken") ,(dynld-name "9ML-ivp-chicken.import") ) ; Assoc list with properties for your extension: `((version ,version) )) (install-extension ; Name of your extension: '9ML-ivp-mlton ; Files to install for your extension: `(,(dynld-name "9ML-ivp-mlton") ,(dynld-name "9ML-ivp-mlton.import") ) ; Assoc list with properties for your extension: `((version ,version) )) (install-extension ; Name of your extension: '9ML-parse ; Files to install for your extension: `(,(dynld-name "9ML-parse") ,(dynld-name "9ML-parse.import") ) ; Assoc list with properties for your extension: `((version ,version) )) (if (deployment-mode) (compile -deploy -uses files -O -d2 network.scm -o ,(make-pathname (installation-prefix) "/bin/9ML-network")) (begin (make ( ("9ML-network" ("network.scm" ) (compile -O -d2 -S network.scm -o 9ML-network )) ) "9ML-network") (install-program '9ML-network `("9ML-network" ) `((version ,version))) ) ) (define (installation-chicken-home) (if (not (installation-prefix)) (chicken-home) (make-pathname `(,(installation-prefix) "share") "chicken") ) ) (define SHARED-DIR (installation-chicken-home)) (define 9ML-DIR (make-pathname SHARED-DIR "9ML")) ;; File Copy Operations (define (*file-copy fn dn) (let ([fn (->string fn)]) (copy-file fn (make-pathname dn fn)) ) ) (define (copy-file-to-9ML-dir fn) (*file-copy (->string fn) 9ML-DIR) ) (if (not (file-exists? 9ML-DIR)) (create-directory/parents 9ML-DIR)) (copy-file-to-9ML-dir "examples/IzhikevichFS_AL.xml") (copy-file-to-9ML-dir "examples/IzhikevichFS_UL.xml") (copy-file-to-9ML-dir "examples/AEIF_AL.xml") (copy-file-to-9ML-dir "examples/AEIF_UL.xml") (copy-file-to-9ML-dir "examples/LIF_AL.xml") (copy-file-to-9ML-dir "examples/LIF_UL.xml") (copy-file-to-9ML-dir "templates/Network.sml.adaptive.tmpl") (copy-file-to-9ML-dir "templates/Sim.sml.adaptive.tmpl") (copy-file-to-9ML-dir "templates/Sim.mlb.adaptive.tmpl") (copy-file-to-9ML-dir "templates/Network.sml.tmpl") (copy-file-to-9ML-dir "templates/Sim.sml.tmpl") (copy-file-to-9ML-dir "templates/Sim.mlb.tmpl") (copy-file-to-9ML-dir "templates/Makefile.tmpl") (copy-file-to-9ML-dir "sml-lib/IntMap.sml") (copy-file-to-9ML-dir "sml-lib/DynArray.sml") (copy-file-to-9ML-dir "sml-lib/SkewBinomialHeap.sml") (copy-file-to-9ML-dir "sml-lib/priority.sml") (copy-file-to-9ML-dir "sml-lib/priority.mlb") (copy-file-to-9ML-dir "sml-lib/digraph.sml") (copy-file-to-9ML-dir "sml-lib/graph.sml") (copy-file-to-9ML-dir "sml-lib/graph.sig") (copy-file-to-9ML-dir "sml-lib/graphimpl.sig") (copy-file-to-9ML-dir "sml-lib/graph.mlb") (copy-file-to-9ML-dir "sml-lib/elecgraph.sml") (copy-file-to-9ML-dir "sml-lib/elecgraph.mlb") (copy-file-to-9ML-dir "sml-lib/tensor.sml") (copy-file-to-9ML-dir "sml-lib/sparse.sml") (copy-file-to-9ML-dir "sml-lib/tensor.mlb") (copy-file-to-9ML-dir "sml-lib/sparse.mlb")