3 ;;;; defsys -- System setup for CL version of Lisp-Stat
5 ;;;; Copyright (c) 1991, by Luke Tierney. Permission is granted for
11 (pushnew (intern (symbol-name f
) 'keyword
) *features
*)))
13 #-
:mcl
(require :lspackages
)
14 #-
:mcl
(require :lsmacros
)
20 #+:mcl
(pushnew :CLtL2
*features
*)
21 #+:mcl
(def-logical-directory "mcls;" "ccl;:MCLS:")
22 #+:mcl
(setf *break-on-errors
* nil
)
23 #+:mcl
(set-mac-default-directory "mcls;")
24 #+:mcl
(setf *save-definitions
* t
)
25 #+:mcl
(defpackage "COMMON-LISP" (:nicknames
"CL" "LISP"))
26 #+:mcl
(pushnew :stat-float-is-double-float
*features
*)
33 ;#+:kcl (proclaim '(optimize (safety 2) (space 3) (speed 3)))
34 #+:kcl
(setf *break-enable
* nil
)
36 #+:kcl
(allocate 'cons
600)
37 #+:kcl
(allocate 'cfun
1000)
38 #+:kcl
(si:allocate-relocatable-pages
100)
40 ;; **** This feature should only be used if the patches in num_sfun.c
41 ;; **** and numlib.lsp habe been applied to AKCL -- see lsfloat.lsp for
44 ;#+:kcl (pushnew :stat-float-is-double-float *features*)
50 (setf *read-default-float-format
* 'double-float
)
53 ;;;; Switch to Lisp-Stat package
56 #+:mcl
(load "lspackages")
57 #+:mcl
(load "lsmacros")
59 (in-package :lispstat
)
61 (export '(*default-path
* debug nodebug
))
63 (defvar *common-lisp-stat-version
* "1.0 Alpha 1")
65 (defvar *default-path
* "./")
68 ;;;; Functions for switching into and out of debug mode
72 #+:kcl
(setf *break-enable
* t
)
73 #+:mcl
(setf *break-on-errors
* t
))
76 #+:kcl
(setf *break-enable
* nil
)
77 #+:mcl
(setf *break-on-errors
* nil
))
83 #+:mcl
(setf *default-path
* ":")
90 #+:mips
"lib/clib.a -lm_G0 -lc_G0"
91 #-
:mips
"lib/clib.a -lm -lc")
98 ;;;; Compilation and Loading Utilities
101 (defvar *lsos-files
* (list "lsobjects"))
103 (defvar *basic-files
*
104 (list #+:kcl
"kclpatch"
126 (defun use-ls-package (name)
127 (shadowing-import (package-shadowing-symbols name
))
131 #+:kcl
(shadowing-import '(ls::x
))
132 (use-ls-package 'lisp-stat-object-system
)
133 (use-ls-package 'lisp-stat-basics
)
134 (use-ls-package 'lisp-stat
))
137 (concatenate 'string x
139 #+(or :mcl
:excl
) ".lisp"))
141 (defun load-files (files)
142 (dolist (f files
) (load f
:verbose t
)))
144 (defun compile-load-files (files &optional
(load t
))
146 #+:mcl
(format t
"compiling ~a~%" f
)
147 #+:excl
(load (lispfile f
))
152 (load-files *lsos-files
*))
154 (defun load-ls-basics ()
156 (load-files *basic-files
*)
157 #+:kcl
(if (and (probe-file "kclglue.o")
158 (probe-file "lib/clib.a"))
159 (si:faslink
"kclglue" *clibs
*)))
163 (load-files *ls-files
*))
165 (defun compile-lsos ()
166 (compile-load-files *lsos-files
*))
168 (defun compile-ls-basics (&optional
(compile-all t
))
169 (if compile-all
(compile-lsos) (load-lsos))
170 (compile-load-files *basic-files
*)
171 #+:kcl
(progn (compile-file "kclglue")
172 (si:faslink
"kclglue" *clibs
*)))
174 (defun compile-stats (&optional
(compile-all t
))
175 (if compile-all
(compile-ls-basics) (load-ls-basics))
176 (compile-load-files *ls-files
*))