vm.make 14.4 KB
Newer Older
D
duke 已提交
1
#
Z
zgu 已提交
2
# Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
3
# Copyright 2019 Red Hat, Inc.
D
duke 已提交
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
20 21 22
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
23
#
D
duke 已提交
24 25 26 27 28
#

# Resource file containing VERSIONINFO
Res_Files=.\version.res

29 30
!include ..\generated\objfiles.make

31 32 33
COMMONSRC=$(WorkSpace)\src
ALTSRC=$(WorkSpace)\src\closed

34
!ifdef RELEASE
35
CXX_FLAGS=$(CXX_FLAGS) /D "PRODUCT"
D
duke 已提交
36
!else
37
CXX_FLAGS=$(CXX_FLAGS) /D "ASSERT"
D
duke 已提交
38 39 40
!endif

!if "$(Variant)" == "compiler1"
41
CXX_FLAGS=$(CXX_FLAGS) /D "COMPILER1"
D
duke 已提交
42 43 44
!endif

!if "$(Variant)" == "compiler2"
45
CXX_FLAGS=$(CXX_FLAGS) /D "COMPILER2"
D
duke 已提交
46 47 48
!endif

!if "$(Variant)" == "tiered"
49
CXX_FLAGS=$(CXX_FLAGS) /D "COMPILER1" /D "COMPILER2"
D
duke 已提交
50 51
!endif

52 53 54 55 56 57
!if "$(BUILDARCH)" == "i486"
HOTSPOT_LIB_ARCH=i386
!else
HOTSPOT_LIB_ARCH=$(BUILDARCH)
!endif

D
duke 已提交
58
# The following variables are defined in the generated local.make file.
59 60 61 62 63 64
CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_RELEASE_VERSION=\"$(HS_BUILD_VER)\""
CXX_FLAGS=$(CXX_FLAGS) /D "JRE_RELEASE_VERSION=\"$(JRE_RELEASE_VER)\""
CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_LIB_ARCH=\"$(HOTSPOT_LIB_ARCH)\""
CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_BUILD_TARGET=\"$(BUILD_FLAVOR)\""
CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_BUILD_USER=\"$(BuildUser)\""
CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_VM_DISTRO=\"$(HOTSPOT_VM_DISTRO)\""
65 66 67 68
CXX_FLAGS=$(CXX_FLAGS) /D "VENDOR=\"$(COMPANY_NAME)\""
CXX_FLAGS=$(CXX_FLAGS) /D "VENDOR_URL=\"$(VENDOR_URL)\""
CXX_FLAGS=$(CXX_FLAGS) /D "VENDOR_URL_BUG=\"$(VENDOR_URL_BUG)\""
CXX_FLAGS=$(CXX_FLAGS) /D "VENDOR_URL_VM_BUG=\"$(VENDOR_URL_VM_BUG)\""
D
duke 已提交
69

70
CXX_FLAGS=$(CXX_FLAGS) $(CXX_INCLUDE_DIRS)
D
duke 已提交
71 72

# Define that so jni.h is on correct side
73
CXX_FLAGS=$(CXX_FLAGS) /D "_JNI_IMPLEMENTATION_"
D
duke 已提交
74 75 76 77 78 79 80 81 82 83 84 85 86 87

!if "$(BUILDARCH)" == "ia64"
STACK_SIZE="/STACK:1048576,262144"
!else
STACK_SIZE=
!endif

!if "$(BUILDARCH)" == "ia64"
# AsyncGetCallTrace is not supported on IA64 yet
AGCT_EXPORT=
!else
AGCT_EXPORT=/export:AsyncGetCallTrace
!endif

88
# If you modify exports below please do the corresponding changes in
89
# src/share/tools/ProjectCreator/WinGammaPlatformVC7.java
90
LD_FLAGS=$(LD_FLAGS) $(STACK_SIZE) /subsystem:windows /dll /base:0x8000000 \
91 92 93 94 95 96 97 98 99 100 101 102 103
  /export:JNI_GetDefaultJavaVMInitArgs       \
  /export:JNI_CreateJavaVM                   \
  /export:JVM_FindClassFromBootLoader        \
  /export:JNI_GetCreatedJavaVMs              \
  /export:jio_snprintf                       \
  /export:jio_printf                         \
  /export:jio_fprintf                        \
  /export:jio_vfprintf                       \
  /export:jio_vsnprintf                      \
  $(AGCT_EXPORT)                             \
  /export:JVM_GetVersionInfo                 \
  /export:JVM_GetThreadStateNames            \
  /export:JVM_GetThreadStateValues           \
