make/windows/makefiles/vm.make

Tue, 17 Jun 2008 13:08:15 -0700

author
ksrini
date
Tue, 17 Jun 2008 13:08:15 -0700
changeset 661
d5ba4f8aa38a
parent 545
a49a647afe9a
child 670
9c2ecc2ffb12
permissions
-rw-r--r--

6714758: hotspot: provide an entry point to the BootStrap Class loader[dholmes,acorn]
Summary: adds JVM_FindClassFromBootLoader entry point, for jdk's use
Reviewed-by: dholmes, acorn

duke@435 1 #
duke@435 2 # Copyright 1997-2007 Sun Microsystems, Inc. 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 #
duke@435 19 # Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
duke@435 20 # CA 95054 USA or visit www.sun.com if you need additional information or
duke@435 21 # have any 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
duke@435 58 # The following variables are defined in the generated local.make file.
duke@435 59 CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_RELEASE_VERSION=\"$(HS_BUILD_VER)\""
duke@435 60 CPP_FLAGS=$(CPP_FLAGS) /D "JRE_RELEASE_VERSION=\"$(JRE_RELEASE_VER)\""
jrose@535 61 CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_LIB_ARCH=\"$(BUILDARCH)\""
duke@435 62 CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_BUILD_TARGET=\"$(BUILD_FLAVOR)\""
duke@435 63 CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_BUILD_USER=\"$(BuildUser)\""
duke@435 64 CPP_FLAGS=$(CPP_FLAGS) /D "HOTSPOT_VM_DISTRO=\"$(HOTSPOT_VM_DISTRO)\""
duke@435 65
duke@435 66 CPP_FLAGS=$(CPP_FLAGS) /D "WIN32" /D "_WINDOWS" $(CPP_INCLUDE_DIRS)
duke@435 67
duke@435 68 # Must specify this for sharedRuntimeTrig.cpp
duke@435 69 CPP_FLAGS=$(CPP_FLAGS) /D "VM_LITTLE_ENDIAN"
duke@435 70
duke@435 71 # Define that so jni.h is on correct side
duke@435 72 CPP_FLAGS=$(CPP_FLAGS) /D "_JNI_IMPLEMENTATION_"
duke@435 73
duke@435 74 !if "$(BUILDARCH)" == "ia64"
duke@435 75 STACK_SIZE="/STACK:1048576,262144"
duke@435 76 !else
duke@435 77 STACK_SIZE=
duke@435 78 !endif
duke@435 79
duke@435 80 !if "$(BUILDARCH)" == "ia64"
duke@435 81 # AsyncGetCallTrace is not supported on IA64 yet
duke@435 82 AGCT_EXPORT=
duke@435 83 !else
duke@435 84 !if "$(Variant)" == "kernel"
duke@435 85 AGCT_EXPORT=
duke@435 86 !else
duke@435 87 AGCT_EXPORT=/export:AsyncGetCallTrace
duke@435 88 !endif
duke@435 89 !endif
duke@435 90
ksrini@661 91 LINK_FLAGS=$(LINK_FLAGS) $(STACK_SIZE) /subsystem:windows /dll /base:0x8000000 \
ksrini@661 92 /export:JNI_GetDefaultJavaVMInitArgs \
ksrini@661 93 /export:JNI_CreateJavaVM \
ksrini@661 94 /export:JVM_FindClassFromBootLoader \
ksrini@661 95 /export:JNI_GetCreatedJavaVMs \
ksrini@661 96 /export:jio_snprintf \
ksrini@661 97 /export:jio_printf \
ksrini@661 98 /export:jio_fprintf \
ksrini@661 99 /export:jio_vfprintf \
ksrini@661 100 /export:jio_vsnprintf \
ksrini@661 101 $(AGCT_EXPORT) \
ksrini@661 102 /export:JVM_GetVersionInfo \
ksrini@661 103 /export:JVM_GetThreadStateNames \
ksrini@661 104 /export:JVM_GetThreadStateValues \
duke@435 105 /export:JVM_InitAgentProperties
duke@435 106
duke@435 107 CPP_INCLUDE_DIRS=\
duke@435 108 /I "..\generated" \
duke@435 109 /I "..\generated\jvmtifiles" \
duke@435 110 /I "$(WorkSpace)\src\share\vm\c1" \
duke@435 111 /I "$(WorkSpace)\src\share\vm\compiler" \
duke@435 112 /I "$(WorkSpace)\src\share\vm\code" \
duke@435 113 /I "$(WorkSpace)\src\share\vm\interpreter" \
duke@435 114 /I "$(WorkSpace)\src\share\vm\ci" \
duke@435 115 /I "$(WorkSpace)\src\share\vm\classfile" \
duke@435 116 /I "$(WorkSpace)\src\share\vm\gc_implementation\parallelScavenge"\
duke@435 117 /I "$(WorkSpace)\src\share\vm\gc_implementation\shared"\
duke@435 118 /I "$(WorkSpace)\src\share\vm\gc_implementation\parNew"\
duke@435 119 /I "$(WorkSpace)\src\share\vm\gc_implementation\concurrentMarkSweep"\
duke@435 120 /I "$(WorkSpace)\src\share\vm\gc_interface"\
duke@435 121 /I "$(WorkSpace)\src\share\vm\asm" \
duke@435 122 /I "$(WorkSpace)\src\share\vm\memory" \
duke@435 123 /I "$(WorkSpace)\src\share\vm\oops" \
duke@435 124 /I "$(WorkSpace)\src\share\vm\prims" \
duke@435 125 /I "$(WorkSpace)\src\share\vm\runtime" \
duke@435 126 /I "$(WorkSpace)\src\share\vm\services" \
duke@435 127 /I "$(WorkSpace)\src\share\vm\utilities" \
duke@435 128 /I "$(WorkSpace)\src\share\vm\libadt" \
duke@435 129 /I "$(WorkSpace)\src\share\vm\opto" \
duke@435 130 /I "$(WorkSpace)\src\os\windows\vm" \
duke@435 131 /I "$(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm" \
duke@435 132 /I "$(WorkSpace)\src\cpu\$(Platform_arch)\vm"
duke@435 133
duke@435 134 CPP_USE_PCH=/Fp"vm.pch" /Yu"incls/_precompiled.incl"
duke@435 135
duke@435 136 # Where to find the source code for the virtual machine
duke@435 137 VM_PATH=../generated/incls
duke@435 138 VM_PATH=$(VM_PATH);../generated/jvmtifiles
duke@435 139 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/c1
duke@435 140 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/compiler
duke@435 141 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/code
duke@435 142 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/interpreter
duke@435 143 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/ci
duke@435 144 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/classfile
duke@435 145 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_implementation/parallelScavenge
duke@435 146 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_implementation/shared
duke@435 147 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_implementation/parNew
duke@435 148 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_implementation/concurrentMarkSweep
duke@435 149 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/gc_interface
duke@435 150 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/asm
duke@435 151 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/memory
duke@435 152 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/oops
duke@435 153 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/prims
duke@435 154 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/runtime
duke@435 155 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/services
duke@435 156 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/utilities
duke@435 157 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/libadt
duke@435 158 VM_PATH=$(VM_PATH);$(WorkSpace)/src/os/windows/vm
duke@435 159 VM_PATH=$(VM_PATH);$(WorkSpace)/src/os_cpu/windows_$(Platform_arch)/vm
duke@435 160 VM_PATH=$(VM_PATH);$(WorkSpace)/src/cpu/$(Platform_arch)/vm
duke@435 161 VM_PATH=$(VM_PATH);$(WorkSpace)/src/share/vm/opto
duke@435 162
duke@435 163 VM_PATH={$(VM_PATH)}
duke@435 164
duke@435 165 # Special case files not using precompiled header files.
duke@435 166
duke@435 167 c1_RInfo_$(Platform_arch).obj: $(WorkSpace)\src\cpu\$(Platform_arch)\vm\c1_RInfo_$(Platform_arch).cpp
duke@435 168 $(CPP) $(CPP_FLAGS) /c $(WorkSpace)\src\cpu\$(Platform_arch)\vm\c1_RInfo_$(Platform_arch).cpp
duke@435 169
duke@435 170 os_windows.obj: $(WorkSpace)\src\os\windows\vm\os_windows.cpp
duke@435 171 $(CPP) $(CPP_FLAGS) /c $(WorkSpace)\src\os\windows\vm\os_windows.cpp
duke@435 172
duke@435 173 os_windows_$(Platform_arch).obj: $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\os_windows_$(Platform_arch).cpp
duke@435 174 $(CPP) $(CPP_FLAGS) /c $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\os_windows_$(Platform_arch).cpp
duke@435 175
duke@435 176 osThread_windows.obj: $(WorkSpace)\src\os\windows\vm\osThread_windows.cpp
duke@435 177 $(CPP) $(CPP_FLAGS) /c $(WorkSpace)\src\os\windows\vm\osThread_windows.cpp
duke@435 178
duke@435 179 conditionVar_windows.obj: $(WorkSpace)\src\os\windows\vm\conditionVar_windows.cpp
duke@435 180 $(CPP) $(CPP_FLAGS) /c $(WorkSpace)\src\os\windows\vm\conditionVar_windows.cpp
duke@435 181
duke@435 182 getThread_windows_$(Platform_arch).obj: $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\getThread_windows_$(Platform_arch).cpp
duke@435 183 $(CPP) $(CPP_FLAGS) /c $(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm\getThread_windows_$(Platform_arch).cpp
duke@435 184
duke@435 185 opcodes.obj: $(WorkSpace)\src\share\vm\opto\opcodes.cpp
duke@435 186 $(CPP) $(CPP_FLAGS) /c $(WorkSpace)\src\share\vm\opto\opcodes.cpp
duke@435 187
duke@435 188 bytecodeInterpreter.obj: $(WorkSpace)\src\share\vm\interpreter\bytecodeInterpreter.cpp
duke@435 189 $(CPP) $(CPP_FLAGS) /c $(WorkSpace)\src\share\vm\interpreter\bytecodeInterpreter.cpp
duke@435 190
duke@435 191 bytecodeInterpreterWithChecks.obj: ..\generated\jvmtifiles\bytecodeInterpreterWithChecks.cpp
duke@435 192 $(CPP) $(CPP_FLAGS) /c ..\generated\jvmtifiles\bytecodeInterpreterWithChecks.cpp
duke@435 193
duke@435 194 # Default rules for the Virtual Machine
duke@435 195 {$(WorkSpace)\src\share\vm\c1}.cpp.obj::
duke@435 196 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 197
duke@435 198 {$(WorkSpace)\src\share\vm\compiler}.cpp.obj::
duke@435 199 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 200
duke@435 201 {$(WorkSpace)\src\share\vm\code}.cpp.obj::
duke@435 202 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 203
duke@435 204 {$(WorkSpace)\src\share\vm\interpreter}.cpp.obj::
duke@435 205 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 206
duke@435 207 {$(WorkSpace)\src\share\vm\ci}.cpp.obj::
duke@435 208 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 209
duke@435 210 {$(WorkSpace)\src\share\vm\classfile}.cpp.obj::
duke@435 211 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 212
duke@435 213 {$(WorkSpace)\src\share\vm\gc_implementation\parallelScavenge}.cpp.obj::
duke@435 214 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 215
duke@435 216 {$(WorkSpace)\src\share\vm\gc_implementation\shared}.cpp.obj::
duke@435 217 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 218
duke@435 219 {$(WorkSpace)\src\share\vm\gc_implementation\parNew}.cpp.obj::
duke@435 220 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 221
duke@435 222 {$(WorkSpace)\src\share\vm\gc_implementation\concurrentMarkSweep}.cpp.obj::
duke@435 223 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 224
duke@435 225 {$(WorkSpace)\src\share\vm\gc_interface}.cpp.obj::
duke@435 226 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 227
duke@435 228 {$(WorkSpace)\src\share\vm\asm}.cpp.obj::
duke@435 229 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 230
duke@435 231 {$(WorkSpace)\src\share\vm\memory}.cpp.obj::
duke@435 232 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 233
duke@435 234 {$(WorkSpace)\src\share\vm\oops}.cpp.obj::
duke@435 235 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 236
duke@435 237 {$(WorkSpace)\src\share\vm\prims}.cpp.obj::
duke@435 238 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 239
duke@435 240 {$(WorkSpace)\src\share\vm\runtime}.cpp.obj::
duke@435 241 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 242
duke@435 243 {$(WorkSpace)\src\share\vm\services}.cpp.obj::
duke@435 244 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 245
duke@435 246 {$(WorkSpace)\src\share\vm\utilities}.cpp.obj::
duke@435 247 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 248
duke@435 249 {$(WorkSpace)\src\share\vm\libadt}.cpp.obj::
duke@435 250 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 251
duke@435 252 {$(WorkSpace)\src\share\vm\opto}.cpp.obj::
duke@435 253 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 254
duke@435 255 {$(WorkSpace)\src\os\windows\vm}.cpp.obj::
duke@435 256 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 257
duke@435 258 # This guy should remain a single colon rule because
duke@435 259 # otherwise we can't specify the output filename.
duke@435 260 {$(WorkSpace)\src\os\windows\vm}.rc.res:
duke@435 261 @$(RC) $(RC_FLAGS) /fo"$@" $<
duke@435 262
duke@435 263 {$(WorkSpace)\src\cpu\$(Platform_arch)\vm}.cpp.obj::
duke@435 264 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 265
duke@435 266 {$(WorkSpace)\src\os_cpu\windows_$(Platform_arch)\vm}.cpp.obj::
duke@435 267 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 268
duke@435 269 {..\generated\incls}.cpp.obj::
duke@435 270 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 271
duke@435 272 {..\generated\jvmtifiles}.cpp.obj::
duke@435 273 $(CPP) $(CPP_FLAGS) $(CPP_USE_PCH) /c $<
duke@435 274
duke@435 275 default::
duke@435 276
duke@435 277 _build_pch_file.obj:
duke@435 278 @echo #include "incls/_precompiled.incl" > ../generated/_build_pch_file.cpp
duke@435 279 $(CPP) $(CPP_FLAGS) /Fp"vm.pch" /Yc"incls/_precompiled.incl" /c ../generated/_build_pch_file.cpp

mercurial