1 #
   2 # Copyright (c) 1997, 2015, 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 COMMONSRC=$(WorkSpace)\src
  31 ALTSRC=$(WorkSpace)\src\closed
  32 
  33 !ifdef RELEASE
  34 CXX_FLAGS=$(CXX_FLAGS) /D "PRODUCT"
  35 !else
  36 CXX_FLAGS=$(CXX_FLAGS) /D "ASSERT"
  37 !if "$(BUILDARCH)" == "amd64"
  38 CXX_FLAGS=$(CXX_FLAGS) /homeparams
  39 !endif
  40 !endif
  41 
  42 !if "$(Variant)" == "compiler1"
  43 CXX_FLAGS=$(CXX_FLAGS) /D "COMPILER1"
  44 !endif
  45 
  46 !if "$(Variant)" == "compiler2"
  47 CXX_FLAGS=$(CXX_FLAGS) /D "COMPILER2"
  48 !endif
  49 
  50 !if "$(Variant)" == "tiered"
  51 CXX_FLAGS=$(CXX_FLAGS) /D "COMPILER1" /D "COMPILER2"
  52 !endif
  53 
  54 !if "$(BUILDARCH)" == "i486"
  55 HOTSPOT_LIB_ARCH=i386
  56 !else
  57 HOTSPOT_LIB_ARCH=$(BUILDARCH)
  58 !endif
  59 
  60 # The following variables are defined in the generated local.make file.
  61 CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_VERSION_STRING=\"$(HOTSPOT_VERSION_STRING)\""
  62 CXX_FLAGS=$(CXX_FLAGS) /D "VERSION_MAJOR=$(VERSION_MAJOR)"
  63 CXX_FLAGS=$(CXX_FLAGS) /D "VERSION_MINOR=$(VERSION_MINOR)"
  64 CXX_FLAGS=$(CXX_FLAGS) /D "VERSION_SECURITY=$(VERSION_SECURITY)"
  65 CXX_FLAGS=$(CXX_FLAGS) /D "VERSION_BUILD=$(VERSION_BUILD)"
  66 CXX_FLAGS=$(CXX_FLAGS) /D "VERSION_STRING=\"$(VERSION_STRING)\""
  67 CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_LIB_ARCH=\"$(HOTSPOT_LIB_ARCH)\""
  68 CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_BUILD_TARGET=\"$(BUILD_FLAVOR)\""
  69 CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_BUILD_USER=\"$(BuildUser)\""
  70 CXX_FLAGS=$(CXX_FLAGS) /D "HOTSPOT_VM_DISTRO=\"$(HOTSPOT_VM_DISTRO)\""
  71 
  72 CXX_FLAGS=$(CXX_FLAGS) $(CXX_INCLUDE_DIRS)
  73 
  74 # Define that so jni.h is on correct side
  75 CXX_FLAGS=$(CXX_FLAGS) /D "_JNI_IMPLEMENTATION_"
  76 
  77 !if "$(BUILDARCH)" == "ia64"
  78 STACK_SIZE="/STACK:1048576,262144"
  79 !else
  80 STACK_SIZE=
  81 !endif
  82 
  83 !if "$(BUILDARCH)" == "ia64"
  84 # AsyncGetCallTrace is not supported on IA64 yet
  85 AGCT_EXPORT=
  86 !else
  87 AGCT_EXPORT=/export:AsyncGetCallTrace
  88 !endif
  89 
  90 # If you modify exports below please do the corresponding changes in
  91 # src/share/tools/ProjectCreator/WinGammaPlatformVC7.java
  92 !if "$(BUILDARCH)" == "amd64"
  93 EXPORT_LIST=
  94 !else
  95 EXPORT_LIST=/export:JNI_GetDefaultJavaVMInitArgs \
  96             /export:JNI_CreateJavaVM             \
  97             /export:JVM_FindClassFromBootLoader  \
  98             /export:JNI_GetCreatedJavaVMs        \
  99             /export:jio_snprintf                 \
 100             /export:jio_printf                   \
 101             /export:jio_fprintf                  \
 102             /export:jio_vfprintf                 \
 103             /export:jio_vsnprintf                \
 104             $(AGCT_EXPORT)                       \
 105             /export:JVM_GetVersionInfo           \
 106             /export:JVM_InitAgentProperties
 107 !endif
 108 
 109 LD_FLAGS=$(LD_FLAGS) $(STACK_SIZE) /subsystem:windows /dll /base:0x8000000 $(EXPORT_LIST)
 110 
 111 CXX_INCLUDE_DIRS=/I "..\generated"
 112 
 113 !if exists($(ALTSRC)\share\vm)
 114 CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) /I "$(ALTSRC)\share\vm"
 115 !endif
 116 
 117 !if exists($(ALTSRC)\os\windows\vm)
 118 CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) /I "$(ALTSRC)\os\windows\vm"
 119 !endif
 120 
 121 !if exists($(ALTSRC)\os_cpu\windows_$(Platform_arch)\vm)
 122 CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) /I "$(ALTSRC)\os_cpu\windows_$(Platform_arch)\vm"
 123 !endif
 124 
 125 !if exists($(ALTSRC)\cpu\$(Platform_arch)\vm)
 126 CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) /I "$(ALTSRC)\cpu\$(Platform_arch)\vm"
 127 !endif
 128 
 129 CXX_INCLUDE_DIRS=$(CXX_INCLUDE_DIRS) \
 130   /I "$(COMMONSRC)\share\vm" \
 131   /I "$(COMMONSRC)\share\vm\precompiled" \
 132   /I "$(COMMONSRC)\share\vm\prims" \
 133   /I "$(COMMONSRC)\os\windows\vm" \
 134   /I "$(COMMONSRC)\os_cpu\windows_$(Platform_arch)\vm" \
 135   /I "$(COMMONSRC)\cpu\$(Platform_arch)\vm"
 136 
 137 CXX_DONT_USE_PCH=/D DONT_USE_PRECOMPILED_HEADER
 138 
 139 !if "$(USE_PRECOMPILED_HEADER)" != "0"
 140 CXX_USE_PCH=/Fp"vm.pch" /Yu"precompiled.hpp"
 141 !if "$(MSC_VER)" > "1600"
 142 # VS2012 requires this object file to be listed:
 143 LD_FLAGS=$(LD_FLAGS) _build_pch_file.obj
 144 !endif
 145 !else
 146 CXX_USE_PCH=$(CXX_DONT_USE_PCH)
 147 !endif
 148 
 149 # Where to find the source code for the virtual machine (is this used?)
 150 VM_PATH=../generated
 151 VM_PATH=$(VM_PATH);../generated/adfiles
 152 VM_PATH=$(VM_PATH);../generated/jvmtifiles
 153 VM_PATH=$(VM_PATH);../generated/tracefiles
 154 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/c1
 155 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/compiler
 156 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/code
 157 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/interpreter
 158 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/ci
 159 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/classfile
 160 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc/parallel
 161 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc/shared
 162 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc/serial
 163 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc/cms
 164 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc/g1
 165 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/asm
 166 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/memory
 167 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/oops
 168 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/prims
 169 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/prims/wbtestmethods
 170 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/runtime
 171 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/services
 172 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/trace
 173 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/utilities
 174 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/libadt
 175 VM_PATH=$(VM_PATH);$(WorkSpace)/src/os/windows/vm
 176 VM_PATH=$(VM_PATH);$(WorkSpace)/src/os_cpu/windows_$(Platform_arch)/vm
 177 VM_PATH=$(VM_PATH);$(WorkSpace)/src/cpu/$(Platform_arch)/vm
 178 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/opto
 179 
 180 !if exists($(ALTSRC)\share\vm\jfr)
 181 VM_PATH=$(VM_PATH);$(ALTSRC)/share/vm/jfr
 182 VM_PATH=$(VM_PATH);$(ALTSRC)/share/vm/jfr/buffers
 183 !endif
 184 
 185 VM_PATH={$(VM_PATH)}
 186 
 187 # Special case files not using precompiled header files.
 188 
 189 c1_RInfo_$(Platform_arch).obj: $(WorkSpace)\src\cpu\$(Platform_arch)\vm\c1_RInfo_$(Platform_arch).cpp
 190          $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\cpu\$(Platform_arch)\vm\c1_RInfo_$(Platform_arch).cpp
 191 
 192 os_windows.obj: $(WorkSpace)\src\os\windows\vm\os_windows.cpp
 193         $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os\windows\vm\os_windows.cpp
 194 
 195 os_windows_$(Platform_arch).obj: $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\os_windows_$(Platform_arch).cpp
 196         $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\os_windows_$(Platform_arch).cpp
 197 
 198 osThread_windows.obj: $(WorkSpace)\src\os\windows\vm\osThread_windows.cpp
 199         $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os\windows\vm\osThread_windows.cpp
 200 
 201 conditionVar_windows.obj: $(WorkSpace)\src\os\windows\vm\conditionVar_windows.cpp
 202         $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os\windows\vm\conditionVar_windows.cpp
 203 
 204 getThread_windows_$(Platform_arch).obj: $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\getThread_windows_$(Platform_arch).cpp
 205         $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\getThread_windows_$(Platform_arch).cpp
 206 
 207 opcodes.obj: $(WorkSpace)\src\share\vm\opto\opcodes.cpp
 208         $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\share\vm\opto\opcodes.cpp
 209 
 210 bytecodeInterpreter.obj: $(WorkSpace)\src\share\vm\interpreter\bytecodeInterpreter.cpp
 211         $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c $(WorkSpace)\src\share\vm\interpreter\bytecodeInterpreter.cpp
 212 
 213 bytecodeInterpreterWithChecks.obj: ..\generated\jvmtifiles\bytecodeInterpreterWithChecks.cpp
 214         $(CXX) $(CXX_FLAGS) $(CXX_DONT_USE_PCH) /c ..\generated\jvmtifiles\bytecodeInterpreterWithChecks.cpp
 215 
 216 # Default rules for the Virtual Machine
 217 {$(COMMONSRC)\share\vm\c1}.cpp.obj::
 218         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 219 
 220 {$(COMMONSRC)\share\vm\compiler}.cpp.obj::
 221         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 222 
 223 {$(COMMONSRC)\share\vm\code}.cpp.obj::
 224         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 225 
 226 {$(COMMONSRC)\share\vm\interpreter}.cpp.obj::
 227         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 228 
 229 {$(COMMONSRC)\share\vm\ci}.cpp.obj::
 230         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 231 
 232 {$(COMMONSRC)\share\vm\classfile}.cpp.obj::
 233         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 234 
 235 {$(COMMONSRC)\share\vm\gc\parallel}.cpp.obj::
 236         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 237 
 238 {$(COMMONSRC)\share\vm\gc\shared}.cpp.obj::
 239         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 240 
 241 {$(COMMONSRC)\share\vm\gc\serial}.cpp.obj::
 242         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 243 
 244 {$(COMMONSRC)\share\vm\gc\cms}.cpp.obj::
 245         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 246 
 247 {$(COMMONSRC)\share\vm\gc\g1}.cpp.obj::
 248         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 249 
 250 {$(COMMONSRC)\share\vm\asm}.cpp.obj::
 251         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 252 
 253 {$(COMMONSRC)\share\vm\memory}.cpp.obj::
 254         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 255 
 256 {$(COMMONSRC)\share\vm\oops}.cpp.obj::
 257         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 258 
 259 {$(COMMONSRC)\share\vm\prims}.cpp.obj::
 260         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 261 
 262 {$(COMMONSRC)\share\vm\prims\wbtestmethods}.cpp.obj::
 263         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 264 
 265 {$(COMMONSRC)\share\vm\runtime}.cpp.obj::
 266         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 267 
 268 {$(COMMONSRC)\share\vm\services}.cpp.obj::
 269         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 270 
 271 {$(COMMONSRC)\share\vm\trace}.cpp.obj::
 272         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 273 
 274 {$(COMMONSRC)\share\vm\utilities}.cpp.obj::
 275         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 276 
 277 {$(COMMONSRC)\share\vm\libadt}.cpp.obj::
 278         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 279 
 280 {$(COMMONSRC)\share\vm\opto}.cpp.obj::
 281         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 282 
 283 {$(COMMONSRC)\os\windows\vm}.cpp.obj::
 284         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 285 
 286 # This guy should remain a single colon rule because
 287 # otherwise we can't specify the output filename.
 288 {$(COMMONSRC)\os\windows\vm}.rc.res:
 289         @$(RC) $(RC_FLAGS) /fo"$@" $<
 290 
 291 {$(COMMONSRC)\cpu\$(Platform_arch)\vm}.cpp.obj::
 292         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 293 
 294 {$(COMMONSRC)\os_cpu\windows_$(Platform_arch)\vm}.cpp.obj::
 295         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 296 
 297 {$(ALTSRC)\share\vm\c1}.cpp.obj::
 298         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 299 
 300 {$(ALTSRC)\share\vm\compiler}.cpp.obj::
 301         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 302 
 303 {$(ALTSRC)\share\vm\code}.cpp.obj::
 304         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 305 
 306 {$(ALTSRC)\share\vm\interpreter}.cpp.obj::
 307         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 308 
 309 {$(ALTSRC)\share\vm\ci}.cpp.obj::
 310         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 311 
 312 {$(ALTSRC)\share\vm\classfile}.cpp.obj::
 313         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 314 
 315 {$(ALTSRC)\share\vm\gc\parallel}.cpp.obj::
 316         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 317 
 318 {$(ALTSRC)\share\vm\gc\shared}.cpp.obj::
 319         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 320 
 321 {$(ALTSRC)\share\vm\gc\serial}.cpp.obj::
 322         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 323 
 324 {$(ALTSRC)\share\vm\gc\cms}.cpp.obj::
 325         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 326 
 327 {$(ALTSRC)\share\vm\gc\g1}.cpp.obj::
 328         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 329 
 330 {$(ALTSRC)\share\vm\asm}.cpp.obj::
 331         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 332 
 333 {$(ALTSRC)\share\vm\memory}.cpp.obj::
 334         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 335 
 336 {$(ALTSRC)\share\vm\oops}.cpp.obj::
 337         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 338 
 339 {$(ALTSRC)\share\vm\prims}.cpp.obj::
 340         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 341 
 342 {$(ALTSRC)\share\vm\prims\wbtestmethods}.cpp.obj::
 343         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 344 
 345 {$(ALTSRC)\share\vm\runtime}.cpp.obj::
 346         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 347 
 348 {$(ALTSRC)\share\vm\services}.cpp.obj::
 349         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 350 
 351 {$(ALTSRC)\share\vm\trace}.cpp.obj::
 352         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 353 
 354 {$(ALTSRC)\share\vm\utilities}.cpp.obj::
 355         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 356 
 357 {$(ALTSRC)\share\vm\libadt}.cpp.obj::
 358         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 359 
 360 {$(ALTSRC)\share\vm\opto}.cpp.obj::
 361         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 362 
 363 {$(ALTSRC)\os\windows\vm}.cpp.obj::
 364         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 365 
 366 # otherwise we can't specify the output filename.
 367 {$(ALTSRC)\os\windows\vm}.rc.res:
 368         @$(RC) $(RC_FLAGS) /fo"$@" $<
 369 
 370 {$(ALTSRC)\cpu\$(Platform_arch)\vm}.cpp.obj::
 371         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 372 
 373 {$(ALTSRC)\os_cpu\windows_$(Platform_arch)\vm}.cpp.obj::
 374         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 375 
 376 {..\generated\incls}.cpp.obj::
 377         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 378 
 379 {..\generated\adfiles}.cpp.obj::
 380         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 381 
 382 {..\generated\jvmtifiles}.cpp.obj::
 383         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 384 
 385 {..\generated\tracefiles}.cpp.obj::
 386         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 387 
 388 {$(ALTSRC)\share\vm\jfr}.cpp.obj::
 389         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 390 
 391 {$(ALTSRC)\share\vm\jfr\buffers}.cpp.obj::
 392         $(CXX) $(CXX_FLAGS) $(CXX_USE_PCH) /c $<
 393 
 394 default::
 395 
 396 _build_pch_file.obj:
 397         @echo #include "precompiled.hpp" > ../generated/_build_pch_file.cpp
 398         $(CXX) $(CXX_FLAGS) /Fp"vm.pch" /Yc"precompiled.hpp" /c ../generated/_build_pch_file.cpp
 399 
 400 !if "$(BUILD_WIN_SA)" != "1"
 401 BUILD_VM_DEF_FLAG=-nosa
 402 !endif
 403 
 404 vm.def: $(Obj_Files)
 405         sh $(WorkSpace)/make/windows/build_vm_def.sh $(BUILD_VM_DEF_FLAG)