home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Source Code 1993 July / THE_SOURCE_CODE_CD_ROM.iso / bsd_srcs / usr.bin / lisp / liszt / cmake.l < prev    next >
Encoding:
Text File  |  1987-12-15  |  1.4 KB  |  38 lines

  1. ; file which loads in all the object files and dumps them
  2.  
  3. ; $Header: cmake.l,v 1.7 87/12/15 16:57:01 sklower Exp $
  4.  
  5. ;                -[Sat Aug 13 18:03:38 1983 by layer]-
  6.  
  7. ;--- genl :: generate liszt
  8. ; args are unevalated.  first arg is the name of the liszt to build
  9. ; other args [optional]:  slow        - build interpreted.
  10. ;
  11. (defun genl fexpr (args)
  12.    (let ((dumpname (car args))
  13.      (slowp (memq 'slow (cdr args))))
  14.       (load 'fcninfo)    ; in /usr/lib/lisp (not normally in lisp)
  15.       (if slowp then (load '../cmacros.l))
  16.       (mapc '(lambda (name)
  17.         (if slowp
  18.            then ; lisp source is in ..
  19.             (load (concat "../" name ".l"))
  20.            else ; objects are in .
  21.             (load name)))
  22.         '(decl array vector datab expr io funa funb func tlev
  23.            instr fixnum util lversion))
  24.       (allocate 'list 400)
  25.       (allocate 'fixnum 10)
  26.       (allocate 'symbol 50)
  27.       (sstatus translink on)
  28.       (if slowp then (setq displace-macros t))
  29.       (sstatus nofeature for-vax) ; remove memory of what it was compiled for
  30.       (sstatus nofeature for-tahoe)
  31.       (sstatus nofeature for-68k)
  32.       ;indicate type of compiler (np and lbot in global registers)
  33.       (setq $global-reg$ (not (status feature no-global-reg)))
  34.       (putprop 'chead nil 'version)  ; so the compiler can compile itself
  35.       (setq ER%tpl 'break-err-handler) ; in case we are using another tpl
  36.       ; this is a temporary measure
  37.       (apply 'dumplisp (list dumpname))))
  38.