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

Contents of /src/tools/clmcom.lisp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.15 - (hide annotations)
Fri Oct 28 22:30:29 1994 UTC (19 years, 5 months ago) by ram
Branch: MAIN
Changes since 1.14: +7 -6 lines
hack, hack.
1 wlott 1.2 ;;; -*- Package: USER -*-
2     ;;;
3     ;;; **********************************************************************
4     ;;; This code was written as part of the CMU Common Lisp project at
5     ;;; Carnegie Mellon University, and has been placed in the public domain.
6     ;;; If you want to use this code or any part of CMU Common Lisp, please contact
7     ;;; Scott Fahlman or slisp-group@cs.cmu.edu.
8     ;;;
9     (ext:file-comment
10 ram 1.15 "$Header: /tiger/var/lib/cvsroots/cmucl/src/tools/clmcom.lisp,v 1.15 1994/10/28 22:30:29 ram Exp $")
11 wlott 1.2 ;;;
12     ;;; **********************************************************************
13     ;;;
14 garland 1.1 ;;; File for compiling the Motif toolkit and related interface
15     ;;; stuff.
16     ;;;
17     (in-package "USER")
18 ram 1.5
19 ram 1.7
20     ;;; If CLX and PCL have not been loaded, then load them.
21 ram 1.5 ;;;
22 ram 1.7 #-clx(load "target:clx/clx-library")
23     #-pcl(load "target:pcl/pclload")
24 garland 1.1
25 ram 1.7 (pushnew :motif *features*)
26 garland 1.1
27 ram 1.8 (defparameter tk-internals-files
28     '("target:motif/lisp/initial"
29     "target:motif/lisp/internals"
30     "target:motif/lisp/transport"
31     "target:motif/lisp/events"
32     "target:motif/lisp/conversion"))
33 garland 1.1
34 ram 1.8 (defparameter tk-files
35     '("target:motif/lisp/interface-glue"
36     "target:motif/lisp/xt-types"
37     "target:motif/lisp/string-base"
38     "target:motif/lisp/prototypes"
39     "target:motif/lisp/interface-build"
40     "target:motif/lisp/callbacks"
41     "target:motif/lisp/widgets"
42 ram 1.13 "target:motif/lisp/timer-support"
43 ram 1.8 "target:motif/lisp/main"))
44 garland 1.1
45 ram 1.8 (defparameter interface-files
46     '("target:interface/initial"
47     "target:interface/interface"
48     "target:interface/inspect"
49 ram 1.13 "target:interface/debug"
50     "target:interface/precom"))
51 garland 1.1
52    
53 ram 1.8 ;;; Make sure we don't try to debug a possibly broken new version with the
54     ;;; windowing debugger.
55     ;;;
56     (unless (find-package "INTERFACE")
57     (make-package "INTERFACE"))
58     (eval `(defparameter ,(intern "*INTERFACE-STYLE*" "INTERFACE") :tty))
59 garland 1.1
60 ram 1.8 ;;; Load any existing toolkit files:
61     ;;;
62     #-motif
63     (dolist (f (append tk-internals-files tk-files))
64     (flet ((try (type) (probe-file (make-pathname :defaults f :type type))))
65     (let ((pn (or (try (c:backend-fasl-file-type c:*backend*))
66     (try (c:backend-byte-fasl-file-type c:*backend*)))))
67     (when pn (load pn)))))
68    
69 wlott 1.2 (with-compiler-log-file
70 ram 1.14 ("target:compile-motif.log")
71    
72     (with-compilation-unit
73     (:optimize '(optimize (speed 3) (ext:inhibit-warnings 3)
74     #+small (safety 0)
75     #+small (debug .5)))
76    
77     (dolist (f tk-internals-files)
78     (comf f :load t)))
79 ram 1.8
80 ram 1.14 (with-compilation-unit
81     (:optimize
82     '(optimize (debug #-small 2 #+small .5)
83     (speed 2) (inhibit-warnings 2)
84     (safety #-small 1 #+small 0))
85     :optimize-interface
86     '(optimize-interface (debug .5))
87     :context-declarations
88     '(((:and :external :global)
89     (declare (optimize-interface (safety 2) (debug 1))))
90     ((:and :external :macro)
91     (declare (optimize (safety 2))))
92     (:macro (declare (optimize (speed 0))))))
93    
94     (dolist (f tk-files)
95     (comf f :load t))
96 ram 1.15
97     (let ((btki (intern "BUILD-TOOLKIT-INTERFACE" "XT")))
98     (unless (fboundp btki)
99     (mapc #'load tk-internals-files)
100     (mapc #'load tk-files))
101 ram 1.14
102 ram 1.15 (funcall (fdefinition btki)))
103 ram 1.14
104     (dolist (f interface-files)
105     (comf f :load t #+small :byte-compile #+small t))))
106 ram 1.8
107     (apply #'cat-if-anything-changed
108     "target:interface/clm-library"
109     (remove "target:motif/lisp/interface-build"
110     (append tk-internals-files tk-files interface-files)
111     :test #'string=))

  ViewVC Help
Powered by ViewVC 1.1.5