home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / t3_1 / risc_src.lha / risc_sources / comp / build / oload.t < prev    next >
Encoding:
Text File  |  1990-10-15  |  2.5 KB  |  66 lines

  1. (herald oload (env tsys))
  2.  
  3. (let ((oenv (make-locale standard-env 'orbit-env)))
  4.   (*define standard-env 'orbit-env oenv)
  5.  
  6.   (*define t-implementation-env 'orbit-env oenv)
  7.  
  8.   (*define oenv 'load-orbit
  9.     (lambda system
  10.       (let ((machine (if (null? system) 
  11.              ((*value t-implementation-env 'machine-type)
  12.               ((*value t-implementation-env 'local-machine)))
  13.              (car system)))
  14.             (processor (if (null? system) 
  15.                            ((*value t-implementation-env 'processor-type)
  16.                             ((*value t-implementation-env 'local-processor)))
  17.                            (cadr system))))
  18.         (load '(build orbit_files) oenv)
  19.         (walk (lambda (f) (load f oenv)) (*value oenv '*orbit-files*))
  20.         (walk (lambda (f) (load f oenv)) (*value oenv '*top-files*))
  21.         (walk (lambda (f) (load f oenv)) (*value oenv '*front-files*))
  22.     (xcase machine
  23.       ((pmax)
  24.        (*define oenv '*endian* 'little)
  25.        (append! (*value oenv '*tas-mips-files*)
  26.             (*value oenv '*tas-mips-le-files*))
  27.        (load '(front_end pmaxfix) oenv)
  28.        (load-quietly '(t3_primops mipsconstants) oenv))
  29.       ((mipsco)
  30.        (*define oenv '*endian* 'big)
  31.        (append! (*value oenv '*tas-mips-files*)
  32.             (*value oenv '*tas-mips-be-files*))
  33.        (load '(front_end mipscofix) oenv)
  34.        (load-quietly '(t3_primops mipsconstants) oenv))
  35.       ((sparc)
  36.        (load '(front_end spfix) oenv)
  37.        (load-quietly '(t3_primops spconstants) oenv)))
  38.         (walk (lambda (f) (load f oenv)) (*value oenv '*back-end-files*))
  39.         (xcase processor
  40.           ((mips)
  41.            (walk (lambda (f) (load f oenv)) (*value oenv '*orbit-mips-files*))
  42.            (walk (lambda (f) (load f oenv)) (*value oenv '*tas-mips-files*)))
  43.           ((sparc)
  44.            (walk (lambda (f) (load f oenv)) (*value oenv '*orbit-sparc-files*))
  45.            (walk (lambda (f) (load f oenv)) (*value oenv '*tas-sparc-files*))))
  46.         (xcase machine
  47.       ((pmax mipsco)
  48.        ((*value oenv 'orbit-mips-init) 't3_primops))
  49.       ((sparc)
  50.        ((*value oenv 'orbit-sparc-init) 't3_primops)))
  51.         (*define t-implementation-env 'comfile (*value oenv 'comfile))
  52.     (*define standard-env 'compile (*value oenv 'orbit))
  53.         (walk (lambda (sym)
  54.                 (*define standard-env sym (*value oenv sym)))
  55.               '(cl 
  56.                 listing
  57.                 orbit 
  58.                 comfile 
  59.                 compile-file 
  60.                 comfile2 
  61.                 tc-syntax-table
  62.                 make-empty-early-binding-locale
  63.                 )))))
  64.  
  65.     oenv)
  66.