Makefile 4.0 KB
Newer Older
D
duke 已提交
1
#
2
# Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
D
duke 已提交
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
# 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.
#
19 20 21
# 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.
D
duke 已提交
22 23 24
#  
#

25 26 27 28
!ifdef LOCAL_MAKE
!include $(LOCAL_MAKE)
!endif

29

D
duke 已提交
30 31 32 33 34 35 36 37 38 39
WorkSpace=$(HOTSPOTWORKSPACE)

!ifdef ALT_BOOTDIR
BootStrapDir=$(ALT_BOOTDIR)
!else
!ifdef BOOTDIR
BootStrapDir=$(BOOTDIR)
!else
!ifdef JAVA_HOME
BootStrapDir=$(JAVA_HOME)
40 41 42 43
!else
!ifdef HOTSPOTJDKDIST
BootStrapDir=$(HOTSPOTJDKDIST)
!endif
D
duke 已提交
44 45 46 47
!endif
!endif
!endif

48 49


50
!include $(HOTSPOTWORKSPACE)/make/windows/makefiles/projectcreator.make
51
!include $(WorkSpace)/make/windows/makefiles/compile.make
D
duke 已提交
52 53

# Pick up rules for building JVMTI (JSR-163)
54
JvmtiOutDir=$(HOTSPOTBUILDSPACE)\$(Variant)\generated\jvmtifiles
55
!include $(HOTSPOTWORKSPACE)/make/windows/makefiles/jvmti.make
D
duke 已提交
56 57 58

!if "$(Variant)" == "compiler2"
# Pick up rules for building adlc
59
!include $(HOTSPOTWORKSPACE)/make/windows/makefiles/adlc.make
D
duke 已提交
60 61 62 63
!endif

!if "$(Variant)" == "tiered"
# Pick up rules for building adlc
64
!include $(HOTSPOTWORKSPACE)/make/windows/makefiles/adlc.make
D
duke 已提交
65 66
!endif

67 68 69
HS_INTERNAL_NAME=jvm
!include $(HOTSPOTWORKSPACE)/make/windows/makefiles/launcher.make

70
default:: $(AdditionalTargets) $(JvmtiGeneratedFiles)
D
duke 已提交
71 72 73 74 75 76 77 78

!include $(HOTSPOTWORKSPACE)/make/hotspot_version

!if "$(HOTSPOT_RELEASE_VERSION)" != ""
HOTSPOT_RELEASE_VERSION="$(HOTSPOT_RELEASE_VERSION)"
!else
HOTSPOT_RELEASE_VERSION="$(HS_MAJOR_VER).$(HS_MINOR_VER)-b$(HS_BUILD_NUMBER)"
!endif
79 80 81
!if "$(USER_RELEASE_SUFFIX)" != ""
HOTSPOT_BUILD_VERSION$(HOTSPOT_BUILD_VERSION) = internal-$(USER_RELEASE_SUFFIX)
!else
D
duke 已提交
82
HOTSPOT_BUILD_VERSION$(HOTSPOT_BUILD_VERSION) = internal
83
!endif
D
duke 已提交
84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104
!if "$(HOTSPOT_BUILD_VERSION)" != ""
HOTSPOT_RELEASE_VERSION="$(HOTSPOT_RELEASE_VERSION)-$(HOTSPOT_BUILD_VERSION)"
!endif
!if "$(JRE_RELEASE_VERSION)" != ""
JRE_RELEASE_VERSION="$(JRE_RELEASE_VERSION)"
!else
JRE_RELEASE_VERSION="$(JDK_MAJOR_VER).$(JDK_MINOR_VER).$(JDK_MICRO_VER)"
!endif

# Define HOTSPOT_VM_DISTRO if HOTSPOT_VM_DISTRO is set,
# and if it is not see if we have the src/closed directory
!if "$(HOTSPOT_VM_DISTRO)" != ""
HOTSPOT_VM_DISTRO="$(HOTSPOT_VM_DISTRO)"
!else
!if exists($(HOTSPOTWORKSPACE)\src\closed)
HOTSPOT_VM_DISTRO="Java HotSpot(TM)"
!else
HOTSPOT_VM_DISTRO="OpenJDK"
!endif
!endif

105
ProjectCreatorIDEOptions =       $(ProjectCreatorIDEOptions) \
D
duke 已提交
106 107 108 109
      -define              HOTSPOT_RELEASE_VERSION=\\\"$(HOTSPOT_RELEASE_VERSION)\\\" \
      -define              JRE_RELEASE_VERSION=\\\"$(JRE_RELEASE_VERSION)\\\" \
      -define              HOTSPOT_VM_DISTRO=\\\"$(HOTSPOT_VM_DISTRO)\\\"

110
$(HOTSPOTBUILDSPACE)/$(ProjectFile): $(HOTSPOTBUILDSPACE)/classes/ProjectCreator.class
111
	@$(RUN_JAVA) -Djava.class.path="$(HOTSPOTBUILDSPACE)/classes" ProjectCreator WinGammaPlatform$(VcVersion) $(ProjectCreatorIDEOptions)
D
duke 已提交
112 113

clean:
114
	@rm -rf $(HOTSPOTBUILDSPACE)/classes
115
	@rm -r $(HOTSPOTBUILDSPACE)/$(ProjectFile)
D
duke 已提交
116

117
$(HOTSPOTBUILDSPACE)/classes/ProjectCreator.class: $(ProjectCreatorSources)
D
duke 已提交
118 119
	@if exist $(HOTSPOTBUILDSPACE)\classes rmdir /s /q $(HOTSPOTBUILDSPACE)\classes
	@mkdir $(HOTSPOTBUILDSPACE)\classes
120
	@$(COMPILE_JAVAC) -classpath $(HOTSPOTWORKSPACE)\src\share\tools\ProjectCreator -d $(HOTSPOTBUILDSPACE)/classes $(ProjectCreatorSources)
D
duke 已提交
121 122

FORCE: