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

Contents of /src/tools/hemcom.lisp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.12 - (show annotations)
Fri Jul 18 11:15:19 2003 UTC (10 years, 9 months ago) by gerd
Branch: MAIN
CVS Tags: sparc-tramp-assem-base, double-double-array-base, post-merge-intl-branch, release-19b-pre1, release-19b-pre2, merged-unicode-utf16-extfmt-2009-06-11, double-double-init-sparc-2, unicode-utf16-extfmt-2009-03-27, double-double-base, snapshot-2007-09, snapshot-2007-08, snapshot-2008-08, snapshot-2008-09, ppc_gencgc_snap_2006-01-06, sse2-packed-2008-11-12, snapshot-2008-05, snapshot-2008-06, snapshot-2008-07, snapshot-2007-05, snapshot-2008-01, snapshot-2008-02, snapshot-2008-03, intl-branch-working-2010-02-19-1000, snapshot-2006-11, snapshot-2006-10, double-double-init-sparc, snapshot-2006-12, unicode-string-buffer-impl-base, sse2-base, release-20b-pre1, release-20b-pre2, unicode-string-buffer-base, sse2-packed-base, sparc-tramp-assem-2010-07-19, amd64-dd-start, snapshot-2003-10, snapshot-2004-10, release-19f-pre1, snapshot-2008-12, snapshot-2008-11, intl-2-branch-base, snapshot-2004-08, snapshot-2004-09, snapshot-2007-01, snapshot-2007-02, snapshot-2004-05, snapshot-2004-06, snapshot-2004-07, release-19e, release-19d, GIT-CONVERSION, double-double-init-ppc, release-19c, dynamic-extent-base, unicode-utf16-sync-2008-12, release-19c-base, cross-sol-x86-merged, label-2009-03-16, release-19f-base, merge-sse2-packed, mod-arith-base, sparc_gencgc_merge, merge-with-19f, snapshot-2004-12, snapshot-2004-11, intl-branch-working-2010-02-11-1000, unicode-snapshot-2009-05, unicode-snapshot-2009-06, amd64-merge-start, ppc_gencgc_snap_2005-12-17, double-double-init-%make-sparc, unicode-utf16-sync-2008-07, unicode-utf16-sync-2008-09, unicode-utf16-extfmts-sync-2008-12, prm-before-macosx-merge-tag, RELEASE_20b, snapshot-2008-04, snapshot-2003-11, snapshot-2005-07, unicode-utf16-sync-label-2009-03-16, RELEASE_19f, snapshot-2007-03, release-20a-base, cross-sol-x86-base, unicode-utf16-char-support-2009-03-26, unicode-utf16-char-support-2009-03-25, release-19a-base, unicode-utf16-extfmts-pre-sync-2008-11, snapshot-2008-10, sparc_gencgc, snapshot-2007-04, snapshot-2010-12, snapshot-2010-11, unicode-utf16-sync-2008-11, snapshot-2007-07, snapshot-2011-09, snapshot-2011-06, snapshot-2011-07, snapshot-2011-04, snapshot-2007-06, snapshot-2011-02, snapshot-2011-03, snapshot-2011-01, snapshot-2003-12, release-19a-pre1, release-19a-pre3, release-19a-pre2, pre-merge-intl-branch, release-19a, double-double-array-checkpoint, double-double-reader-checkpoint-1, release-19d-base, release-19e-pre1, double-double-irrat-end, release-19e-pre2, snapshot-2010-05, snapshot-2010-04, snapshot-2010-07, snapshot-2010-06, snapshot-2010-01, snapshot-2010-03, snapshot-2010-02, release-19d-pre2, release-19d-pre1, snapshot-2010-08, double-double-init-checkpoint-1, double-double-reader-base, label-2009-03-25, snapshot-2005-03, release-19b-base, cross-sol-x86-2010-12-20, double-double-init-x86, sse2-checkpoint-2008-10-01, intl-branch-2010-03-18-1300, snapshot-2005-11, double-double-sparc-checkpoint-1, snapshot-2004-04, sse2-merge-with-2008-11, sse2-merge-with-2008-10, snapshot-2005-10, RELEASE_20a, snapshot-2005-12, release-20a-pre1, snapshot-2005-01, snapshot-2009-11, snapshot-2009-12, unicode-utf16-extfmt-2009-06-11, portable-clx-import-2009-06-16, unicode-utf16-string-support, release-19c-pre1, cross-sparc-branch-base, release-19e-base, intl-branch-base, double-double-irrat-start, snapshot-2005-06, snapshot-2005-05, snapshot-2005-04, ppc_gencgc_snap_2005-05-14, snapshot-2005-02, unicode-utf16-base, portable-clx-base, snapshot-2005-09, snapshot-2005-08, lisp-executable-base, snapshot-2009-08, snapshot-2007-12, snapshot-2007-10, snapshot-2007-11, snapshot-2009-02, snapshot-2009-01, snapshot-2009-07, snapshot-2009-05, snapshot-2009-04, snapshot-2006-02, snapshot-2006-03, snapshot-2006-01, snapshot-2006-06, snapshot-2006-07, snapshot-2006-04, snapshot-2006-05, pre-telent-clx, snapshot-2006-08, snapshot-2006-09, HEAD
Branch point for: release-19b-branch, double-double-reader-branch, double-double-array-branch, mod-arith-branch, RELEASE-19F-BRANCH, portable-clx-branch, sparc_gencgc_branch, cross-sparc-branch, RELEASE-20B-BRANCH, unicode-string-buffer-branch, sparc-tramp-assem-branch, dynamic-extent, release-19d-branch, ppc_gencgc_branch, sse2-packed-branch, lisp-executable, RELEASE-20A-BRANCH, amd64-dd-branch, double-double-branch, unicode-string-buffer-impl-branch, intl-branch, unicode-utf16-branch, cross-sol-x86-branch, release-19e-branch, sse2-branch, release-19a-branch, release-19c-branch, intl-2-branch, unicode-utf16-extfmt-branch
Changes since 1.11: +4 -1 lines
	* src/tools/hemcom.lisp (toplevel): Set
	conditions::*make-condition-accessor-methods* to true.
