/[closure]/closure/closure.asd
ViewVC logotype

Contents of /closure/closure.asd

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.12 - (show annotations)
Sun Dec 31 15:42:40 2006 UTC (7 years, 3 months ago) by dlichteblau
Branch: MAIN
Changes since 1.11: +2 -1 lines
Use Bordeaux Threads for all threading primitives, so that non-GUI parts of
Closure don't have to depend on CLIM anymore.

  - Removed all mp/ functions from glisp.

  - Use condition variables instead of process-wait.
1 ;;; -*- Mode: Lisp; Syntax: Common-Lisp; Package: CL-USER; Encoding: utf-8; -*-
2
3 ;; commit test
4 (defpackage :closure-system (:use #:asdf #:cl))
5 (in-package :closure-system)
6
7 ;;; Random early Lisp Implementation-specific fix ups:
8
9 (eval-when (compile eval load)
10 (pushnew :DEBUG-CLOSURE *features*))
11
12 ;;;;
13 ;;;; Optimization levels:
14 ;;;;
15
16 ;; FIXME: This is not exactly the right place!
17
18 ;; We choose to make them constants for read-time evaluation, since we
19 ;; want the presence of the :DEBUG-CLOSURE feature to override any
20 ;; (saftey 0) declaration.
21
22 (defparameter +optimize-very-fast+
23 '(optimize (safety #.(or #+:DEBUG-CLOSURE 3 0)) (speed 3) #+:DEBUG-CLOSURE (debug 3)))
24
25 (defparameter +optimize-very-fast-trusted+
26 '(optimize (safety #.(or #+:DEBUG-CLOSURE 3 0)) (speed 3) #+:DEBUG-CLOSURE (debug 3)))
27
28 (defparameter +optimize-fast+
29 '(optimize (safety #.(or #+:DEBUG-CLOSURE 3 1)) (speed 3) #+:DEBUG-CLOSURE (debug 3)))
30
31 (defparameter +optimize-normal+
32 '(optimize (safety #.(or #+:DEBUG-CLOSURE 3 2)) (speed 1) #+:DEBUG-CLOSURE (debug 3)))
33
34 (export '+optimize-very-fast-trusted+)
35 (export '+optimize-very-fast+)
36 (export '+optimize-fast+)
37 (export '+optimize-normal+)
38
39 ;; Finally declaim normal optimization level
40 (declaim #.+optimize-normal+)
41
42 (defclass closure-source-file (cl-source-file) ())
43
44 #+sbcl
45 (defmethod perform :around ((o compile-op) (s closure-source-file))
46 ;; shut up already. Correctness first.
47 (handler-bind ((sb-ext:compiler-note #'muffle-warning))
48 (call-next-method)))
49
50 ;;; Convenience feature: will stop it from breaking into the debugger
51 ;;; under sbcl for full WARNINGs (better to fix the warnings :-).
52 #+sbcl
53 (defmethod perform :around ((o compile-op) s)
54 (setf (operation-on-failure o) :warn)
55 (call-next-method o s))
56
57 (defpackage :glisp (:use))
58 (asdf:defsystem glisp
59 :pathname (merge-pathnames "src/glisp/"
60 (make-pathname :name nil :type nil
61 :defaults *load-truename*))
62 :default-component-class closure-source-file
63 :depends-on (:cxml :mcclim
64 ;; uncomment this if we actually need gray streams:
65 ;; :trivial-gray-streams
66 #+sbcl :sb-bsd-sockets)
67 :components
68 ((:file dependent
69 :pathname
70 #+CLISP "dep-clisp"
71 #+(AND :CMU (NOT SCL)) "dep-cmucl"
72 #+sbcl "dep-sbcl"
73 #+SCL "dep-scl"
74 #+ALLEGRO "dep-acl"
75 #+GCL "dep-gcl"
76 #+OPENMCL "dep-openmcl"
77 #-(OR sbcl CLISP CMU ALLEGRO GCL OPENMCL) #.(error "Configure!"))
78 (:file "package"
79 :depends-on (dependent))
80 (:file "util"
81 :depends-on ("package" dependent))
82 (:file "match"
83 :depends-on ("package" dependent "util"))))
84
85
86 (asdf:defsystem closure
87 :depends-on (:clim
88 :clim-clx
89 :glisp
90 :bordeaux-threads)
91 :default-component-class closure-source-file
92 :components
93 ((:module src
94 :serial t
95 :components
96 (;;; Patches
97 (:module patches
98 :components
99 ((:file "clx-patch")))
100
101 ;; Images
102
103 (:module imagelib
104 :serial t
105 :components
106 ((:file "package")
107 (:file "basic")
108 (:file "deflate")
109 (:file "png")))
110
111 ;; Early package definitions
112
113 (:file "defpack")
114
115 ;; Closure Protocol Declarations first
116
117 (:module protocols
118 :serial t
119 :components
120 ((:file "package")
121 (:file "element")
122 (:file "css-support")))
123
124 ;; Libraries
125
126 ;; CLEX and LALR
127
128 (:module clex
129 :pathname "util/"
130 :components
131 ((:file "clex") ))
132
133 (:module lalr
134 :pathname "util/"
135 :components
136 ((:file "lalr") ))
137
138 ;; Networking stuff
139
140 (:module net
141 :components
142 ((:file "package" :depends-on ("url"))
143 (:file "common-parse" :depends-on ("package"))
144 (:file "mime" :depends-on ("package"))
145 (:file "url" :depends-on ())
146 (:file "http" :depends-on ("package" "url"))
147 (:file "ftp" :depends-on ("package" "url")) ))
148
149 ;; The HTML parser
150
151 (:module parse
152 :depends-on (clex lalr)
153 :components
154 ((:file "package")
155 (:file "pt" :depends-on ("package"))
156 (:file "sgml-dtd" :depends-on ("package"))
157 (:file "sgml-parse" :depends-on ("package" "sgml-dtd")) ))
158
159 ;; More Random Utilities
160
161 (:module util
162 :components
163 ((:file "character-set")
164 (:file "xterm")))
165
166 ;; CSS
167
168 (:module css
169 :depends-on (net ;needs URL package
170 "defpack")
171 :serial t
172 :components
173 ((:file "package")
174 (:file "css-support")
175 (:file "css-parse")
176 (:file "css-selector")
177 (:file "css-setup")
178 (:file "css-properties")))
179
180 ;; Renderer
181
182 (:module renderer
183 :serial t
184 :components
185 (
186 (:file "package")
187
188 (:file "device") ;Declaration of the device abstraction
189 (:file "fonts") ;Font Databases
190
191 (:file "texpara")
192 (:file "images")
193 (:file "x11")
194 (:file "r-struct")
195 (:file "document")
196 (:file "raux")
197 (:file "renderer")
198 (:file "hyphenation") ;Hyphenation of words
199 (:file "clim-draw") ;some drawing "primitives" for the clim device
200 (:file "renderer2")
201 (:file "list-item")
202 ; "tables"
203 (:file "clim-device")))
204
205 ;; HTML
206
207 (:module html
208 :components
209 ((:file "html-style")))
210
211 ;; GUI
212
213 (:module gui
214 :serial t
215 :components
216 ((:file "gui") (:file "clue-gui")
217 (:file "dce-and-pce") (:file "clue-input")
218 (:file "clim-gui")) )
219
220 ;; Patches
221
222 (:file "patch")
223 ))
224
225 ;; Some resources
226
227 (:module resources
228 :components
229 ((:file "resources")) )))
230
231 (in-package :cl-user)
232
233 (import '(CLOSURE-SYSTEM:+OPTIMIZE-VERY-FAST+
234 CLOSURE-SYSTEM:+OPTIMIZE-NORMAL+
235 CLOSURE-SYSTEM:+OPTIMIZE-VERY-FAST-TRUSTED+
236 CLOSURE-SYSTEM:+OPTIMIZE-FAST+))
237 (export '(CLOSURE-SYSTEM:+OPTIMIZE-VERY-FAST+
238 CLOSURE-SYSTEM:+OPTIMIZE-NORMAL+
239 CLOSURE-SYSTEM:+OPTIMIZE-VERY-FAST-TRUSTED+
240 CLOSURE-SYSTEM:+OPTIMIZE-FAST+))

  ViewVC Help
Powered by ViewVC 1.1.5