[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Scigraph
- To: info-mcl@cambridge.apple.com, Sheldon S. Ball <ssb@fiona.umsmed.edu>
- Subject: Re: Scigraph
- From: reti@cambridge.apple.com (Kalman Reti)
- Date: Tue, 17 Aug 1993 16:42:32 -0500
- Cc: ssb@fiona.umsmed.edu
At 14:41 8/17/93 -0500, Sheldon S. Ball wrote:
>;;Below is a section of code from load-dwim.lisp, a file from the Scigraph
>;;scientific graphics application contributed to cambridge.apple.com by BBN.
>;;How can MCL-CLIM be added to the list of platforms supported? In the case
>;;of file-type-for-sources, adding a line
>;; #+Coral "lisp"
>;;should work.
>;;I'm not entirely sure about fixes to file-type-for-binaries &
>;;suggest-bin-directory.
>
I would use #+MCL instead of #+Coral. Also, there are two undocumented variables
*.fasl-pathname* and *.lisp-pathname* which contain pathnames with just the
type fields filled in. You can call pathname-type on these to get the string equivalents
(the defaults are "fasl" and "lisp"). So my suggestion on how to change these three
functions:
(defun file-type-for-sources ()
#+MCL #.(pathname-type *.lisp-pathname*)
#+genera "LISP"
#+unix "lisp"
#+(and (not genera) (not unix)) (error "Not yet implemented."))
(defun file-type-for-binaries ()
#+MCL #.(pathname-type *.fasl-pathname*)
#+genera si:*default-binary-file-type*
#+allegro #.(pathname-type (compile-file-pathname "foo"))
#+lucid (car lcl:*load-binary-pathname-types*)
#+(and (not genera)
(not allegro)
(not lucid))
(error "Not yet implemented."))
(defun suggest-bin-directory (&optional (base *load-pathname*)
(prefix "BIN-"))
;; The number of different binaries you must have is
;; the cross product of the instruction set and the gui.
(let ((instruction-set
#+MCL "MCL"
#+GENERA "GENERA"
#+LUCID "LUCID"
#+ALLEGRO "ALLEGRO")
(GUI
#+(and mcl (not clim)) "MAC"
#+(and genera (not clim)) "DW"
#+clim-0.9 "CLIM-0-9"
#+clim-1.0 "CLIM-1-0"
#+clim-2 "CLIM-2"))
(namestring (make-pathname
:directory
(append
(if base (pathname-directory base) '(:relative))
(list (string-downcase
(format nil "~A~A-~A"
prefix
instruction-set
gui))))
:name :wild))))