]> gitweb.factorcode.org Git - factor.git/blobdiff - Nmakefile
Windows: Add two new targets, x86-32-vista and x86-64-vista for bjourne's
[factor.git] / Nmakefile
index d0b543d7abde02fe8837031ba727191c5f1930da..02dbfd4fa981f1cad874a4a1b662cf8a59682164 100755 (executable)
--- a/Nmakefile
+++ b/Nmakefile
@@ -1,32 +1,45 @@
+!IF !DEFINED(BOOTIMAGE_VERSION)
+BOOTIMAGE_VERSION = latest
+!ENDIF
+
 !IF DEFINED(PLATFORM)
 
 LINK_FLAGS = /nologo shell32.lib
-CL_FLAGS = /nologo /O2 /W3 /D_CRT_SECURE_NO_WARNINGS
-
-!IF DEFINED(DEBUG)
-LINK_FLAGS = $(LINK_FLAGS) /DEBUG
-CL_FLAGS = $(CL_FLAGS) /Zi /DFACTOR_DEBUG
-!ENDIF
+CL_FLAGS = /nologo /O2 /WX /W3 /D_CRT_SECURE_NO_WARNINGS
+CL_FLAGS_VISTA = /D_WIN32_WINNT=0x0600
 
 !IF "$(PLATFORM)" == "x86-32"
 LINK_FLAGS = $(LINK_FLAGS) /safeseh
-PLAF_DLL_OBJS = vm\os-windows-nt-x86.32.obj vm\safeseh.obj
+PLAF_DLL_OBJS = vm\os-windows-x86.32.obj vm\safeseh.obj vm\cpu-x86.obj
+
+!ELSEIF "$(PLATFORM)" == "x86-32-vista"
+LINK_FLAGS = $(LINK_FLAGS) /safeseh
+CL_FLAGS = $(CL_FLAGS) $(CL_FLAGS_VISTA)
+PLAF_DLL_OBJS = vm\os-windows-x86.32.obj vm\safeseh.obj vm\cpu-x86.obj
+
 !ELSEIF "$(PLATFORM)" == "x86-64"
-PLAF_DLL_OBJS = vm\os-windows-nt-x86.64.obj
+PLAF_DLL_OBJS = vm\os-windows-x86.64.obj vm\cpu-x86.obj
+
+!ELSEIF "$(PLATFORM)" == "x86-64-vista"
+CL_FLAGS = $(CL_FLAGS) $(CL_FLAGS_VISTA)
+PLAF_DLL_OBJS = vm\os-windows-x86.64.obj vm\cpu-x86.obj
+!ENDIF
+
+!IF DEFINED(DEBUG)
+LINK_FLAGS = $(LINK_FLAGS) /DEBUG
+CL_FLAGS = $(CL_FLAGS) /Zi /DFACTOR_DEBUG
 !ENDIF
 
 ML_FLAGS = /nologo /safeseh
 
-EXE_OBJS = vm\main-windows-nt.obj vm\factor.res
+EXE_OBJS = vm\main-windows.obj vm\factor.res
 
 DLL_OBJS = $(PLAF_DLL_OBJS) \
        vm\os-windows.obj \
-       vm\os-windows-nt.obj \
        vm\aging_collector.obj \
        vm\alien.obj \
        vm\arrays.obj \
        vm\bignum.obj \
-       vm\booleans.obj \
        vm\byte_arrays.obj \
        vm\callbacks.obj \
        vm\callstack.obj \
@@ -44,6 +57,7 @@ DLL_OBJS = $(PLAF_DLL_OBJS) \
        vm\free_list.obj \
        vm\full_collector.obj \
        vm\gc.obj \
+       vm/gc_info.obj \
        vm\image.obj \
        vm\inline_cache.obj \
        vm\instruction_operands.obj \
@@ -51,19 +65,20 @@ DLL_OBJS = $(PLAF_DLL_OBJS) \
        vm\jit.obj \
        vm\math.obj \
        vm\mvm.obj \
-       vm\mvm-windows-nt.obj \
+       vm\mvm-windows.obj \
        vm\nursery_collector.obj \
        vm\object_start_map.obj \
        vm\objects.obj \
        vm\primitives.obj \
-       vm\profiler.obj \
        vm\quotations.obj \
        vm\run.obj \
+       vm\safepoints.obj \
+       vm\sampling_profiler.obj \
        vm\strings.obj \
        vm\to_tenured_collector.obj \
        vm\tuples.obj \
        vm\utilities.obj \
-        vm\vm.obj \
+       vm\vm.obj \
        vm\words.obj
 
 .cpp.obj:
@@ -99,22 +114,31 @@ default:
        @echo Where platform is one of:
        @echo x86-32
        @echo x86-64
+       @echo x86-32-vista
+       @echo x86-64-vista
        @exit 1
 
 x86-32:
-       nmake PLATFORM=x86-32 /f Nmakefile all
+       nmake /nologo PLATFORM=x86-32 /f Nmakefile all
 
 x86-64:
-       nmake PLATFORM=x86-64 /f Nmakefile all
+       nmake /nologo PLATFORM=x86-64 /f Nmakefile all
+
+x86-32-vista:
+       nmake /nologo PLATFORM=x86-32-vista /f Nmakefile all
+
+x86-64-vista:
+       nmake /nologo PLATFORM=x86-64-vista /f Nmakefile all
 
 clean:
        del vm\*.obj
-       del factor.lib
-       del factor.com
-       del factor.exe
-       del factor.dll
-       del factor.dll.lib
-
-.PHONY: all default x86-32 x86-64 clean
+       if exist factor.lib del factor.lib
+       if exist factor.res del factor.res
+       if exist factor.com del factor.com
+       if exist factor.exe del factor.exe
+       if exist factor.dll del factor.dll
+       if exist factor.dll.lib del factor.dll.lib
+
+.PHONY: all default x86-32 x86-64 x86-32-vista x86-64-vista clean
 
 .SUFFIXES: .rs