Initial revision
authorChris Hanson <org/chris-hanson/cph>
Tue, 24 Oct 1995 09:34:29 +0000 (09:34 +0000)
committerChris Hanson <org/chris-hanson/cph>
Tue, 24 Oct 1995 09:34:29 +0000 (09:34 +0000)
v7/src/microcode/ntutl/makefile.wcc [new file with mode: 0644]
v7/src/microcode/ntutl/wconfig.bat [new file with mode: 0644]

diff --git a/v7/src/microcode/ntutl/makefile.wcc b/v7/src/microcode/ntutl/makefile.wcc
new file mode 100644 (file)
index 0000000..bcfe0e0
--- /dev/null
@@ -0,0 +1,536 @@
+### -*- Fundamental -*-
+###
+###     $Id: makefile.wcc,v 1.1 1995/10/24 09:32:03 cph Exp $
+###
+###     Copyright (c) 1992-1993 Massachusetts Institute of Technology
+###
+###     This material was developed by the Scheme project at the
+###     Massachusetts Institute of Technology, Department of
+###     Electrical Engineering and Computer Science.  Permission to
+###     copy this software, to redistribute it, and to use it for any
+###     purpose is granted, subject to the following restrictions and
+###     understandings.
+###
+###     1. Any copy made of this software must include this copyright
+###     notice in full.
+###
+###     2. Users of this software agree to make their best efforts (a)
+###     to return to the MIT Scheme project any improvements or
+###     extensions that they make, so that these may be included in
+###     future releases; and (b) to inform MIT of noteworthy uses of
+###     this software.
+###
+###     3. All materials developed as a consequence of the use of this
+###     software shall duly acknowledge such use, in accordance with
+###     the usual standards of acknowledging credit in academic
+###     research.
+###
+###     4. MIT has made no warrantee or representation that the
+###     operation of this software will be error-free, and MIT is
+###     under no obligation to provide any services, by way of
+###     maintenance, update, or otherwise.
+###
+###     5. In conjunction with products arising from the use of this
+###     material, there shall be no use of the name of the
+###     Massachusetts Institute of Technology nor of any adaptation
+###     thereof in any advertising, promotional, or sales literature
+###     without prior written consent from MIT in each case.
+###
+
+#### Makefile for Scheme under Win32 compiled by Watcom C/C++
+#!include <ntwin32.mak>
+
+USER_PRIM_SOURCES =
+USER_PRIM_OBJECTS =
+USER_LIBS =
+
+CC = wcc386
+M4 = m4
+AS = wasm
+
+!ifdef __OS2__
+UTIL_SYSTEM = os2v2
+WRCFLAGS_SYSTEM = /i=$(%NT_INCLUDE)
+!else
+UTIL_SYSTEM = nt
+WRCFLAGS_SYSTEM =
+!endif
+
+# Compiler options.
+# [DEBUG] marks options used for debugging.
+# [OPTIMIZE] marks options used for optimization.
+#
+# /4r          386 instructions, 486 timings, register-based args
+# /bt=nt       build NT binary (default when host is NT)
+# /d1+         generate debug info [OPTIMIZE]
+# /d2          generate debug info [DEBUG]
+# /ei          generate enum `int'-sized (required for MS compatibility)
+# /fpi         generate in-line 387 insns, emulate if none (default)
+# /fp3         generate in-line 387 insns (default)
+# /hw          generate Watcom debug info (default)
+# /mf          use flat memory model (default)
+# /od          disable optimization (default with /d2)
+# /oe          enable in-line user-code expansion [OPTIMIZE]
+# /op          force IEEE floating-point semantics
+# /ox          enable various optimizations [OPTIMIZE]
+# /s           remove stack overflow checks
+# /w0          disable warning messages
+# /zc          place literal strings in code segment
+# /ze          enable language extensions (default)
+# /zp4         use 4-byte alignment (required for MS compatibility)
+# /zq          operate quietly
+#
+# /DMIT_SCHEME required to specialize some code
+# /DGUI                configure a console window
+# omitted: /DNO_CONST /Di386
+UTIL_CFLAGS = /4r /d2 /ei /fpi /fp3 /op /s /w0 /zc /zp4 /zq
+CFLAGS = $(UTIL_CFLAGS) /bt=nt /DMIT_SCHEME /DGUI
+
+# Linker options.
+#
+# debug all            include debug info in executable
+# option caseexact     use case-sensitive comparison for identifiers
+# option quiet         operate quietly
+# option symfile       put debug info in .sym file
+LDFLAGS = debug all option caseexact option quiet
+
+# M4 options.
+#
+# -DWIN32      Specify Win32 operation.
+# -DWCC386R    Select Watcom 386 register-based conventions.
+M4FLAGS = -DWIN32 -DWCC386R
+
+# Assembler options.
+#
+# /4pr         like /4r for compiler
+# /bt=nt       build NT binary (default when host is NT)
+# /d1          generate debug info
+# /fpi         generate in-line 387 insns, emulate if none
+# /fp3         generate in-line 387 insns
+# /mf          use flat memory model
+# /zq          operate quietly
+ASFLAGS = /4pr /d1 /fpi /fp3 /mf /zq
+
+all : scheme.exe bchschem.exe bintopsb.exe psbtobin.exe
+
+.c.obj :
+       $(CC) $(CFLAGS) $[@
+
+.asm.obj :
+       $(AS) $(ASFLAGS) /fo=$^@ $[@
+
+CORE_SOURCES = &
+artutl.c &
+avltree.c &
+bignum.c &
+bigprm.c &
+bitstr.c &
+boot.c &
+char.c &
+cmpauxmd.asm &
+cmpint.c &
+comutl.c &
+daemon.c &
+debug.c &
+dfloat.c &
+error.c &
+extern.c &
+fasload.c &
+fixnum.c &
+flonum.c &
+generic.c &
+hooks.c &
+hunk.c &
+intern.c &
+interp.c &
+intprm.c &
+list.c &
+lookprm.c &
+lookup.c &
+obstack.c &
+option.c &
+osscheme.c &
+ostty.c &
+outf.c &
+prim.c &
+primutl.c &
+prmcon.c &
+ptrvec.c &
+purutl.c &
+regex.c &
+rgxprim.c &
+step.c &
+storage.c &
+string.c &
+syntax.c &
+sysprim.c &
+term.c &
+tparam.c &
+transact.c &
+utils.c &
+vector.c &
+wind.c
+
+OS_PRIM_SOURCES = &
+prosfile.c &
+prosfs.c &
+prosio.c &
+prosterm.c &
+prostty.c &
+prosenv.c &
+prntenv.c &
+prntfs.c &
+prntio.c
+
+STD_GC_SOURCES = &
+fasdump.c &
+gcloop.c &
+memmag.c &
+purify.c &
+wabbit.c
+
+BCH_GC_SOURCES = &
+bchdmp.c &
+bchgcl.c &
+bchmmg.c &
+bchpur.c &
+bchutl.c
+
+NT_SOURCES = &
+intext.c &
+ntenv.c &
+ntfile.c &
+ntfs.c &
+ntgui.c &
+ntio.c &
+ntscreen.c &
+ntsig.c &
+ntsys.c &
+nttop.c &
+nttrap.c &
+nttterm.c &
+nttty.c &
+ntasutl.asm
+
+HEAD_FILES = scheme.tch prims.h zones.h locks.h bignum.h &
+       $(GC_HEAD_FILES) trap.h lookup.h history.h cmpint.h
+
+GC_HEAD_FILES = gccode.h cmpgc.h ntscmlib.h cmpintmd.h 
+
+CORE_OBJECTS = &
+artutl.obj &
+avltree.obj &
+bignum.obj &
+bigprm.obj &
+bitstr.obj &
+boot.obj &
+char.obj &
+cmpauxmd.obj &
+cmpint.obj &
+comutl.obj &
+daemon.obj &
+debug.obj &
+dfloat.obj &
+error.obj &
+extern.obj &
+fasload.obj &
+fixnum.obj &
+flonum.obj &
+generic.obj &
+hooks.obj &
+hunk.obj &
+intern.obj &
+interp.obj &
+intprm.obj &
+list.obj &
+lookprm.obj &
+lookup.obj &
+obstack.obj &
+option.obj &
+osscheme.obj &
+ostty.obj &
+outf.obj &
+prim.obj &
+primutl.obj &
+prmcon.obj &
+ptrvec.obj &
+purutl.obj &
+regex.obj &
+rgxprim.obj &
+step.obj &
+storage.obj &
+string.obj &
+syntax.obj &
+sysprim.obj &
+term.obj &
+tparam.obj &
+transact.obj &
+utils.obj &
+vector.obj &
+wind.obj
+
+OS_PRIM_OBJECTS = &
+prosfile.obj &
+prosfs.obj &
+prosio.obj &
+prosterm.obj &
+prosenv.obj &
+prostty.obj &
+prntenv.obj &
+prntfs.obj &
+prntio.obj
+
+STD_GC_OBJECTS = &
+fasdump.obj &
+gcloop.obj &
+memmag.obj &
+purify.obj &
+wabbit.obj
+
+BCH_GC_OBJECTS = &
+bchdmp.obj &
+bchgcl.obj &
+bchmmg.obj &
+bchpur.obj &
+bchutl.obj
+
+NT_OBJECTS = &
+intext.obj &
+ntenv.obj &
+ntfile.obj &
+ntfs.obj &
+ntgui.obj &
+ntio.obj &
+ntscreen.obj &
+ntsig.obj &
+ntsys.obj  &
+nttop.obj &
+nttrap.obj &
+nttterm.obj &
+nttty.obj &
+ntasutl.obj
+
+SOURCES = $(CORE_SOURCES) $(STD_GC_SOURCES)
+OBJECTS = $(CORE_OBJECTS) $(STD_GC_OBJECTS) $(NT_OBJECTS) &
+       $(OS_PRIM_OBJECTS) usrdef.obj
+
+BCHSOURCES = $(CORE_SOURCES) $(BCH_GC_SOURCES)
+BCHOBJECTS = $(CORE_OBJECTS) $(BCH_GC_OBJECTS) $(NT_OBJECTS) &
+       $(OS_PRIM_OBJECTS) bchdef.obj
+
+SCHEME_SOURCES = $(USER_PRIM_SOURCES) missing.c
+SCHEME_OBJECTS = $(USER_PRIM_OBJECTS) missing.obj
+SCHEME_LIB = $(USER_LIBS)
+
+scheme : scheme.exe .SYMBOLIC
+
+clean : .SYMBOLIC
+       -del *.tch
+       -del *.obj
+       -del *.exe
+       -del *.lib
+       -del *.dll
+       -del *.exp
+       -del *.rbj
+       -del *.res
+       -del *.err
+       -del *.sym
+
+unconfig : .SYMBOLIC
+       -del cmpauxmd.asm
+       -del cmpintmd.h
+       -del float.h
+       -del limits.h
+       -del makefile
+       -del ntdialog.h
+       -del ntw16lib.c
+       -del ntw32lib.c
+       -del ntwntlib.c
+       -del *.mak
+       -del *.lbc
+       -del *.dlg
+       -del *.ico
+       -del *.rc
+       -del *.cur
+
+primitive_tables : .SYMBOLIC
+       -del usrdef.c
+       -del usrdef.obj
+       -del bchdef.c
+       -del bchdef.obj
+
+scheme.exe : $(OBJECTS) $(SCHEME_OBJECTS) ntscmlib.lib ntgui.res
+       *wlink system nt_win name $^@ $(LDFLAGS) &
+       file { $(OBJECTS) $(SCHEME_OBJECTS) } &
+       library { ntscmlib.lib $(SCHEME_LIB) }
+       wrc /q /ad /bt=nt ntgui.res $^@
+
+bchschem.exe : $(BCHOBJECTS) $(SCHEME_OBJECTS) ntscmlib.lib ntgui.res
+       *wlink system nt_win name $^@ $(LDFLAGS) &
+       file { $(BCHOBJECTS) $(SCHEME_OBJECTS) } &
+       library { ntscmlib.lib $(SCHEME_LIB) }
+       wrc /q /ad /bt=nt ntgui.res $^@
+
+bintopsb.exe : bintopsb.obj missing.obj
+       wlink system nt $(LDFLAGS) name $^@ file { $< }
+
+psbtobin.exe : psbtobin.obj missing.obj
+       wlink system nt $(LDFLAGS) name $^@ file { $< }
+
+findprim.exe : findprim.obj
+       wlink system $(UTIL_SYSTEM) $(LDFLAGS) name $^@ file $[@
+
+findprim.obj : findprim.c
+       $(CC) $(UTIL_CFLAGS) $[@
+
+ntscmlib.lib : ntscmlib.lbc
+       wlib /b /c /n /q $^@ @$[@
+
+# Update the resource if necessary
+ntgui.res : ntgui.rc ntgui.h ntdialog.dlg ntdialog.h
+       wrc /q /ad /bt=nt /r /x /D__WATCOMC__ $(WRCFLAGS_SYSTEM) $[@
+
+usrdef.c : $(SCHEME_SOURCES) $(SOURCES) $(OS_PRIM_SOURCES) ntgui.c usrdef.tch &
+       findprim.exe
+       .\findprim $(SCHEME_SOURCES) $(SOURCES) $(OS_PRIM_SOURCES) ntgui.c &
+       > $^@
+
+bchdef.c : $(SCHEME_SOURCES) $(BCHSOURCES) $(OS_PRIM_SOURCES) ntgui.c &
+       usrdef.tch findprim.exe
+       .\findprim $(SCHEME_SOURCES) $(BCHSOURCES) $(OS_PRIM_SOURCES) ntgui.c &
+       > $^@
+
+scheme.tch : scheme.h oscond.h ansidecl.h dstack.h obstack.h config.h &
+       bkpt.h object.h scode.h sdata.h gc.h interp.h stack.h futures.h &
+       types.h errors.h returns.h const.h fixobj.h default.h extern.h &
+       prim.h intrpt.h critsec.h float.h outf.h
+       wtouch /q /r $^@
+
+psbmap.tch : config.h object.h bignum.h bignmint.h bitstr.h types.h &
+       sdata.h const.h psbmap.h $(GC_HEAD_FILES) comlin.h comlin.c
+       wtouch /q /r $^@
+
+usrdef.tch : usrdef.h config.h object.h prim.h
+       wtouch /q /r $^@
+
+foo $(USER_PRIM_OBJECTS) : $(HEAD_FILES)
+
+### files compiled with optimization
+interp.obj : scheme.tch locks.h trap.h lookup.h history.h cmpint.h zones.h &
+       prmcon.h
+
+ntscreen.obj : ntscreen.c ntgui.h ntscreen.h
+
+gcloop.obj : scheme.tch $(GC_HEAD_FILES)
+
+fasload.obj : scheme.tch prims.h osscheme.h osfile.h osio.h $(GC_HEAD_FILES) &
+       trap.h option.h prmcon.h load.c fasl.h
+
+hooks.obj : scheme.tch prims.h winder.h history.h
+utils.obj : scheme.tch prims.h winder.h history.h cmpint.h syscall.h
+primutl.obj : scheme.tch os.h prims.h usrdef.h prename.h syscall.h &
+       avltree.h $(GC_HEAD_FILES)
+hunk.obj list.obj step.obj vector.obj : scheme.tch prims.h
+sysprim.obj daemon.obj prim.obj extern.obj : scheme.tch prims.h
+lookup.obj debug.obj intern.obj : scheme.tch prims.h lookup.h trap.h locks.h
+fasdump.obj : scheme.tch prims.h osio.h osfile.h osfs.h $(GC_HEAD_FILES) &
+       trap.h lookup.h fasl.h dump.c
+memmag.obj : scheme.tch prims.h $(GC_HEAD_FILES) memmag.h
+purify.obj : scheme.tch prims.h $(GC_HEAD_FILES) zones.h
+wabbit.obj : scheme.tch $(GC_HEAD_FILES)
+purutl.obj : scheme.tch prims.h $(GC_HEAD_FILES) zones.h
+comutl.obj : scheme.tch prims.h
+artutl.obj : scheme.tch
+avltree.obj : ansidecl.h avltree.h
+bignum.obj : scheme.tch bignmint.h limits.h
+bigprm.obj flonum.obj intprm.obj : scheme.tch prims.h zones.h
+generic.obj : scheme.tch prims.h
+fixnum.obj : scheme.tch prims.h mul.c
+storage.obj : scheme.tch gctype.c
+char.obj string.obj dfloat.obj : scheme.tch prims.h
+nttterm.obj : scheme.tch prims.h osterm.h
+boot.obj : scheme.tch prims.h version.h option.h ostop.h
+option.obj : ansidecl.h option.h
+term.obj : scheme.tch
+missing.obj : config.h
+BCHGCC_H = bchgcc.h oscond.h $(GC_HEAD_FILES)
+bchdmp.obj : scheme.tch prims.h ntio.h osio.h osfile.h trap.h lookup.h &
+       $(BCHGCC_H) fasl.h dump.c
+bchdrn.obj : ansidecl.h bchdrn.h
+bchmmg.obj : scheme.tch prims.h nt.h $(BCHGCC_H) option.h bchdrn.h memmag.h
+bchgcl.obj : scheme.tch $(BCHGCC_H)
+bchpur.obj : scheme.tch prims.h $(BCHGCC_H) zones.h
+bchutl.obj : ansidecl.h
+syntax.obj : scheme.tch prims.h edwin.h syntax.h
+bitstr.obj : scheme.tch prims.h bitstr.h
+regex.obj : scheme.tch syntax.h regex.h
+rgxprim.obj : scheme.tch prims.h edwin.h syntax.h regex.h
+bintopsb.obj : psbmap.tch trap.h limits.h fasl.h load.c bltdef.h
+psbtobin.obj : psbmap.tch float.h fasl.h dump.c
+ppband.obj : ansidecl.h config.h errors.h types.h const.h object.h &
+              $(GC_HEAD_FILES) sdata.h load.c fasl.h
+outf.obj : scheme.tch ntscreen.h
+
+fft.obj : scheme.tch prims.h zones.h array.h image.h
+array.obj image.obj : scheme.tch prims.h array.h
+cmpint.obj : scheme.tch prim.h $(GC_HEAD_FILES)
+osscheme.obj : scheme.tch posixtyp.h os.h osscheme.h
+ostty.obj : ansidecl.h oscond.h posixtyp.h os.h ostty.h osscheme.h
+error.obj ptrvec.obj transact.obj : ansidecl.h dstack.h outf.h
+wind.obj : ansidecl.h dstack.h obstack.h
+obstack.obj : obstack.h
+
+OS_PRIM_DEPENDENCIES = scheme.tch prims.h posixtyp.h os.h
+prosenv.obj : osenv.h ostop.h $(OS_PRIM_DEPENDENCIES)
+prosfile.obj : osfile.h $(OS_PRIM_DEPENDENCIES)
+prosfs.obj : osfs.h $(OS_PRIM_DEPENDENCIES)
+prosio.obj : osio.h $(OS_PRIM_DEPENDENCIES)
+prosproc.obj : osproc.h $(OS_PRIM_DEPENDENCIES)
+prosterm.obj : osterm.h osio.h $(OS_PRIM_DEPENDENCIES)
+prostty.obj : ostty.h osctty.h ossig.h osfile.h osio.h $(OS_PRIM_DEPENDENCIES)
+prmcon.obj : scheme.tch prims.h prmcon.h $(OS_PRIM_DEPENDENCIES)
+
+NT_DEPENDENCIES = oscond.h ansidecl.h posixtyp.h intext.h &
+                  dstack.h os.h osscheme.h nt.h ntsys.h syscall.h
+ntenv.obj : scheme.tch osenv.h ntscreen.h $(NT_DEPENDENCIES)
+ntfile.obj : osfile.h osio.h ntio.h $(NT_DEPENDENCIES)
+ntfs.obj : osfs.h $(NT_DEPENDENCIES)
+ntio.obj : osio.h ntio.h ntscreen.h $(NT_DEPENDENCIES)
+nttop.obj : ostop.h nttop.h osctty.h errors.h option.h $(NT_DEPENDENCIES)
+nttty.obj : ostty.h osenv.h osio.h ntio.h osterm.h ntterm.h ntscreen.h &
+       $(NT_DEPENDENCIES)
+ntsig.obj : ossig.h osctty.h ostty.h critsec.h &
+       $(NT_DEPENDENCIES) ntgui.h ntio.h ntscmlib.h ntscreen.h
+nttrap.obj: nttrap.h ntscmlib.h $(GC_HEAD_FILES) $(NT_DEPENDENCIES)
+ntsys.obj: ntsys.h
+ntgui.obj : ntgui.c ntdialog.h ntgui.h ntscreen.h $(NT_DEPENDENCIES) scheme.tch
+ntasutl.obj : ntasutl.asm
+ntkbutl.obj : ntkbutl.asm
+prntenv.obj : $(NT_DEPENDENCIES)
+prntfs.obj : $(NT_DEPENDENCIES) scheme.tch prims.h osfs.h
+prntio.obj : $(NT_DEPENDENCIES) scheme.tch prims.h ntio.h osio.h syscall.h &
+       ntscreen.h
+
+cmpauxmd.obj : cmpauxmd.asm
+
+#ntscmlib.dll ntscmlib.lib : ntwntlib.dll ntw32lib.dll
+#      copy ntw32lib.dll ntscmlib.dll
+#      copy ntw32lib.lib ntscmlib.lib
+#
+#ntwntlib.dll : ntwntlib.obj ntscmlib.lnk
+#      wlink @ntscmlib.lnk option quiet file { ntwntlib.obj }
+#
+#ntwntlib.lib : ntwntlib.dll
+#      wlib /b /c /n /q $^@ +$[@
+#
+#ntwntlib.obj : ntwntlib.c ntscmlib.h
+#      $(CC) $(CFLAGS) /bd $[@
+#
+#ntw32lib.dll ntw32lib.lib : ntw32lib.obj ntscmlib.lnk
+#      wlink @ntscmlib.lnk option quiet file { ntw32lib.obj }
+#
+#ntw32lib.lib : ntw32lib.dll
+#      wlib /b /c /n /q $^@ +$[@
+#
+#ntw32lib.obj : ntw32lib.c ntscmlib.h
+#      $(CC) $(CFLAGS) /bd $[@
diff --git a/v7/src/microcode/ntutl/wconfig.bat b/v7/src/microcode/ntutl/wconfig.bat
new file mode 100644 (file)
index 0000000..8314195
--- /dev/null
@@ -0,0 +1,18 @@
+@echo off
+rem MIT Scheme microcode configuration script for Win32 / Watcom C
+rem
+rem Copyright (c) 1995 Massachusetts Institute of Technology
+rem
+rem $Id: wconfig.bat,v 1.1 1995/10/24 09:34:29 cph Exp $
+rem
+copy cmpintmd\i386.h cmpintmd.h
+copy cmpauxmd\i386-ntw.asm cmpauxmd.asm
+copy ntutl\makefile.wcc makefile
+copy ntutl\*.h .
+copy ntutl\*.c .
+copy ntutl\*.mak .
+copy ntutl\*.lbc .
+copy ntutl\*.dlg .
+copy ntutl\*.ico .
+copy ntutl\*.rc .
+copy ntutl\*.cur .