5 (defpackage :parenscript.system
8 (in-package :parenscript.system)
10 (defsystem :parenscript
12 :author "Manuel Odendahl <manuel@bl0rg.net>"
14 :maintainer "Vladimir Sedach <vsedach@gmail.com>"
16 :description "Parenscript is a lispy language that compiles to Javascript."
17 :components ((:static-file "parenscript.asd")
19 :components ((:file "package")
20 (:file "utils" :depends-on ("package"))
21 (:file "js-source-model" :depends-on ("package" "utils"))
22 (:file "ps-source-model" :depends-on ("js-source-model"))
23 (:file "parser" :depends-on ("js-source-model" "ps-source-model"))
24 (:file "deprecated-interface" :depends-on ("parser"))
25 (:file "js-macrology" :depends-on ("deprecated-interface"))
26 (:file "ps-macrology" :depends-on ("js-macrology"))
27 (:file "js-translation" :depends-on ("ps-macrology"))
28 ; (:file "js-ugly-translation" :depends-on ("js-translation"))
29 (:file "reader" :depends-on ("parser"))
30 (:file "compilation-interface" :depends-on ("package" "reader" "js-translation")); "js-ugly-translation"))
33 :components ((:static-file "functional.lisp")
37 :depends-on ("compilation-interface")))))
40 (defmethod asdf:perform :after ((op asdf:load-op) (system (eql (asdf:find-system :parenscript))))
41 (pushnew :parenscript cl:*features*))
43 (defmethod asdf:perform ((o test-op) (c (eql (find-system :parenscript))))
44 (asdf:operate 'asdf:test-op :parenscript.test))
46 (defsystem :parenscript.test
47 :depends-on (:parenscript :fiveam :cl-ppcre)
48 :components ((:module :t
49 :components ((:file "test-package")
50 (:file "test" :depends-on ("test-package"))
51 (:file "ref2test" :depends-on ("test"))
52 (:file "reference-tests" :depends-on ("test"))
53 (:file "ps-tests" :depends-on ("test"))))))
55 (defmethod asdf:perform ((o test-op) (c (eql (find-system :parenscript.test))))
56 (asdf:operate 'asdf:load-op :parenscript.test)
57 (funcall (intern (symbol-name :run-tests)
58 (find-package :js-test))))