Release Release 0.8.5
[bordeaux-threads.git] / bordeaux-threads.asd
blobcf67cafe84ad4cf64508a9d7871a526a9923463f
1 ;;;; -*- Mode: Lisp; indent-tabs-mode: nil -*-
3 #|
4 Copyright 2006,2007 Greg Pfeil
6 Distributed under the MIT license (see LICENSE file)
7 |#
9 #.(unless (or #+asdf3.1 (version<= "3.1" (asdf-version)))
10     (error "You need ASDF >= 3.1 to load this system correctly."))
12 (eval-when (:compile-toplevel :load-toplevel :execute)
13   #+(or armedbear
14         (and allegro multiprocessing)
15         (and clisp mt)
16         (and openmcl openmcl-native-threads)
17         (and cmu mp)
18         corman
19         (and ecl threads)
20         mkcl
21         lispworks
22         (and digitool ccl-5.1)
23         (and sbcl sb-thread)
24         scl)
25   (pushnew :thread-support *features*))
27 (defsystem :bordeaux-threads
28   :author "Greg Pfeil <greg@technomadic.org>"
29   :licence "MIT"
30   :description "Bordeaux Threads makes writing portable multi-threaded apps simple."
31   :version (:read-file-form "version.sexp")
32   :depends-on (:alexandria
33                #+(and allegro (version>= 9))       (:require "smputil")
34                #+(and allegro (not (version>= 9))) (:require "process")
35                #+corman                            (:require "threads"))
36   :components ((:module "src"
37                 :serial t
38                 :components
39                 ((:file "pkgdcl")
40                  (:file "bordeaux-threads")
41                  (:file #+(and thread-support armedbear) "impl-abcl"
42                         #+(and thread-support allegro)   "impl-allegro"
43                         #+(and thread-support clisp)     "impl-clisp"
44                         #+(and thread-support openmcl)   "impl-clozure"
45                         #+(and thread-support cmu)       "impl-cmucl"
46                         #+(and thread-support corman)    "impl-corman"
47                         #+(and thread-support ecl)       "impl-ecl"
48                         #+(and thread-support mkcl)      "impl-mkcl"
49                         #+(and thread-support lispworks) "impl-lispworks"
50                         #+(and thread-support digitool)  "impl-mcl"
51                         #+(and thread-support sbcl)      "impl-sbcl"
52                         #+(and thread-support scl)       "impl-scl"
53                         #-thread-support                 "impl-null")
54                  #+(and thread-support lispworks (not (or lispworks6 lispworks7)))
55                  (:file "impl-lispworks-condition-variables")
56                  #+(and thread-support digitool)
57                  (:file "condition-variables")
58                  (:file "default-implementations")))))
60 (defsystem :bordeaux-threads/test
61   :author "Greg Pfeil <greg@technomadic.org>"
62   :description "Bordeaux Threads test suite."
63   :licence "MIT"
64   :version (:read-file-form "version.sexp")
65   :depends-on (:bordeaux-threads :fiveam)
66   :components ((:module "test"
67                 :components ((:file "bordeaux-threads-test")))))
69 (defmethod perform ((o test-op) (c (eql (find-system :bordeaux-threads))))
70   (load-system :bordeaux-threads/test :force '(:bordeaux-threads/test))
71   (symbol-call :5am :run! :bordeaux-threads))