D
duke 已提交
104 105
  /export:JVM_InitAgentProperties

106
CXX_INCLUDE_DIRS=/I "..\generated"
107 108

!if exists($(ALTSRC)\share\vm)
109
CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) /I "$(ALTSRC)\share\vm"
110 111 112
!endif

!if exists($(ALTSRC)\os\windows\vm)
113
CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) /I "$(ALTSRC)\os\windows\vm"
114 115 116
!endif

!if exists($(ALTSRC)\os_cpu\windows_$(Platform_arch)\vm)
117
CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) /I "$(ALTSRC)\os_cpu\windows_$(Platform_arch)\vm"
118 119 120
!endif

!if exists($(ALTSRC)\cpu\$(Platform_arch)\vm)
121
CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) /I "$(ALTSRC)\cpu\$(Platform_arch)\vm"
122 123
!endif

124
CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) \
125
  /I "$(COMMONSRC)\share\vm" \
126
  /I "$(COMMONSRC)\share\vm\precompiled" \
127 128 129 130
  /I "$(COMMONSRC)\share\vm\prims" \
  /I "$(COMMONSRC)\os\windows\vm" \
  /I "$(COMMONSRC)\os_cpu\windows_$(Platform_arch)\vm" \
  /I "$(COMMONSRC)\cpu\$(Platform_arch)\vm"
D
duke 已提交
131

132
CXX_DONT_USE_PCH=/D DONT_USE_PRECOMPILED_HEADER
133 134

!if "$(USE_PRECOMPILED_HEADER)" != "0"
135
CXX_USE_PCH=/Fp"vm.pch" /Yu"precompiled.hpp"
136 137
!if "$(COMPILER_NAME)" == "VS2012" || "$(COMPILER_NAME)" == "VS2013" || "$(COMPILER_NAME)" == "VS2015" || "$(COMPILER_NAME)" == "VS2017"
# VS2012 and later require this object file to be listed:
138 139
LD_FLAGS=$(LD_FLAGS) _build_pch_file.obj
!endif
140
!else
141
CXX_USE_PCH=$(CXX_DONT_USE_PCH)
142
!endif
D
duke 已提交
143

144
# Where to find the source code for the virtual machine (is this used?)
145 146
VM_PATH=../generated
VM_PATH=$(VM_PATH);../generated/adfiles
D
duke 已提交
147
VM_PATH=$(VM_PATH);../generated/jvmtifiles
S
sla 已提交
148
VM_PATH=$(VM_PATH);../generated/tracefiles
D
duke 已提交
149 150 151 152 153 154 155 156 157 158
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/c1
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/compiler
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/code
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/interpreter
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/ci
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/classfile
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_implementation/parallelScavenge
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_implementation/shared
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_implementation/parNew
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_implementation/concurrentMarkSweep
159
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_implementation/g1
D
duke 已提交
160 161 162 163 164
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_interface
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/asm
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/memory
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/oops
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/prims
165
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/prims/wbtestmethods
D
duke 已提交
166 167
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/runtime
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/services
168
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/trace
D
duke 已提交
169 170 171 172 173 174 175
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/utilities
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/libadt
VM_PATH=$(VM_PATH);$(WorkSpace)/src/os/windows/vm
VM_PATH=$(VM_PATH);$(WorkSpace)/src/os_cpu/windows_$(Platform_arch)/vm
VM_PATH=$(VM_PATH);$(WorkSpace)/src/cpu/$(Platform_arch)/vm
VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/opto

176 177
!if exists($(ALTSRC)\share\vm\jfr)
VM_PATH=$(VM_PATH);$(ALTSRC)/share/vm/jfr
S
sla 已提交
178
VM_PATH=$(VM_PATH);$(ALTSRC)/share/vm/jfr/buffers
179 180
!endif

D
duke 已提交
181 182 183 184
VM_PATH={$(VM_PATH)}

# Special case files not using precompiled header files.

D
drchase 已提交
185
c1_RInfo_$(Platform_arch).obj: $(WorkSpace)\src\cpu\$(Platform_arch)\vm\c1_RInfo_$(Platform_arch).cpp
186
	 $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\cpu\$(Platform_arch)\vm\c1_RInfo_$(Platform_arch).cpp
