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