1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87
|
; Copyright (c) 1993-2008 by Richard Kelsey and Jonathan Rees. See file COPYING.
; Static linker. Doesn't work very well this way (debug info is
; screwed up), so it's probably better to continue using linker.image
; instead.
(define-structure linker linker-interface
(open scheme-level-2
compiler write-images
platform
debuginfo
segments ;with-fresh-compiler-state
packages
packages-internal ;set-package-integrate?!
names ;name->symbol
scan-package ;collect-packages
compile-packages ;compile-package
reification
closures ;make closure to pass to write-image
filenames
debug-data ;with-fresh-compiler-state
locations
tables fluids simple-signals util)
(files (link link)))
(define-structure reification (export reify-structures)
(open scheme-level-2
packages
packages-internal ;?
usual-macros ;find-free-names-in-syntax-rules
names bindings
meta-types ;usual-variable-type
locations
primops
tables records
simple-signals ;error
features ;force-output
util ;filter
inline) ;name->extrinsic
(files (link reify)))
; Database of procedure names 'n' stuff.
; (copy in env-packages.scm ...)
(define-structure debuginfo debuginfo-interface
(open scheme-level-2
tables
debug-data
packages
packages-internal
syntactic
segments ;debug-data-table
features) ;make-immutable!
(files (env debuginfo)))
; Mumble.
(define-structure flatloading (export flatload all-file-names)
(open scheme packages packages-internal filenames)
(files (env flatload)))
(define-structure loadc (export load-configuration
;; (structure-ref :syntax)
)
(open scheme
environments ; *structure-ref
syntactic ; $source-file-name
fluids)
(files (link loadc)))
; Everything.
(define-structure link-config (export ) ;dummy structure...
(open scheme-level-2
linker
defpackage
types
analysis
loadc
flatloading
interfaces
simple-signals) ;warn
;; (files (alt init-defpackage.scm)) -- or (env ...), depending
)
|