D
duke 已提交
187 188

os_windows.obj: $(WorkSpace)\src\os\windows\vm\os_windows.cpp
189
        $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os\windows\vm\os_windows.cpp
D
duke 已提交
190 191

os_windows_$(Platform_arch).obj: $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\os_windows_$(Platform_arch).cpp
192
        $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\os_windows_$(Platform_arch).cpp
D
duke 已提交
193 194

osThread_windows.obj: $(WorkSpace)\src\os\windows\vm\osThread_windows.cpp
195
        $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os\windows\vm\osThread_windows.cpp
D
duke 已提交
196 197

conditionVar_windows.obj: $(WorkSpace)\src\os\windows\vm\conditionVar_windows.cpp
198
        $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os\windows\vm\conditionVar_windows.cpp
D
duke 已提交
199 200

getThread_windows_$(Platform_arch).obj: $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\getThread_windows_$(Platform_arch).cpp
201
        $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\getThread_windows_$(Platform_arch).cpp
D
duke 已提交
202 203

opcodes.obj: $(WorkSpace)\src\share\vm\opto\opcodes.cpp
204
        $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\share\vm\opto\opcodes.cpp
D
duke 已提交
205 206

bytecodeInterpreter.obj: $(WorkSpace)\src\share\vm\interpreter\bytecodeInterpreter.cpp
207
        $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\share\vm\interpreter\bytecodeInterpreter.cpp
D
duke 已提交
208 209

bytecodeInterpreterWithChecks.obj: ..\generated\jvmtifiles\bytecodeInterpreterWithChecks.cpp
210
        $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c ..\generated\jvmtifiles\bytecodeInterpreterWithChecks.cpp
D
duke 已提交
211 212

# Default rules for the Virtual Machine
213
{$(COMMONSRC)\share\vm\c1}.cpp.obj::
214
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
215

216
{$(COMMONSRC)\share\vm\compiler}.cpp.obj::
217
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
218

219
{$(COMMONSRC)\share\vm\code}.cpp.obj::
220
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
221

222
{$(COMMONSRC)\share\vm\interpreter}.cpp.obj::
223
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
224

225
{$(COMMONSRC)\share\vm\ci}.cpp.obj::
226
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
227

228
{$(COMMONSRC)\share\vm\classfile}.cpp.obj::
229
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
230

231
{$(COMMONSRC)\share\vm\gc_implementation\parallelScavenge}.cpp.obj::
232
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
233

234
{$(COMMONSRC)\share\vm\gc_implementation\shared}.cpp.obj::
235
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
236

237
{$(COMMONSRC)\share\vm\gc_implementation\parNew}.cpp.obj::
238
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
239

240
{$(COMMONSRC)\share\vm\gc_implementation\concurrentMarkSweep}.cpp.obj::
241
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
242

243
{$(COMMONSRC)\share\vm\gc_implementation\g1}.cpp.obj::
244
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
245

246
{$(COMMONSRC)\share\vm\gc_interface}.cpp.obj::
247
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
248

249
{$(COMMONSRC)\share\vm\asm}.cpp.obj::
250
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
251

252
{$(COMMONSRC)\share\vm\memory}.cpp.obj::
253
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
254

255
{$(COMMONSRC)\share\vm\oops}.cpp.obj::
256
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
257

258
{$(COMMONSRC)\share\vm\prims}.cpp.obj::
259
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
260

261 262 263
{$(COMMONSRC)\share\vm\prims\wbtestmethods}.cpp.obj::
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<

264
{$(COMMONSRC)\share\vm\runtime}.cpp.obj::
265
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
266

267
{$(COMMONSRC)\share\vm\services}.cpp.obj::
268
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
269

270
{$(COMMONSRC)\share\vm\trace}.cpp.obj::
271
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
272

273
{$(COMMONSRC)\share\vm\utilities}.cpp.obj::
274
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
275

276
{$(COMMONSRC)\share\vm\libadt}.cpp.obj::
277
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
278

279
{$(COMMONSRC)\share\vm\opto}.cpp.obj::
280
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
281

282
{$(COMMONSRC)\os\windows\vm}.cpp.obj::
283
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
284 285 286

# This guy should remain a single colon rule because
# otherwise we can't specify the output filename.
287 288 289 290
{$(COMMONSRC)\os\windows\vm}.rc.res:
        @$(RC) $(RC_FLAGS) /fo"$@" $<

