Added functions to set up and tear down a persistent compilation environment.
[clinton/parenscript.git] / parenscript.asd
CommitLineData
5fc9bcb3
MB
1;;;; -*- lisp -*-
2
8e198a08
MB
3(in-package :cl-user)
4
5fc9bcb3 5(defpackage :parenscript.system
8e198a08
MB
6 (:use :cl :asdf))
7
5fc9bcb3 8(in-package :parenscript.system)
8e198a08 9
5fc9bcb3 10(defsystem :parenscript
c2faa6a0
LC
11 :name "parenscript"
12 :author "Manuel Odendahl <manuel@bl0rg.net>"
13 :version "0"
3eb7802d 14 :maintainer "Vladimir Sedach <vsedach@gmail.com>"
c2faa6a0 15 :licence "BSD"
9da682ca 16 :description "Parenscript is a lispy language that compiles to Javascript."
c2faa6a0
LC
17 :components ((:static-file "parenscript.asd")
18 (:module :src
19 :components ((:file "package")
20 (:file "utils" :depends-on ("package"))
5aa10005
RD
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"))
171bbab3 24 (:file "builtin-packages" :depends-on ("parser"))
9da682ca 25 (:file "deprecated-interface" :depends-on ("parser"))
5aa10005
RD
26 (:file "js-macrology" :depends-on ("deprecated-interface"))
27 (:file "ps-macrology" :depends-on ("js-macrology"))
28 (:file "js-translation" :depends-on ("ps-macrology"))
29; (:file "js-ugly-translation" :depends-on ("js-translation"))
30 (:file "reader" :depends-on ("parser"))
171bbab3 31 (:file "compilation-interface" :depends-on ("package" "reader" "js-translation" "builtin-packages")); "js-ugly-translation"))
a9fce0a7 32 (:file "paren-asdf" :depends-on ("package" "compilation-interface"))
9da682ca 33 ;; standard library
f1b03319 34 (:module :lib
9da682ca
RD
35 :components ((:static-file "functional.lisp")
36 (:file "js-html")
37 (:file "css" )
38 (:file "js-utils"))
39 :depends-on ("compilation-interface")))))
40 :depends-on ())
754b8dbb
MB
41
42(defmethod asdf:perform :after ((op asdf:load-op) (system (eql (asdf:find-system :parenscript))))
43 (pushnew :parenscript cl:*features*))
f1d71c7a 44
16317044
HH
45(defmethod asdf:perform ((o test-op) (c (eql (find-system :parenscript))))
46 (asdf:operate 'asdf:test-op :parenscript.test))
47
f1d71c7a
LC
48(defsystem :parenscript.test
49 :depends-on (:parenscript :fiveam :cl-ppcre)
50 :components ((:module :t
51 :components ((:file "test-package")
52 (:file "test" :depends-on ("test-package"))
53 (:file "ref2test" :depends-on ("test"))
e2932347 54 (:file "reference-tests" :depends-on ("test"))
171bbab3
RD
55 (:file "ps-tests" :depends-on ("test"))
56 (:file "package-system-tests" :depends-on ("test"))))))
57
16317044
HH
58
59(defmethod asdf:perform ((o test-op) (c (eql (find-system :parenscript.test))))
60 (asdf:operate 'asdf:load-op :parenscript.test)
61 (funcall (intern (symbol-name :run-tests)
171bbab3 62 (find-package :parenscript-test))))