Bumped version and copyright; cleanup formatting in system defs; standardized test-op
[cl-graph.git] / cl-graph.asd
1 ;;; -*- Mode: Lisp; package: cl-user; Syntax: Common-lisp; Base: 10 -*-
2
3 (in-package #:common-lisp-user)
4 (defpackage #:asdf-cl-graph (:use #:cl #:asdf))
5 (in-package #:asdf-cl-graph)
6
7 (unless (find-system 'asdf-system-connections nil)
8  (when (find-package 'asdf-install)
9    (print "Trying to install asdf-system-connections with ASDF-Install...")
10    (funcall (intern (symbol-name :install) :asdf-install) 'asdf-system-connections)))
11 ;; give up with a useful (?) error message
12 (unless (find-system 'asdf-system-connections nil)
13   (error "The CL-Graph system requires ASDF-SYSTEM-CONNECTIONS. See 
14 http://www.cliki.net/asdf-system-connections for details and download
15 instructions."))
16
17 (asdf:operate 'asdf:load-op 'asdf-system-connections)
18
19 (defsystem cl-graph
20   :version "0.8.1"
21   :author "Gary Warren King <gwking@metabang.com>"
22   :maintainer "Gary Warren King <gwking@metabang.com>"
23   :licence "MIT Style License"
24   :description "Graph manipulation utilities for Common Lisp"
25   :components ((:module 
26                 "dev"
27                 :components 
28                 ((:file "package")
29                  (:file "api"
30                         :depends-on ("package"))
31                  (:file "macros"
32                         :depends-on ("package"))
33                  (:file "graph"
34                         :depends-on ("api" "macros"))
35                  (:file "graph-container"
36                         :depends-on ("graph"))
37                  (:file "graph-matrix"
38                         :depends-on ("graph"))
39                  (:file "graph-metrics"
40                         :depends-on ("graph"))
41                  (:file "graph-algorithms"
42                         :depends-on ("graph"))
43                                      
44                  (:static-file "notes.text")
45
46                  (:module "graphviz" :depends-on ("graph")
47                           :components ((:file "graphviz-support")))))
48                (:module 
49                 "website"
50                 :components 
51                 ((:module "source"
52                           :components ((:static-file "index.lml"))))))
53   :in-order-to ((test-op (load-op cl-graph-test)))
54   :perform (test-op :after (op c)
55                     (describe 
56                      (funcall (intern (symbol-name '#:run-tests) :lift) 
57                               :suite '#:cl-graph-test)))
58   :depends-on (metatilities 
59                cl-containers
60                metabang-bind
61                cl-mathstats
62                ;; makes ASDF-Install get this automatically
63                asdf-system-connections
64                ))
65
66 (defmethod operation-done-p 
67            ((o test-op) (c (eql (find-system 'cl-graph))))
68   (values nil))
69
70 #+asdf-system-connections
71 (asdf:defsystem-connection cl-graph-and-cl-variates
72   :requires (cl-graph cl-variates)
73   :components ((:module 
74                 "dev"
75                 :components
76                 ((:file "graph-and-variates")
77                  (:file "graph-generation"
78                         :depends-on ("graph-and-variates"))))))
79
80 #+asdf-system-connections
81 (asdf:defsystem-connection cl-graph-and-cl-graphviz
82   :requires (cl-graph cl-graphviz)
83   :components ((:module 
84                 "dev"
85                 :components
86                 ((:module "graphviz"
87                           :components
88                           ((:file "graphviz-support-optional")))))))
89
90 #+asdf-system-connections
91 (asdf:defsystem-connection cl-graph-and-metacopy
92   :requires (cl-graph metacopy)
93   :components ((:module 
94                 "dev"
95                 :components ((:file "copying")))))