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