% Copyright (C) 1989, 1992 Digital Equipment Corporation % All rights reserved. % See the file COPYRIGHT for a full description. % % Last Modified On Thu Jan 13 11:44:36 PST 1994 By kalsow %---------------------------------------------------------------- bootstrap --- % These functions are called to assemble the bootstrap programs % foreach f in [ "BOOT_CC", "BOOT_ASM", "BOOT_AR", "BOOT_RAN", "BOOT_LINK" ] if not defined(f) error(format ("required parameter \"%s\" not defined%s", f, CR)) end end BOOT_OBJS = [] BOOT_LIBS = [] readonly proc boot_import (file) is BOOT_LIBS += file end readonly proc boot_c (file) is local c_file = file & ".c" local o_file = file & ".o" if stale (o_file, c_file) exec (BOOT_CC, "-c", c_file) end BOOT_OBJS += file & ".o" end readonly proc _boot_asm (src, obj) is if stale (obj, src) exec (BOOT_ASM, "-o", obj, src) end BOOT_OBJS += obj end readonly proc boot_s (file) is _boot_asm (file & ".s", file & ".o") end readonly proc boot_is (file) is _boot_asm (file & ".is", file & "_i.o") end readonly proc boot_ms (file) is _boot_asm (file & ".ms", file & "_m.o") end readonly proc boot_lib (file) is exec (BOOT_AR, file, BOOT_OBJS) exec (BOOT_RAN, file) end readonly proc boot_prog (file) is exec (BOOT_LINK, "-o", file, BOOT_OBJS, BOOT_LIBS) end