/[cmucl]/src/tools/hemcom.lisp
ViewVC logotype

Contents of /src/tools/hemcom.lisp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1.1.27 - (show annotations) (vendor branch)
Thu Jul 22 11:49:00 1993 UTC (20 years, 8 months ago) by wlott
Changes since 1.1.1.26: +1 -0 lines
Include dylan in the hemlock-library.
1 ;;;
2 ;;; This file compiles all of Hemlock.
3 ;;;
4
5 #+bootstrap
6 (progn
7 (when (ext:get-command-line-switch "slave")
8 (error "Cannot compile Hemlock in a slave due to its clobbering needed
9 typescript routines by renaming the package."))
10
11 ;;; Blast the old packages in case they are around. We do this solely to
12 ;;; prove Hemlock can compile cleanly without its having to exist already.
13 ;;;
14 (copy-packages '("ED" "HI")))
15
16
17 ;;; Stuff to set up the packages Hemlock uses.
18 ;;;
19 (in-package "HEMLOCK-INTERNALS"
20 :nicknames '("HI")
21 :use '("LISP" "EXTENSIONS" "SYSTEM"))
22
23 ;;;
24 (in-package "HEMLOCK"
25 :nicknames '("ED")
26 :use '("LISP" "HEMLOCK-INTERNALS" "EXTENSIONS" "SYSTEM"))
27 ;;;
28 (export 'c::compile-from-stream (find-package "C"))
29
30
31 (in-package "USER")
32
33 (pushnew :command-bits *features*)
34 (pushnew :buffered-lines *features*)
35
36 #-clx
37 ;;; If CLX has not been loaded, but has been compiled, then load it.
38 ;;;
39 (when (probe-file (make-pathname :defaults "target:clx/clx-library"
40 :type (c:backend-fasl-file-type c:*backend*)))
41 (load "target:clx/clx-library"))
42
43 (with-compiler-log-file
44 ("target:compile-hemlock.log"
45 :optimize
46 '(optimize (debug-info #-small 2 #+small .5)
47 (speed 2) (inhibit-warnings 2)
48 (safety #-small 1 #+small 0))
49 :optimize-interface
50 '(optimize-interface (debug-info .5))
51 :context-declarations
52 '(((:or :external (:match "$%SET-"))
53 (declare (optimize (safety 2))
54 (optimize-interface (debug-info 1))))
55 (:macro (declare (optimize (speed 0))))))
56
57 (comf "target:code/globals")
58 (comf "target:code/struct")
59 (comf "target:hemlock/charmacs")
60 (comf "target:hemlock/key-event" :load t)
61 (comf "target:hemlock/struct")
62 ;(comf "target:hemlock/struct-ed")
63 (comf "target:hemlock/rompsite")
64 ;;;
65 ;;; This is necessary since all the #k uses in Hemlock will expand into
66 ;;; EXT:MAKE-KEY-EVENT calls with keysyms and bits from the compiling Lisp, not
67 ;;; for the Lisp new code will run in. This destroys the compiling Lisp with
68 ;;; respect to running code with #k's compiled for it, but it causes the
69 ;;; compilation to see new keysyms, modifiers, and CLX modifier maps correctly
70 ;;; for the new system.
71 ;;;
72 (ext::re-initialize-key-events)
73 (comf "target:hemlock/keysym-defs")
74 (comf "target:hemlock/input")
75 (comf "target:hemlock/macros")
76 (comf "target:hemlock/line")
77 (comf "target:hemlock/ring")
78 (comf "target:hemlock/table")
79 (comf "target:hemlock/htext1")
80 (comf "target:hemlock/htext2")
81 (comf "target:hemlock/htext3")
82 (comf "target:hemlock/htext4")
83 (comf "target:hemlock/search1")
84 (comf "target:hemlock/search2")
85 (comf "target:hemlock/linimage")
86 (comf "target:hemlock/cursor")
87 (comf "target:hemlock/syntax")
88 (comf "target:hemlock/winimage")
89 #+clx (comf "target:hemlock/hunk-draw")
90 ;(comf "target:hemlock/bit-stream")
91 (comf "target:hemlock/termcap")
92 (comf "target:hemlock/display")
93 #+clx (comf "target:hemlock/bit-display")
94 (comf "target:hemlock/tty-disp-rt")
95 (with-compilation-unit (:optimize '(optimize (safety 2) (debug-info 3)))
96 (comf "target:hemlock/tty-display")) ; Buggy...
97 ;(comf "target:hemlock/tty-stream")
98 (comf "target:hemlock/pop-up-stream")
99 (comf "target:hemlock/screen")
100 #+clx (comf "target:hemlock/bit-screen")
101 (comf "target:hemlock/tty-screen")
102 (comf "target:hemlock/window")
103 (comf "target:hemlock/font")
104 (comf "target:hemlock/interp")
105 (comf "target:hemlock/vars")
106 (comf "target:hemlock/buffer")
107 (comf "target:hemlock/files")
108 (comf "target:hemlock/streams")
109 (comf "target:hemlock/echo")
110 (comf "target:hemlock/main")
111 (comf "target:hemlock/echocoms")
112 (comf "target:hemlock/defsyn")
113
114 (comf "target:hemlock/ts-buf")
115 (comf "target:hemlock/ts-stream")
116
117 (with-compilation-unit
118 (:optimize
119 '(optimize (safety 2) (speed 0))
120 :context-declarations
121 '(((:match "-COMMAND$")
122 (declare (optimize (safety #+small 0 #-small 1))
123 (optimize-interface (safety 2))))))
124
125 (comf "target:hemlock/command")
126 (comf "target:hemlock/morecoms")
127 (comf "target:hemlock/undo")
128 (comf "target:hemlock/killcoms")
129 (comf "target:hemlock/searchcoms")
130 (comf "target:hemlock/filecoms")
131 (comf "target:hemlock/indent")
132 (comf "target:hemlock/lispmode")
133 (comf "target:hemlock/comments")
134 (comf "target:hemlock/fill")
135 (comf "target:hemlock/text")
136 (comf "target:hemlock/doccoms")
137 (comf "target:hemlock/srccom")
138 (comf "target:hemlock/abbrev")
139 (comf "target:hemlock/group")
140 (comf "target:hemlock/overwrite")
141 (comf "target:hemlock/gosmacs")
142 (comf "target:hemlock/eval-server")
143 (comf "target:hemlock/dylan")
144 (comf "target:hemlock/lispbuf")
145 (comf "target:hemlock/lispeval")
146 (comf "target:hemlock/icom")
147 (comf "target:hemlock/hi-integrity")
148 (comf "target:hemlock/ed-integrity")
149 (comf "target:hemlock/scribe")
150 (comf "target:hemlock/pascal")
151 (comf "target:hemlock/edit-defs")
152 (comf "target:hemlock/auto-save")
153 (comf "target:hemlock/register")
154 (comf "target:hemlock/xcoms")
155 (comf "target:hemlock/unixcoms")
156 (comf "target:hemlock/mh")
157 (comf "target:hemlock/highlight")
158 (comf "target:hemlock/dired")
159 (comf "target:hemlock/diredcoms")
160 (comf "target:hemlock/bufed")
161 (comf "target:hemlock/lisp-lib")
162 (comf "target:hemlock/completion")
163 (comf "target:hemlock/shell")
164 (comf "target:hemlock/debug")
165 (comf "target:hemlock/netnews")
166 (comf "target:tools/rcs")
167
168 ) ;WITH-COMPILATION-UNIT for commands
169
170 ;; Stuff we want compiled native:
171
172 (comf "target:hemlock/spell-rt")
173 (comf "target:hemlock/spell-corr")
174 (comf "target:hemlock/spell-aug")
175 (comf "target:hemlock/spell-build")
176 (comf "target:hemlock/spellcoms")
177 (comf "target:hemlock/kbdmac")
178
179 (comf "target:hemlock/bindings")
180 (comf "target:hemlock/hacks")
181
182 ) ;WITH-COMPILER-LOG-FILE
183
184
185 (cat-if-anything-changed
186 "target:hemlock/hemlock-library"
187 "target:hemlock/rompsite"
188 "target:hemlock/struct"
189 ; "target:hemlock/struct-ed"
190 "target:hemlock/charmacs"
191 "target:hemlock/input"
192 "target:hemlock/line"
193 "target:hemlock/ring"
194 "target:hemlock/vars"
195 "target:hemlock/buffer"
196 "target:hemlock/macros"
197 "target:hemlock/interp"
198 "target:hemlock/syntax"
199 "target:hemlock/htext1"
200 "target:hemlock/htext2"
201 "target:hemlock/htext3"
202 "target:hemlock/htext4"
203 "target:hemlock/files"
204 "target:hemlock/search1"
205 "target:hemlock/search2"
206 "target:hemlock/table"
207 #+clx "target:hemlock/hunk-draw"
208 "target:hemlock/window"
209 "target:hemlock/screen"
210 "target:hemlock/winimage"
211 "target:hemlock/linimage"
212 "target:hemlock/display"
213 "target:hemlock/termcap"
214 #+clx "target:hemlock/bit-display"
215 "target:hemlock/tty-disp-rt"
216 "target:hemlock/tty-display"
217 "target:hemlock/pop-up-stream"
218 #+clx "target:hemlock/bit-screen"
219 "target:hemlock/tty-screen"
220 "target:hemlock/cursor"
221 "target:hemlock/font"
222 "target:hemlock/streams"
223 "target:hemlock/hacks"
224 "target:hemlock/main"
225 "target:hemlock/echo"
226 "target:hemlock/echocoms"
227 "target:hemlock/command"
228 "target:hemlock/indent"
229 "target:hemlock/comments"
230 "target:hemlock/morecoms"
231 "target:hemlock/undo"
232 "target:hemlock/killcoms"
233 "target:hemlock/searchcoms"
234 "target:hemlock/filecoms"
235 "target:hemlock/doccoms"
236 "target:hemlock/srccom"
237 "target:hemlock/group"
238 "target:hemlock/fill"
239 "target:hemlock/text"
240 "target:hemlock/lispmode"
241 "target:hemlock/ts-buf"
242 "target:hemlock/ts-stream"
243 "target:hemlock/eval-server"
244 "target:hemlock/dylan"
245 "target:hemlock/lispbuf"
246 "target:hemlock/lispeval"
247 "target:hemlock/spell-rt"
248 "target:hemlock/spell-corr"
249 "target:hemlock/spell-aug"
250 "target:hemlock/spellcoms"
251 "target:hemlock/overwrite"
252 "target:hemlock/abbrev"
253 "target:hemlock/icom"
254 "target:hemlock/kbdmac"
255 "target:hemlock/defsyn"
256 "target:hemlock/scribe"
257 "target:hemlock/pascal"
258 "target:hemlock/edit-defs"
259 "target:hemlock/auto-save"
260 "target:hemlock/register"
261 "target:hemlock/xcoms"
262 "target:hemlock/unixcoms"
263 "target:hemlock/mh"
264 "target:hemlock/highlight"
265 "target:hemlock/dired"
266 "target:hemlock/diredcoms"
267 "target:hemlock/bufed"
268 "target:hemlock/lisp-lib"
269 "target:hemlock/completion"
270 "target:hemlock/shell"
271 "target:hemlock/debug"
272 "target:hemlock/netnews"
273 "target:hemlock/bindings")

  ViewVC Help
Powered by ViewVC 1.1.5