1 ;;; -*- Package: USER -*-
2 ;;;
3 ;;; **********************************************************************
4 ;;;
5 (ext:file-comment
6 "$Header: /tiger/var/lib/cvsroots/cmucl/src/tools/hemcom.lisp,v 1.12 2003/07/18 11:15:19 gerd Rel $")
7 ;;;
8 ;;; **********************************************************************
9 ;;;
10 ;;; This file compiles all of Hemlock.
11 ;;;
12
13 (when (boundp 'conditions::*make-condition-accessor-methods*)
14 (setq conditions::*make-condition-accessor-methods* t))
15
16 #+bootstrap
17 (progn
18 (when (ext:get-command-line-switch "slave")
19 (error "Cannot compile Hemlock in a slave due to its clobbering needed
20 typescript routines by renaming the package."))
21
22 ;;; Blast the old packages in case they are around. We do this solely to
23 ;;; prove Hemlock can compile cleanly without its having to exist already.
24 ;;;
25 (copy-packages '("ED" "HI")))
26
27
28 ;;; Stuff to set up the packages Hemlock uses.
29 ;;;
30 (unless (find-package "HEMLOCK-INTERNALS")
31 (make-package "HEMLOCK-INTERNALS"
32 :nicknames '("HI")
33 :use '("LISP" "EXTENSIONS" "SYSTEM")))
34
35 (unless (find-package "HEMLOCK")
36 (make-package "HEMLOCK"
37 :nicknames '("ED")
38 :use '("LISP" "HEMLOCK-INTERNALS" "EXTENSIONS" "SYSTEM")))
39 ;;;
40 (export 'c::compile-from-stream (find-package "C"))
41
42
43 (in-package "CL-USER")
44
45 (defvar *byte-compile* #+small t #-small :maybe)
46
47 (pushnew :command-bits *features*)
48 (pushnew :buffered-lines *features*)
49
50 #-clx
51 ;;; If CLX has not been loaded, but has been compiled, then load it.
52 ;;;
53 (when (probe-file (make-pathname :defaults "target:clx/clx-library"
54 :type (c:backend-fasl-file-type c:*backend*)))
55 #+(and (not pcl) (not no-pcl-clx))
56 (load "target:pcl/pclload")
57 (load "target:clx/clx-library")
58 #+gencgc (gc :full t)
59 #-gencgc (ext:purify))
60
61 (with-compiler-log-file
62 ("target:compile-hemlock.log"
63 :optimize
64 '(optimize (debug #-small 2 #+small .5)
65 (speed 2) (inhibit-warnings 2)
66 (safety #-small 1 #+small 0))
67 :optimize-interface
68 '(optimize-interface (debug .5))
69 :context-declarations
70 '(((:or :external (:match "$%SET-"))
71 (declare (optimize (safety 2))
72 (optimize-interface (debug 1))))
73 (:macro (declare (optimize (speed 0))))))
74
75 (comf "target:code/globals")
76 (comf "target:code/struct")
77 (comf "target:hemlock/charmacs")
78 (comf "target:hemlock/key-event" :load t)
79 (comf "target:hemlock/struct")
80 ;(comf "target:hemlock/struct-ed")
81 (comf "target:hemlock/rompsite")
82 ;;;
83 ;;; This is necessary since all the #k uses in Hemlock will expand into
84 ;;; EXT:MAKE-KEY-EVENT calls with keysyms and bits from the compiling Lisp, not
85 ;;; for the Lisp new code will run in. This destroys the compiling Lisp with
86 ;;; respect to running code with #k's compiled for it, but it causes the
87 ;;; compilation to see new keysyms, modifiers, and CLX modifier maps correctly
88 ;;; for the new system.
89 ;;;
90 (ext::re-initialize-key-events)
91 (comf "target:hemlock/keysym-defs")
92 (comf "target:hemlock/input")
93 (comf "target:hemlock/macros" :byte-compile t)
94 (comf "target:hemlock/line")
95 (comf "target:hemlock/ring")
96 (comf "target:hemlock/table")
97 (comf "target:hemlock/htext1")
98 (comf "target:hemlock/htext2")
99 (comf "target:hemlock/htext3")
100 (comf "target:hemlock/htext4")
101 (comf "target:hemlock/search1")
102 (comf "target:hemlock/search2")
103 (comf "target:hemlock/linimage")
104 (comf "target:hemlock/cursor")
105 (comf "target:hemlock/syntax")
106 (comf "target:hemlock/winimage")
107 #+clx (comf "target:hemlock/hunk-draw")
108 ;(comf "target:hemlock/bit-stream")
109 (comf "target:hemlock/termcap")
110 (comf "target:hemlock/display")
111 #+clx (comf "target:hemlock/bit-display")
112 (comf "target:hemlock/tty-disp-rt")
113 (with-compilation-unit (:optimize '(optimize (safety 2) (debug 3)))
114 (comf "target:hemlock/tty-display")) ; Buggy...
115 ;(comf "target:hemlock/tty-stream")
116 (comf "target:hemlock/pop-up-stream")
117 (comf "target:hemlock/screen")
118 #+clx (comf "target:hemlock/bit-screen")
119 (comf "target:hemlock/tty-screen")
120 (comf "target:hemlock/window")
121 (comf "target:hemlock/font")
122 (comf "target:hemlock/interp")
123 (comf "target:hemlock/vars")
124 (comf "target:hemlock/buffer")
125 (comf "target:hemlock/files")
126 (comf "target:hemlock/streams")
127 (comf "target:hemlock/echo" :byte-compile t)
128 (comf "target:hemlock/main" :byte-compile t)
129 (comf "target:hemlock/echocoms" :byte-compile t)
130 (comf "target:hemlock/defsyn")
131
132 (comf "target:hemlock/ts-buf")
133 (comf "target:hemlock/ts-stream")
134
135 (with-compilation-unit
136 (:optimize
137 '(optimize (safety 2) (speed 0))
138 :context-declarations
139 '(((:match "-COMMAND$")
140 (declare (optimize (safety #+small 0 #-small 1))
141 (optimize-interface (safety 2))))))
142
143 (comf "target:hemlock/command" :byte-compile t)
144 (comf "target:hemlock/morecoms" :byte-compile t)
145 (comf "target:hemlock/undo" :byte-compile t)
146 (comf "target:hemlock/killcoms" :byte-compile t)
147 (comf "target:hemlock/searchcoms" :byte-compile t)
148 (comf "target:hemlock/filecoms" :byte-compile t)
149 (comf "target:hemlock/indent" :byte-compile t)
150 (comf "target:hemlock/lispmode")
151 (comf "target:hemlock/comments" :byte-compile t)
152 (comf "target:hemlock/fill")
153 (comf "target:hemlock/text" :byte-compile t)
154 (comf "target:hemlock/doccoms" :byte-compile t)
155 (comf "target:hemlock/srccom" :byte-compile t)
156 (comf "target:hemlock/abbrev" :byte-compile t)
157 (comf "target:hemlock/group" :byte-compile t)
158 (comf "target:hemlock/overwrite" :byte-compile t)
159 (comf "target:hemlock/gosmacs" :byte-compile t)
160 (comf "target:hemlock/eval-server" :byte-compile t)
161 (comf "target:hemlock/dylan" :byte-compile t)
162 (comf "target:hemlock/lispbuf" :byte-compile t)
163 (comf "target:hemlock/lispeval" :byte-compile t)
164 (comf "target:hemlock/icom" :byte-compile t)
165 (comf "target:hemlock/hi-integrity" :byte-compile t)
166 (comf "target:hemlock/ed-integrity" :byte-compile t)
167 (comf "target:hemlock/scribe" :byte-compile t)
168 (comf "target:hemlock/pascal" :byte-compile t)
169 (comf "target:hemlock/edit-defs" :byte-compile t)
170 (comf "target:hemlock/auto-save" :byte-compile t)
171 (comf "target:hemlock/register" :byte-compile t)
172 (comf "target:hemlock/xcoms" :byte-compile t)
173 (comf "target:hemlock/unixcoms" :byte-compile t)
174 (comf "target:hemlock/mh")
175 (comf "target:hemlock/highlight" :byte-compile t)
176 (comf "target:hemlock/dired" :byte-compile t)
177 (comf "target:hemlock/diredcoms" :byte-compile t)
178 (comf "target:hemlock/bufed" :byte-compile t)
179 (comf "target:hemlock/lisp-lib" :byte-compile t)
180 (comf "target:hemlock/completion" :byte-compile t)
181 (comf "target:hemlock/shell" :byte-compile t)
182 (comf "target:hemlock/debug" :byte-compile t)
183 (comf "target:hemlock/netnews" :byte-compile t)
184 (comf "target:hemlock/rcs" :byte-compile t)
185 (comf "target:hemlock/dabbrev" :byte-compile t)
186
187 ) ;WITH-COMPILATION-UNIT for commands
188
189 ;; Stuff we want compiled native:
190
191 (comf "target:hemlock/spell-rt")
192 (comf "target:hemlock/spell-corr")
193 (comf "target:hemlock/spell-aug")
194 (comf "target:hemlock/spell-build")
195 (comf "target:hemlock/spellcoms")
196 (comf "target:hemlock/kbdmac")
197
198 (comf "target:hemlock/bindings")
199 (comf "target:hemlock/hacks")
200
201 ) ;WITH-COMPILER-LOG-FILE
202
203 (unless (probe-file "target:hemlock/spell-dictionary.bin")
204 (load "target:hemlock/spell-rt")
205 (load "target:hemlock/spell-corr")
206 (load "target:hemlock/spell-aug")
207 (load "target:hemlock/spell-build")
208 (funcall (fdefinition (intern "BUILD-DICTIONARY" "SPELL"))
209 "target:hemlock/spell-dictionary.text"
210 "target:hemlock/spell-dictionary.bin"))
211
212 (cat-if-anything-changed
213 "target:hemlock/hemlock-library"
214 "target:hemlock/rompsite"
215 "target:hemlock/struct"
216 ; "target:hemlock/struct-ed"
217 "target:hemlock/charmacs"
218 "target:hemlock/input"
219 "target:hemlock/line"
220 "target:hemlock/ring"
221 "target:hemlock/vars"
222 "target:hemlock/buffer"
223 "target:hemlock/macros"
224 "target:hemlock/interp"
225 "target:hemlock/syntax"
226 "target:hemlock/htext1"
227 "target:hemlock/htext2"
228 "target:hemlock/htext3"
229 "target:hemlock/htext4"
230 "target:hemlock/files"
231 "target:hemlock/search1"
232 "target:hemlock/search2"
233 "target:hemlock/table"
234 #+clx "target:hemlock/hunk-draw"
235 "target:hemlock/window"
236 "target:hemlock/screen"
237 "target:hemlock/winimage"
238 "target:hemlock/linimage"
239 "target:hemlock/display"
240 "target:hemlock/termcap"
241 #+clx "target:hemlock/bit-display"
242 "target:hemlock/tty-disp-rt"
243 "target:hemlock/tty-display"
244 "target:hemlock/pop-up-stream"
245 #+clx "target:hemlock/bit-screen"
246 "target:hemlock/tty-screen"
247 "target:hemlock/cursor"
248 "target:hemlock/font"
249 "target:hemlock/streams"
250 "target:hemlock/hacks"
251 "target:hemlock/main"
252 "target:hemlock/echo"
253 "target:hemlock/echocoms"
254 "target:hemlock/command"
255 "target:hemlock/indent"
256 "target:hemlock/comments"
257 "target:hemlock/morecoms"
258 "target:hemlock/undo"
259 "target:hemlock/killcoms"
260 "target:hemlock/searchcoms"
261 "target:hemlock/filecoms"
262 "target:hemlock/doccoms"
263 "target:hemlock/srccom"
264 "target:hemlock/group"
265 "target:hemlock/fill"
266 "target:hemlock/text"
267 "target:hemlock/lispmode"
268 "target:hemlock/ts-buf"
269 "target:hemlock/ts-stream"
270 "target:hemlock/eval-server"
271 "target:hemlock/lispbuf"
272 "target:hemlock/lispeval"
273 "target:hemlock/spell-rt"
274 "target:hemlock/spell-corr"
275 "target:hemlock/spell-aug"
276 "target:hemlock/spellcoms"
277 "target:hemlock/overwrite"
278 "target:hemlock/abbrev"
279 "target:hemlock/icom"
280 "target:hemlock/kbdmac"
281 "target:hemlock/defsyn"
282 "target:hemlock/scribe"
283 "target:hemlock/pascal"
284 "target:hemlock/dylan"
285 "target:hemlock/edit-defs"
286 "target:hemlock/auto-save"
287 "target:hemlock/register"
288 "target:hemlock/xcoms"
289 "target:hemlock/unixcoms"
290 "target:hemlock/mh"
291 "target:hemlock/highlight"
292 "target:hemlock/dired"
293 "target:hemlock/diredcoms"
294 "target:hemlock/bufed"
295 "target:hemlock/lisp-lib"
296 "target:hemlock/completion"
297 "target:hemlock/shell"
298 "target:hemlock/debug"
299 "target:hemlock/netnews"
300 "target:hemlock/rcs"
301 "target:hemlock/dabbrev"
302 "target:hemlock/bindings")

  ViewVC Help
Powered by ViewVC 1.1.5