1 | #
|
---|
2 | # Copyright (c) 1997, 2010, Oracle and/or its affiliates. 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 Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
---|
20 | # or visit www.oracle.com if you need additional information or have any
|
---|
21 | # questions.
|
---|
22 | #
|
---|
23 | #
|
---|
24 |
|
---|
25 | # Resource file containing VERSIONINFO
|
---|
26 | Res_Files=.\version.res
|
---|
27 |
|
---|
28 | !include ..\generated\objfiles.make
|
---|
29 |
|
---|
30 | !ifdef RELEASE
|
---|
31 | !ifdef DEVELOP
|
---|
32 | CPP_FLAGS=$(CPP_FLAGS) /D "DEBUG"
|
---|
33 | !else
|
---|
34 | CPP_FLAGS=$(CPP_FLAGS) /D "PRODUCT"
|
---|
35 | !endif
|
---|
36 | !else
|
---|
37 | CPP_FLAGS=$(CPP_FLAGS) /D "ASSERT"
|
---|
38 | !endif
|
---|
39 |
|
---|
40 | !if "$(Variant)" == "core"
|
---|
41 | # No need to define anything, CORE is defined as !COMPILER1 && !COMPILER2
|
---|
42 | !endif
|
---|
43 |
|
---|
44 | !if "$(Variant)" == "kernel"
|
---|
45 | CPP_FLAGS=$(CPP_FLAGS) /D "KERNEL"
|
---|
46 | !endif
|
---|
47 |
|
---|
48 | !if "$(Variant)" == "compiler1"
|
---|
49 | CPP_FLAGS=$(CPP_FLAGS) /D "COMPILER1"
|
---|
50 | !endif
|
---|
51 |
|
---|
52 | !if "$(Variant)" == "compiler2"
|
---|
53 | CPP_FLAGS=$(CPP_FLAGS) /D "COMPILER2"
|
---|
54 | !endif
|
---|
55 |
|
---|
56 | !if "$(Variant)" == "tiered"
|
---|
57 | CPP_FLAGS=$(CPP_FLAGS) /D "COMPILER1" /D "COMPILER2"
|
---|
58 | !endif
|
---|
59 |
|
---|
60 | !if "$(BUILDARCH)" == "i486"
|
---|
61 | HOTSPOT_LIB_ARCH=i386
|
---|
62 | !else
|
---|
63 | HOTSPOT_LIB_ARCH=$(BUILDARCH)
|
---|
64 | !endif
|
---|
65 |
|
---|
66 | # The following variables are defined in the generated local.make file.
|
---|
67 | CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_RELEASE_VERSION=\"$(HS_BUILD_VER)\""
|
---|
68 | CPP_FLAGS=$(CPP_FLAGS) /D "JRE_RELEASE_VERSION=\"$(JRE_RELEASE_VER)\""
|
---|
69 | CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_LIB_ARCH=\"$(HOTSPOT_LIB_ARCH)\""
|
---|
70 | CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_BUILD_TARGET=\"$(BUILD_FLAVOR)\""
|
---|
71 | CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_BUILD_USER=\"$(BuildUser)\""
|
---|
72 | CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_VM_DISTRO=\"$(HOTSPOT_VM_DISTRO)\""
|
---|
73 |
|
---|
74 | CPP_FLAGS=$(CPP_FLAGS) $(CPP_INCLUDE_DIRS)
|
---|
75 |
|
---|
76 | # Define that so jni.h is on correct side
|
---|
77 | CPP_FLAGS=$(CPP_FLAGS) /D "_JNI_IMPLEMENTATION_"
|
---|
78 |
|
---|
79 | !if "$(BUILDARCH)" == "ia64"
|
---|
80 | STACK_SIZE="/STACK:1048576,262144"
|
---|
81 | !else
|
---|
82 | STACK_SIZE=
|
---|
83 | !endif
|
---|
84 |
|
---|
85 | !if "$(BUILDARCH)" == "ia64"
|
---|
86 | # AsyncGetCallTrace is not supported on IA64 yet
|
---|
87 | AGCT_EXPORT=
|
---|
88 | !else
|
---|
89 | !if "$(Variant)" == "kernel"
|
---|
90 | AGCT_EXPORT=
|
---|
91 | !else
|
---|
92 | AGCT_EXPORT=/export:AsyncGetCallTrace
|
---|
93 | !endif
|
---|
94 | !endif
|
---|
95 |
|
---|
96 | # If you modify exports below please do the corresponding changes in
|
---|
97 | # src/share/tools/ProjectCreator/WinGammaPlatformVC7.java
|
---|
98 | LINK_FLAGS=$(LINK_FLAGS) $(STACK_SIZE) /subsystem:windows /dll /base:0x8000000 \
|
---|
99 | /export:JNI_GetDefaultJavaVMInitArgs \
|
---|
100 | /export:JNI_CreateJavaVM \
|
---|
101 | /export:JVM_FindClassFromBootLoader \
|
---|
102 | /export:JNI_GetCreatedJavaVMs \
|
---|
103 | /export:jio_snprintf \
|
---|
104 | /export:jio_printf \
|
---|
105 | /export:jio_fprintf \
|
---|
106 | /export:jio_vfprintf \
|
---|
107 | /export:jio_vsnprintf \
|
---|
108 | $(AGCT_EXPORT) \
|
---|
109 | /export:JVM_GetVersionInfo \
|
---|
110 | /export:JVM_GetThreadStateNames \
|
---|
111 | /export:JVM_GetThreadStateValues \
|
---|
112 | /export:JVM_InitAgentProperties
|
---|
113 |
|
---|
114 | CPP_INCLUDE_DIRS=\
|
---|
115 | /I "..\generated" \
|
---|
116 | /I "$(WorkSpace)\src\share\vm" \
|
---|
117 | /I "$(WorkSpace)\src\share\vm\prims" \
|
---|
118 | /I "$(WorkSpace)\src\os\windows\vm" \
|
---|
119 | /I "$(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm" \
|
---|
120 | /I "$(WorkSpace)\src\cpu\$(Platform_arch)\vm"
|
---|
121 |
|
---|
122 | CPP_DONT_USE_PCH=/D DONT_USE_PRECOMPILED_HEADER
|
---|
123 |
|
---|
124 | !if "$(USE_PRECOMPILED_HEADER)" != "0"
|
---|
125 | CPP_USE_PCH=/Fp"vm.pch" /Yu"precompiled.hpp"
|
---|
126 | !else
|
---|
127 | CPP_USE_PCH=$(CPP_DONT_USE_PCH)
|
---|
128 | !endif
|
---|
129 |
|
---|
130 | # Where to find the source code for the virtual machine
|
---|
131 | VM_PATH=../generated
|
---|
132 | VM_PATH=$(VM_PATH);../generated/adfiles
|
---|
133 | VM_PATH=$(VM_PATH);../generated/jvmtifiles
|
---|
134 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/c1
|
---|
135 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/compiler
|
---|
136 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/code
|
---|
137 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/interpreter
|
---|
138 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/ci
|
---|
139 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/classfile
|
---|
140 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_implementation/parallelScavenge
|
---|
141 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_implementation/shared
|
---|
142 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_implementation/parNew
|
---|
143 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_implementation/concurrentMarkSweep
|
---|
144 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_implementation/g1
|
---|
145 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_interface
|
---|
146 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/asm
|
---|
147 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/memory
|
---|
148 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/oops
|
---|
149 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/prims
|
---|
150 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/runtime
|
---|
151 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/services
|
---|
152 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/utilities
|
---|
153 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/libadt
|
---|
154 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/os/windows/vm
|
---|
155 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/os_cpu/windows_$(Platform_arch)/vm
|
---|
156 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/cpu/$(Platform_arch)/vm
|
---|
157 | VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/opto
|
---|
158 |
|
---|
159 | VM_PATH={$(VM_PATH)}
|
---|
160 |
|
---|
161 | # Special case files not using precompiled header files.
|
---|
162 |
|
---|
163 | c1_RInfo_$(Platform_arch).obj: $(WorkSpace)\src\cpu\$(Platform_arch)\vm\c1_RInfo_$(Platform_arch).cpp
|
---|
164 | $(CPP) $(CPP_FLAGS) $(CPP_DONT_USE_PCH) /c $(WorkSpace)\src\cpu\$(Platform_arch)\vm\c1_RInfo_$(Platform_arch).cpp
|
---|
165 |
|
---|
166 | os_windows.obj: $(WorkSpace)\src\os\windows\vm\os_windows.cpp
|
---|
167 | $(CPP) $(CPP_FLAGS) $(CPP_DONT_USE_PCH) /c $(WorkSpace)\src\os\windows\vm\os_windows.cpp
|
---|
168 |
|
---|
169 | os_windows_$(Platform_arch).obj: $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\os_windows_$(Platform_arch).cpp
|
---|
170 | $(CPP) $(CPP_FLAGS) $(CPP_DONT_USE_PCH) /c $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\os_windows_$(Platform_arch).cpp
|
---|
171 |
|
---|
172 | osThread_windows.obj: $(WorkSpace)\src\os\windows\vm\osThread_windows.cpp
|
---|
173 | $(CPP) $(CPP_FLAGS) $(CPP_DONT_USE_PCH) /c $(WorkSpace)\src\os\windows\vm\osThread_windows.cpp
|
---|
174 |
|
---|
175 | conditionVar_windows.obj: $(WorkSpace)\src\os\windows\vm\conditionVar_windows.cpp
|
---|
176 | $(CPP) $(CPP_FLAGS) $(CPP_DONT_USE_PCH) /c $(WorkSpace)\src\os\windows\vm\conditionVar_windows.cpp
|
---|
177 |
|
---|
178 | getThread_windows_$(Platform_arch).obj: $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\getThread_windows_$(Platform_arch).cpp
|
---|
179 | $(CPP) $(CPP_FLAGS) $(CPP_DONT_USE_PCH) /c $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\getThread_windows_$(Platform_arch).cpp
|
---|
180 |
|
---|
181 | opcodes.obj: $(WorkSpace)\src\share\vm\opto\opcodes.cpp
|
---|
182 | $(CPP) $(CPP_FLAGS) $(CPP_DONT_USE_PCH) /c $(WorkSpace)\src\share\vm\opto\opcodes.cpp
|
---|
183 |
|
---|
184 | bytecodeInterpreter.obj: $(WorkSpace)\src\share\vm\interpreter\bytecodeInterpreter.cpp
|
---|
185 | $(CPP) $(CPP_FLAGS) $(CPP_DONT_USE_PCH) /c $(WorkSpace)\src\share\vm\interpreter\bytecodeInterpreter.cpp
|
---|
186 |
|
---|
187 | bytecodeInterpreterWithChecks.obj: ..\generated\jvmtifiles\bytecodeInterpreterWithChecks.cpp
|
---|
188 | $(CPP) $(CPP_FLAGS) $(CPP_DONT_USE_PCH) /c ..\generated\jvmtifiles\bytecodeInterpreterWithChecks.cpp
|
---|
189 |
|
---|
190 | # Default rules for the Virtual Machine
|
---|
191 | {$(WorkSpace)\src\share\vm\c1}.cpp.obj::
|
---|
192 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
193 |
|
---|
194 | {$(WorkSpace)\src\share\vm\compiler}.cpp.obj::
|
---|
195 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
196 |
|
---|
197 | {$(WorkSpace)\src\share\vm\code}.cpp.obj::
|
---|
198 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
199 |
|
---|
200 | {$(WorkSpace)\src\share\vm\interpreter}.cpp.obj::
|
---|
201 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
202 |
|
---|
203 | {$(WorkSpace)\src\share\vm\ci}.cpp.obj::
|
---|
204 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
205 |
|
---|
206 | {$(WorkSpace)\src\share\vm\classfile}.cpp.obj::
|
---|
207 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
208 |
|
---|
209 | {$(WorkSpace)\src\share\vm\gc_implementation\parallelScavenge}.cpp.obj::
|
---|
210 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
211 |
|
---|
212 | {$(WorkSpace)\src\share\vm\gc_implementation\shared}.cpp.obj::
|
---|
213 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
214 |
|
---|
215 | {$(WorkSpace)\src\share\vm\gc_implementation\parNew}.cpp.obj::
|
---|
216 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
217 |
|
---|
218 | {$(WorkSpace)\src\share\vm\gc_implementation\concurrentMarkSweep}.cpp.obj::
|
---|
219 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
220 |
|
---|
221 | {$(WorkSpace)\src\share\vm\gc_implementation\g1}.cpp.obj::
|
---|
222 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
223 |
|
---|
224 | {$(WorkSpace)\src\share\vm\gc_interface}.cpp.obj::
|
---|
225 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
226 |
|
---|
227 | {$(WorkSpace)\src\share\vm\asm}.cpp.obj::
|
---|
228 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
229 |
|
---|
230 | {$(WorkSpace)\src\share\vm\memory}.cpp.obj::
|
---|
231 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
232 |
|
---|
233 | {$(WorkSpace)\src\share\vm\oops}.cpp.obj::
|
---|
234 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
235 |
|
---|
236 | {$(WorkSpace)\src\share\vm\prims}.cpp.obj::
|
---|
237 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
238 |
|
---|
239 | {$(WorkSpace)\src\share\vm\runtime}.cpp.obj::
|
---|
240 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
241 |
|
---|
242 | {$(WorkSpace)\src\share\vm\services}.cpp.obj::
|
---|
243 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
244 |
|
---|
245 | {$(WorkSpace)\src\share\vm\utilities}.cpp.obj::
|
---|
246 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
247 |
|
---|
248 | {$(WorkSpace)\src\share\vm\libadt}.cpp.obj::
|
---|
249 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
250 |
|
---|
251 | {$(WorkSpace)\src\share\vm\opto}.cpp.obj::
|
---|
252 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
253 |
|
---|
254 | {$(WorkSpace)\src\os\windows\vm}.cpp.obj::
|
---|
255 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
256 |
|
---|
257 | # This guy should remain a single colon rule because
|
---|
258 | # otherwise we can't specify the output filename.
|
---|
259 | {$(WorkSpace)\src\os\windows\vm}.rc.res:
|
---|
260 | @$(RC) $(RC_FLAGS) /fo"$@" $<
|
---|
261 |
|
---|
262 | {$(WorkSpace)\src\cpu\$(Platform_arch)\vm}.cpp.obj::
|
---|
263 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
264 |
|
---|
265 | {$(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm}.cpp.obj::
|
---|
266 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
267 |
|
---|
268 | {..\generated\incls}.cpp.obj::
|
---|
269 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
270 |
|
---|
271 | {..\generated\adfiles}.cpp.obj::
|
---|
272 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
273 |
|
---|
274 | {..\generated\jvmtifiles}.cpp.obj::
|
---|
275 | $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
|
---|
276 |
|
---|
277 | default::
|
---|
278 |
|
---|
279 | _build_pch_file.obj:
|
---|
280 | @echo #include "precompiled.hpp" > ../generated/_build_pch_file.cpp
|
---|
281 | $(CPP) $(CPP_FLAGS) /Fp"vm.pch" /Yc"precompiled.hpp" /c ../generated/_build_pch_file.cpp
|
---|