1 ;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: CL-USER; Base: 10 -*-
3 ;;; Copyright (c) 2004-2010, Dr. Edmund Weitz. All rights reserved.
5 ;;; Redistribution and use in source and binary forms, with or without
6 ;;; modification, are permitted provided that the following conditions
9 ;;; * Redistributions of source code must retain the above copyright
10 ;;; notice, this list of conditions and the following disclaimer.
12 ;;; * Redistributions in binary form must reproduce the above
13 ;;; copyright notice, this list of conditions and the following
14 ;;; disclaimer in the documentation and/or other materials
15 ;;; provided with the distribution.
17 ;;; THIS SOFTWARE IS PROVIDED BY THE AUTHOR 'AS IS' AND ANY EXPRESSED
18 ;;; OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
19 ;;; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20 ;;; ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
21 ;;; DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22 ;;; DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
23 ;;; GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24 ;;; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
25 ;;; WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
26 ;;; NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27 ;;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 (defsystem :hunchentoot
32 :description "Hunchentoot is a HTTP server based on USOCKET and
33 BORDEAUX-THREADS. It supports HTTP 1.1, serves static files, has a
34 simple framework for user-defined handlers and can be extended
36 :license "BSD-2-Clause"
42 (:feature (:not (:or :lispworks :hunchentoot-no-ssl))
48 (:feature (:not :lispworks) :usocket)
49 (:feature (:not :lispworks) :bordeaux-threads))
50 :components ((:module "url-rewrite"
52 :components ((:file "packages")
56 (:file "url-rewrite")))
58 (:file "lispworks" :if-feature :lispworks)
59 (:file "compat" :if-feature (:not :lispworks))
71 (:file "set-timeouts")
74 (:file "ssl" :if-feature (:not :hunchentoot-no-ssl))
75 (:file "easy-handlers"))
76 :perform (test-op (o c) (load (merge-pathnames "run-test.lisp" (system-source-directory c)))))
78 (defsystem :hunchentoot/test
79 :description "Self test functionality for the Hunchentoot HTTP server."
80 :components ((:module "test"
82 :components ((:file "packages")
83 (:file "test-handlers")
84 (:file "script-engine")
86 :depends-on (:hunchentoot :cl-who :cl-ppcre :drakma))
88 (defsystem :hunchentoot/dev
89 :description "Development tools for Hunchentoot development and releases"
90 :components ((:file "make-docstrings"))
91 :depends-on (:hunchentoot