1 | ;;; -*- mode: lisp; -*- |
---|
2 | |
---|
3 | (defpackage cl-darcs-system |
---|
4 | (:use :cl :asdf)) |
---|
5 | |
---|
6 | (in-package :cl-darcs-system) |
---|
7 | |
---|
8 | (defsystem cl-darcs |
---|
9 | :description "Darcs client" |
---|
10 | :version "0.3.0" |
---|
11 | :licence "GPL" |
---|
12 | :author "Magnus Henoch <henoch@dtek.chalmers.se>" |
---|
13 | :depends-on (:split-sequence |
---|
14 | ;; HTTP client |
---|
15 | :drakma :puri |
---|
16 | :trivial-gray-streams |
---|
17 | ;; SHA1, hex etc |
---|
18 | :ironclad |
---|
19 | :flexi-streams |
---|
20 | ;; Files and directories |
---|
21 | :cl-fad |
---|
22 | ;; Regexps |
---|
23 | :cl-ppcre |
---|
24 | ;; Diff |
---|
25 | :cl-difflib) |
---|
26 | |
---|
27 | :components |
---|
28 | ((:file "packages") |
---|
29 | (:file "condition" :depends-on ("packages")) |
---|
30 | (:file "util" :depends-on ("packages" "condition" #-allegro "inflate")) |
---|
31 | (:file "unreadable-stream" :depends-on ("packages")) |
---|
32 | (:file "upath" :depends-on ("util")) |
---|
33 | |
---|
34 | (:file "patchinfo" :depends-on ("util")) |
---|
35 | (:file "get" :depends-on ("util")) |
---|
36 | (:file "pull" :depends-on ("util")) |
---|
37 | (:file "prefs" :depends-on ("util")) |
---|
38 | (:file "repo" :depends-on ("util")) |
---|
39 | (:file "diff" :depends-on ("util")) |
---|
40 | (:file "getopt" :depends-on ("packages")) |
---|
41 | (:file "cmdline" :depends-on ("util" "getopt")) |
---|
42 | |
---|
43 | (:file "patch-core" :depends-on ("util")) |
---|
44 | (:file "record" :depends-on ("patch-core")) |
---|
45 | (:file "read-patch" :depends-on ("patch-core")) |
---|
46 | (:file "write-patch" :depends-on ("patch-core")) |
---|
47 | (:file "apply-patch" :depends-on ("patch-core")) |
---|
48 | (:file "invert-patch" :depends-on ("patch-core")) |
---|
49 | (:file "display-patch" :depends-on ("patch-core")) |
---|
50 | (:file "pristine" :depends-on ("patch-core")) |
---|
51 | (:file "touching" :depends-on ("patch-core")) |
---|
52 | (:file "commute" :depends-on ("patch-core")) |
---|
53 | (:file "merge" :depends-on ("patch-core")) |
---|
54 | (:file "unwind" :depends-on ("patch-core")) |
---|
55 | (:file "equal" :depends-on ("patch-core")) |
---|
56 | (:file "send" :depends-on ("patch-core")) |
---|
57 | (:file "revert" :depends-on ("patch-core")) |
---|
58 | (:file "pending" :depends-on ("patch-core")) |
---|
59 | |
---|
60 | ;; Franz' inflate implementation |
---|
61 | #-allegro (:file "ifstar") |
---|
62 | #-allegro (:file "inflate" :depends-on ("ifstar")))) |
---|
63 | |
---|
64 | #+allegro |
---|
65 | (eval-when (:compile-toplevel :load-toplevel :execute) |
---|
66 | (require :inflate)) |
---|
67 | |
---|
68 | (defmethod perform ((o test-op) (c (eql (find-system 'cl-darcs)))) |
---|
69 | (operate 'load-op 'cl-darcs-tests) |
---|
70 | (operate 'test-op 'cl-darcs-tests :force t)) |
---|
71 | |
---|
72 | (defsystem cl-darcs-tests |
---|
73 | :depends-on (cl-darcs fiveam) |
---|
74 | :components |
---|
75 | ((:module "tests" |
---|
76 | :components ((:file "package") |
---|
77 | (:file "gcau-tests"))))) |
---|
78 | |
---|
79 | (defmethod perform ((o test-op) (c (eql (find-system 'cl-darcs-tests)))) |
---|
80 | (operate 'load-op 'cl-darcs-tests) |
---|
81 | (funcall (intern (symbol-name '#:run!) |
---|
82 | (find-package '#:darcs-tests)) |
---|
83 | (intern (symbol-name '#:darcs-suite) |
---|
84 | (find-package '#:darcs-tests)))) |
---|