0
+ − 1
#
+ − 2
# Copyright 2001-2007 Sun Microsystems, Inc. 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. Sun designates this
+ − 8
# particular file as subject to the "Classpath" exception as provided
+ − 9
# by Sun in the LICENSE file that accompanied this code.
+ − 10
#
+ − 11
# This code is distributed in the hope that it will be useful, but WITHOUT
+ − 12
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ − 13
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ − 14
# version 2 for more details (a copy is included in the LICENSE file that
+ − 15
# accompanied this code).
+ − 16
#
+ − 17
# You should have received a copy of the GNU General Public License version
+ − 18
# 2 along with this work; if not, write to the Free Software Foundation,
+ − 19
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ − 20
#
+ − 21
# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+ − 22
# CA 95054 USA or visit www.sun.com if you need additional information or
+ − 23
# have any questions.
+ − 24
#
+ − 25
+ − 26
################################################################
+ − 27
# HOTSPOT TARGETS
+ − 28
################################################################
+ − 29
+ − 30
# All the output from a hotspot build should be re-located to the
+ − 31
# build output area.
+ − 32
#
+ − 33
HOTSPOT_OUTPUTDIR = $(HOTSPOT_DIR)/outputdir
+ − 34
+ − 35
# HOTSPOT_EXPORT_PATH points to a dir that contains files
+ − 36
# that are needed in an SDK build, in the same relative positions as
+ − 37
# these files are in an SDK image.
+ − 38
# The SDK java/redist/Makefile will copy files from HOTSPOT_EXPORT_PATH
+ − 39
# into the SDK being built.
+ − 40
# This is the export path supplied to the hotspot makefiles.
+ − 41
#
+ − 42
HOTSPOT_EXPORT_PATH = $(HOTSPOT_DIR)/import
+ − 43
+ − 44
# Default targets
+ − 45
HOTSPOT = hotspot-sanity hotspot-build
+ − 46
+ − 47
hotspot:: $(HOTSPOT)
+ − 48
+ − 49
# Hotspot clobber removes the output directory and exported files
+ − 50
hotspot-clobber::
+ − 51
$(RM) -r $(HOTSPOT_OUTPUTDIR)
+ − 52
$(RM) -r $(HOTSPOT_EXPORT_PATH)
+ − 53
+ − 54
hotspot-sanity::
+ − 55
@$(MKDIR) -p $(HOTSPOT_OUTPUTDIR)
+ − 56
@$(MKDIR) -p $(HOTSPOT_EXPORT_PATH)
+ − 57
@$(ECHO) "Hotspot Settings: \n" \
+ − 58
" HOTSPOT_BUILD_JOBS = $(HOTSPOT_BUILD_JOBS) \n" \
+ − 59
" HOTSPOT_OUTPUTDIR = $(HOTSPOT_OUTPUTDIR) \n" \
+ − 60
" HOTSPOT_EXPORT_PATH = $(HOTSPOT_EXPORT_PATH) \n" \
+ − 61
"\n" >> $(MESSAGE_FILE)
+ − 62
+ − 63
#
+ − 64
# Basic hotspot build and export of it's files
+ − 65
#
+ − 66
+ − 67
HOTSPOT_TARGET = all_product
+ − 68
ifeq ($(DEBUG_NAME), debug)
+ − 69
HOTSPOT_TARGET = all_debug
+ − 70
endif
+ − 71
ifeq ($(DEBUG_NAME), fastdebug)
+ − 72
HOTSPOT_TARGET = all_fastdebug
+ − 73
endif
+ − 74
+ − 75
HOTSPOT_BUILD_ARGUMENTS += $(COMMON_BUILD_ARGUMENTS)
+ − 76
HOTSPOT_BUILD_ARGUMENTS += ALT_OUTPUTDIR=$(HOTSPOT_OUTPUTDIR)
+ − 77
HOTSPOT_BUILD_ARGUMENTS += ALT_EXPORT_PATH=$(HOTSPOT_EXPORT_PATH)
+ − 78
+ − 79
# Why do these need to be passed in? Because of windows nmake? and MAKEFLAGS=?
+ − 80
# Or is there something wrong with hotspot/make/Makefile?
+ − 81
HOTSPOT_BUILD_ARGUMENTS += ALT_SLASH_JAVA=$(SLASH_JAVA)
+ − 82
HOTSPOT_BUILD_ARGUMENTS += ALT_BOOTDIR=$(BOOTDIR)
+ − 83
+ − 84
ifeq ($(BUILD_LANGTOOLS), true)
+ − 85
HOTSPOT_BUILD_ARGUMENTS += ALT_LANGTOOLS_DIST=$(ABS_LANGTOOLS_DIST)
+ − 86
endif
+ − 87
+ − 88
hotspot-build::
+ − 89
$(MKDIR) -p $(HOTSPOT_OUTPUTDIR)
+ − 90
$(MKDIR) -p $(HOTSPOT_EXPORT_PATH)
+ − 91
$(CD) $(HOTSPOT_TOPDIR)/make && \
+ − 92
$(MAKE) $(HOTSPOT_BUILD_ARGUMENTS) $(HOTSPOT_TARGET)
+ − 93
+ − 94
#####################
+ − 95
# .PHONY
+ − 96
#####################
+ − 97
.PHONY: hotspot-build hotspot-clobber hotspot-sanity
+ − 98