{$(COMMONSRC)\cpu\$(Platform_arch)\vm}.cpp.obj::
291
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
292 293

{$(COMMONSRC)\os_cpu\windows_$(Platform_arch)\vm}.cpp.obj::
294
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
295 296

{$(ALTSRC)\share\vm\c1}.cpp.obj::
297
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
298 299

{$(ALTSRC)\share\vm\compiler}.cpp.obj::
300
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
301 302

{$(ALTSRC)\share\vm\code}.cpp.obj::
303
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
304 305

{$(ALTSRC)\share\vm\interpreter}.cpp.obj::
306
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
307 308

{$(ALTSRC)\share\vm\ci}.cpp.obj::
309
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
310 311

{$(ALTSRC)\share\vm\classfile}.cpp.obj::
312
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
313 314

{$(ALTSRC)\share\vm\gc_implementation\parallelScavenge}.cpp.obj::
315
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
316 317

{$(ALTSRC)\share\vm\gc_implementation\shared}.cpp.obj::
318
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
319 320

{$(ALTSRC)\share\vm\gc_implementation\parNew}.cpp.obj::
321
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
322 323

{$(ALTSRC)\share\vm\gc_implementation\concurrentMarkSweep}.cpp.obj::
324
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
325 326

{$(ALTSRC)\share\vm\gc_implementation\g1}.cpp.obj::
327
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
328 329

{$(ALTSRC)\share\vm\gc_interface}.cpp.obj::
330
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
331 332

{$(ALTSRC)\share\vm\asm}.cpp.obj::
333
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
334 335

{$(ALTSRC)\share\vm\memory}.cpp.obj::
336
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
337 338

{$(ALTSRC)\share\vm\oops}.cpp.obj::
339
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
340 341

{$(ALTSRC)\share\vm\prims}.cpp.obj::
342
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
343

344 345 346
{$(ALTSRC)\share\vm\prims\wbtestmethods}.cpp.obj::
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<

347
{$(ALTSRC)\share\vm\runtime}.cpp.obj::
348
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
349 350

{$(ALTSRC)\share\vm\services}.cpp.obj::
351
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
352

353
{$(ALTSRC)\share\vm\trace}.cpp.obj::
354
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
355

356
{$(ALTSRC)\share\vm\utilities}.cpp.obj::
357
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
358 359

{$(ALTSRC)\share\vm\libadt}.cpp.obj::
360
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
361 362

{$(ALTSRC)\share\vm\opto}.cpp.obj::
363
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
364 365

{$(ALTSRC)\os\windows\vm}.cpp.obj::
366
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
367 368 369

# otherwise we can't specify the output filename.
{$(ALTSRC)\os\windows\vm}.rc.res:
D
duke 已提交
370 371
        @$(RC) $(RC_FLAGS) /fo"$@" $<

372
{$(ALTSRC)\cpu\$(Platform_arch)\vm}.cpp.obj::
373
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
374

375
{$(ALTSRC)\os_cpu\windows_$(Platform_arch)\vm}.cpp.obj::
376
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
377 378

{..\generated\incls}.cpp.obj::
379
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
380

381
{..\generated\adfiles}.cpp.obj::
382
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
383

D
duke 已提交
384
{..\generated\jvmtifiles}.cpp.obj::
385
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
D
duke 已提交
386

S
sla 已提交
387
{..\generated\tracefiles}.cpp.obj::
388
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
389

S
sla 已提交
390
{$(ALTSRC)\share\vm\jfr}.cpp.obj::
391
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
392

S
sla 已提交
393
{$(ALTSRC)\share\vm\jfr\buffers}.cpp.obj::
394
        $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
395

D
duke 已提交
396 397 398
default::

_build_pch_file.obj:
399
        @echo #include "precompiled.hpp" > ../generated/_build_pch_file.cpp
400
        $(CXX) $(CXX_FLAGS) /Fp"vm.pch" /Yc"precompiled.hpp" /c ../generated/_build_pch_file.cpp
401 402 403 404 405 406 407 408

!if "$(BUILD_WIN_SA)" != "1"
BUILD_VM_DEF_FLAG=-nosa
!endif

vm.def: $(Obj_Files)
	sh $(WorkSpace)/make/windows/build_vm_def.sh $(BUILD_VM_DEF_FLAG)