2 LINK_FLAGS = /nologo /safeseh /DEBUG shell32.lib
3 CL_FLAGS = /nologo /Zi /O2 /W3 /DFACTOR_DEBUG
5 LINK_FLAGS = /nologo /safeseh shell32.lib
6 CL_FLAGS = /nologo /O2 /W3
9 ML_FLAGS = /nologo /safeseh
11 EXE_OBJS = vm\main-windows-nt.obj vm\factor.res
13 DLL_OBJS = vm\os-windows-nt.obj \
14 vm\os-windows-nt-x86.32.obj \
16 vm\aging_collector.obj \
29 vm\data_heap_checker.obj \
36 vm\full_collector.obj \
40 vm\instruction_operands.obj \
45 vm\mvm-windows-nt.obj \
46 vm\nursery_collector.obj \
47 vm\object_start_map.obj \
55 vm\to_tenured_collector.obj \
62 cl /EHsc $(CL_FLAGS) /Fo$@ /c $<
65 cl $(CL_FLAGS) /Fo$@ /c $<
68 ml $(ML_FLAGS) /Fo$@ /c $<
73 all: factor.com factor.exe factor.dll.lib libfactor-ffi-test.dll
75 libfactor-ffi-test.dll: vm/ffi_test.obj
76 link $(LINK_FLAGS) /out:libfactor-ffi-test.dll /dll vm/ffi_test.obj
78 factor.dll.lib: $(DLL_OBJS)
79 link $(LINK_FLAGS) /implib:factor.dll.lib /out:factor.dll /dll $(DLL_OBJS)
81 factor.com: $(EXE_OBJS) $(DLL_OBJS)
82 link $(LINK_FLAGS) /out:factor.com /SUBSYSTEM:console $(EXE_OBJS) $(DLL_OBJS)
84 factor.exe: $(EXE_OBJS) $(DLL_OBJS)
85 link $(LINK_FLAGS) /out:factor.exe /SUBSYSTEM:windows $(EXE_OBJS) $(DLL_OBJS)