Fri, 11 Apr 2008 09:56:35 -0400
Merge
1 #
2 # Copyright 1997-2007 Sun Microsystems, Inc. All Rights Reserved.
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 #
5 # This code is free software; you can redistribute it and/or modify it
6 # under the terms of the GNU General Public License version 2 only, as
7 # published by the Free Software Foundation.
8 #
9 # This code is distributed in the hope that it will be useful, but WITHOUT
10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 # version 2 for more details (a copy is included in the LICENSE file that
13 # accompanied this code).
14 #
15 # You should have received a copy of the GNU General Public License version
16 # 2 along with this work; if not, write to the Free Software Foundation,
17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 #
19 # Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
20 # CA 95054 USA or visit www.sun.com if you need additional information or
21 # have any questions.
22 #
23 #
25 # Resource file containing VERSIONINFO
26 Res_Files=.\version.res
28 !ifdef RELEASE
29 !ifdef DEVELOP
30 CPP_FLAGS=$(CPP_FLAGS) /D "DEBUG"
31 !else
32 CPP_FLAGS=$(CPP_FLAGS) /D "PRODUCT"
33 !endif
34 !else
35 CPP_FLAGS=$(CPP_FLAGS) /D "ASSERT"
36 !endif
38 !if "$(Variant)" == "core"
39 # No need to define anything, CORE is defined as !COMPILER1 && !COMPILER2
40 !endif
42 !if "$(Variant)" == "kernel"
43 CPP_FLAGS=$(CPP_FLAGS) /D "KERNEL"
44 !endif
46 !if "$(Variant)" == "compiler1"
47 CPP_FLAGS=$(CPP_FLAGS) /D "COMPILER1"
48 !endif
50 !if "$(Variant)" == "compiler2"
51 CPP_FLAGS=$(CPP_FLAGS) /D "COMPILER2"
52 !endif
54 !if "$(Variant)" == "tiered"
55 CPP_FLAGS=$(CPP_FLAGS) /D "COMPILER1" /D "COMPILER2"
56 !endif
58 # The following variables are defined in the generated local.make file.
59 CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_RELEASE_VERSION=\"$(HS_BUILD_VER)\""
60 CPP_FLAGS=$(CPP_FLAGS) /D "JRE_RELEASE_VERSION=\"$(JRE_RELEASE_VER)\""
61 CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_LIB_ARCH=\"$(BUILDARCH)\""
62 CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_BUILD_TARGET=\"$(BUILD_FLAVOR)\""
63 CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_BUILD_USER=\"$(BuildUser)\""
64 CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_VM_DISTRO=\"$(HOTSPOT_VM_DISTRO)\""
66 CPP_FLAGS=$(CPP_FLAGS) /D "WIN32" /D "_WINDOWS" $(CPP_INCLUDE_DIRS)
68 # Must specify this for sharedRuntimeTrig.cpp
69 CPP_FLAGS=$(CPP_FLAGS) /D "VM_LITTLE_ENDIAN"
71 # Define that so jni.h is on correct side
72 CPP_FLAGS=$(CPP_FLAGS) /D "_JNI_IMPLEMENTATION_"
74 !if "$(BUILDARCH)" == "ia64"
75 STACK_SIZE="/STACK:1048576,262144"
76 !else
77 STACK_SIZE=
78 !endif
80 !if "$(BUILDARCH)" == "ia64"
81 # AsyncGetCallTrace is not supported on IA64 yet
82 AGCT_EXPORT=
83 !else
84 !if "$(Variant)" == "kernel"
85 AGCT_EXPORT=
86 !else
87 AGCT_EXPORT=/export:AsyncGetCallTrace
88 !endif
89 !endif
91 LINK_FLAGS=$(LINK_FLAGS) $(STACK_SIZE) /subsystem:windows /dll /base:0x8000000 \
92 /export:JNI_GetDefaultJavaVMInitArgs /export:JNI_CreateJavaVM \
93 /export:JNI_GetCreatedJavaVMs /export:jio_snprintf \
94 /export:jio_printf /export:jio_fprintf \
95 /export:jio_vfprintf /export:jio_vsnprintf $(AGCT_EXPORT) \
96 /export:JVM_GetVersionInfo \
97 /export:JVM_GetThreadStateNames /export:JVM_GetThreadStateValues \
98 /export:JVM_InitAgentProperties
100 CPP_INCLUDE_DIRS=\
101 /I "..\generated" \
102 /I "..\generated\jvmtifiles" \
103 /I "$(WorkSpace)\src\share\vm\c1" \
104 /I "$(WorkSpace)\src\share\vm\compiler" \
105 /I "$(WorkSpace)\src\share\vm\code" \
106 /I "$(WorkSpace)\src\share\vm\interpreter" \
107 /I "$(WorkSpace)\src\share\vm\ci" \
108 /I "$(WorkSpace)\src\share\vm\classfile" \
109 /I "$(WorkSpace)\src\share\vm\gc_implementation\parallelScavenge"\
110 /I "$(WorkSpace)\src\share\vm\gc_implementation\shared"\
111 /I "$(WorkSpace)\src\share\vm\gc_implementation\parNew"\
112 /I "$(WorkSpace)\src\share\vm\gc_implementation\concurrentMarkSweep"\
113 /I "$(WorkSpace)\src\share\vm\gc_interface"\
114 /I "$(WorkSpace)\src\share\vm\asm" \
115 /I "$(WorkSpace)\src\share\vm\memory" \
116 /I "$(WorkSpace)\src\share\vm\oops" \
117 /I "$(WorkSpace)\src\share\vm\prims" \
118 /I "$(WorkSpace)\src\share\vm\runtime" \
119 /I "$(WorkSpace)\src\share\vm\services" \
120 /I "$(WorkSpace)\src\share\vm\utilities" \
121 /I "$(WorkSpace)\src\share\vm\libadt" \
122 /I "$(WorkSpace)\src\share\vm\opto" \
123 /I "$(WorkSpace)\src\os\windows\vm" \
124 /I "$(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm" \
125 /I "$(WorkSpace)\src\cpu\$(Platform_arch)\vm"
127 CPP_USE_PCH=/Fp"vm.pch" /Yu"incls/_precompiled.incl"
129 # Where to find the source code for the virtual machine
130 VM_PATH=../generated/incls
131 VM_PATH=$(VM_PATH);../generated/jvmtifiles
132 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/c1
133 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/compiler
134 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/code
135 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/interpreter
136 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/ci
137 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/classfile
138 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_implementation/parallelScavenge
139 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_implementation/shared
140 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_implementation/parNew
141 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_implementation/concurrentMarkSweep
142 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_interface
143 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/asm
144 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/memory
145 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/oops
146 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/prims
147 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/runtime
148 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/services
149 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/utilities
150 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/libadt
151 VM_PATH=$(VM_PATH);$(WorkSpace)/src/os/windows/vm
152 VM_PATH=$(VM_PATH);$(WorkSpace)/src/os_cpu/windows_$(Platform_arch)/vm
153 VM_PATH=$(VM_PATH);$(WorkSpace)/src/cpu/$(Platform_arch)/vm
154 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/opto
156 VM_PATH={$(VM_PATH)}
158 # Special case files not using precompiled header files.
160 c1_RInfo_$(Platform_arch).obj: $(WorkSpace)\src\cpu\$(Platform_arch)\vm\c1_RInfo_$(Platform_arch).cpp
161 $(CPP) $(CPP_FLAGS) /c $(WorkSpace)\src\cpu\$(Platform_arch)\vm\c1_RInfo_$(Platform_arch).cpp
163 os_windows.obj: $(WorkSpace)\src\os\windows\vm\os_windows.cpp
164 $(CPP) $(CPP_FLAGS) /c $(WorkSpace)\src\os\windows\vm\os_windows.cpp
166 os_windows_$(Platform_arch).obj: $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\os_windows_$(Platform_arch).cpp
167 $(CPP) $(CPP_FLAGS) /c $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\os_windows_$(Platform_arch).cpp
169 osThread_windows.obj: $(WorkSpace)\src\os\windows\vm\osThread_windows.cpp
170 $(CPP) $(CPP_FLAGS) /c $(WorkSpace)\src\os\windows\vm\osThread_windows.cpp
172 conditionVar_windows.obj: $(WorkSpace)\src\os\windows\vm\conditionVar_windows.cpp
173 $(CPP) $(CPP_FLAGS) /c $(WorkSpace)\src\os\windows\vm\conditionVar_windows.cpp
175 getThread_windows_$(Platform_arch).obj: $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\getThread_windows_$(Platform_arch).cpp
176 $(CPP) $(CPP_FLAGS) /c $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\getThread_windows_$(Platform_arch).cpp
178 opcodes.obj: $(WorkSpace)\src\share\vm\opto\opcodes.cpp
179 $(CPP) $(CPP_FLAGS) /c $(WorkSpace)\src\share\vm\opto\opcodes.cpp
181 bytecodeInterpreter.obj: $(WorkSpace)\src\share\vm\interpreter\bytecodeInterpreter.cpp
182 $(CPP) $(CPP_FLAGS) /c $(WorkSpace)\src\share\vm\interpreter\bytecodeInterpreter.cpp
184 bytecodeInterpreterWithChecks.obj: ..\generated\jvmtifiles\bytecodeInterpreterWithChecks.cpp
185 $(CPP) $(CPP_FLAGS) /c ..\generated\jvmtifiles\bytecodeInterpreterWithChecks.cpp
187 # Default rules for the Virtual Machine
188 {$(WorkSpace)\src\share\vm\c1}.cpp.obj::
189 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
191 {$(WorkSpace)\src\share\vm\compiler}.cpp.obj::
192 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
194 {$(WorkSpace)\src\share\vm\code}.cpp.obj::
195 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
197 {$(WorkSpace)\src\share\vm\interpreter}.cpp.obj::
198 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
200 {$(WorkSpace)\src\share\vm\ci}.cpp.obj::
201 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
203 {$(WorkSpace)\src\share\vm\classfile}.cpp.obj::
204 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
206 {$(WorkSpace)\src\share\vm\gc_implementation\parallelScavenge}.cpp.obj::
207 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
209 {$(WorkSpace)\src\share\vm\gc_implementation\shared}.cpp.obj::
210 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
212 {$(WorkSpace)\src\share\vm\gc_implementation\parNew}.cpp.obj::
213 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
215 {$(WorkSpace)\src\share\vm\gc_implementation\concurrentMarkSweep}.cpp.obj::
216 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
218 {$(WorkSpace)\src\share\vm\gc_interface}.cpp.obj::
219 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
221 {$(WorkSpace)\src\share\vm\asm}.cpp.obj::
222 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
224 {$(WorkSpace)\src\share\vm\memory}.cpp.obj::
225 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
227 {$(WorkSpace)\src\share\vm\oops}.cpp.obj::
228 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
230 {$(WorkSpace)\src\share\vm\prims}.cpp.obj::
231 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
233 {$(WorkSpace)\src\share\vm\runtime}.cpp.obj::
234 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
236 {$(WorkSpace)\src\share\vm\services}.cpp.obj::
237 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
239 {$(WorkSpace)\src\share\vm\utilities}.cpp.obj::
240 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
242 {$(WorkSpace)\src\share\vm\libadt}.cpp.obj::
243 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
245 {$(WorkSpace)\src\share\vm\opto}.cpp.obj::
246 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
248 {$(WorkSpace)\src\os\windows\vm}.cpp.obj::
249 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
251 # This guy should remain a single colon rule because
252 # otherwise we can't specify the output filename.
253 {$(WorkSpace)\src\os\windows\vm}.rc.res:
254 @$(RC) $(RC_FLAGS) /fo"$@" $<
256 {$(WorkSpace)\src\cpu\$(Platform_arch)\vm}.cpp.obj::
257 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
259 {$(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm}.cpp.obj::
260 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
262 {..\generated\incls}.cpp.obj::
263 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
265 {..\generated\jvmtifiles}.cpp.obj::
266 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
268 default::
270 _build_pch_file.obj:
271 @echo #include "incls/_precompiled.incl" > ../generated/_build_pch_file.cpp
272 $(CPP) $(CPP_FLAGS) /Fp"vm.pch" /Yc"incls/_precompiled.incl" /c ../generated/_build_pch_file.cpp