## Copyright (c) 2001, 2012, Oracle and/or its affiliates. All rights reserved.# 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. Oracle designates this# particular file as subject to the "Classpath" exception as provided# by Oracle in the LICENSE file that accompanied this code.## 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.## 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.################################################################## HOTSPOT TARGETS################################################################# All the output from a hotspot build should be re-located to the# build output area.#HOTSPOT_OUTPUTDIR = $(HOTSPOT_DIR)/outputdir# HOTSPOT_EXPORT_PATH points to a dir that contains files# that are needed in an SDK build, in the same relative positions as# these files are in an SDK image.# The SDK java/redist/Makefile will copy files from HOTSPOT_EXPORT_PATH# into the SDK being built.# This is the export path supplied to the hotspot makefiles.#HOTSPOT_EXPORT_PATH = $(HOTSPOT_DIR)/import# Default targetsHOTSPOT = hotspot-sanity hotspot-buildhotspot:: $(HOTSPOT)# Hotspot clobber removes the output directory and exported fileshotspot-clobber:: $(RM) -r $(HOTSPOT_OUTPUTDIR) $(RM) -r $(HOTSPOT_EXPORT_PATH)hotspot-sanity:: @$(MKDIR) -p $(HOTSPOT_OUTPUTDIR) @$(MKDIR) -p $(HOTSPOT_EXPORT_PATH) @$(ECHO) "Hotspot Settings: \n" \ " HOTSPOT_BUILD_JOBS = $(HOTSPOT_BUILD_JOBS) \n" \ " HOTSPOT_OUTPUTDIR = $(HOTSPOT_OUTPUTDIR) \n" \ " HOTSPOT_EXPORT_PATH = $(HOTSPOT_EXPORT_PATH) \n" \ "\n" >> $(MESSAGE_FILE)## Basic hotspot build and export of it's files#HOTSPOT_TARGET = all_productifeq ($(DEBUG_NAME), debug) HOTSPOT_TARGET = all_debugendififeq ($(DEBUG_NAME), fastdebug) HOTSPOT_TARGET = all_fastdebugendifBUILD_FLAVOR=$(HOTSPOT_TARGET:all_%=%)ifeq ($(ZERO_BUILD), true) ifeq ($(SHARK_BUILD), true) HOTSPOT_TARGET := $(HOTSPOT_TARGET)shark else HOTSPOT_TARGET := $(HOTSPOT_TARGET)zero endifendifHOTSPOT_BUILD_ARGUMENTS += $(COMMON_BUILD_ARGUMENTS)HOTSPOT_BUILD_ARGUMENTS += ALT_OUTPUTDIR=$(HOTSPOT_OUTPUTDIR)HOTSPOT_BUILD_ARGUMENTS += ALT_EXPORT_PATH=$(HOTSPOT_EXPORT_PATH)HOTSPOT_BUILD_ARGUMENTS += BUILD_FLAVOR=$(BUILD_FLAVOR)# Why do these need to be passed in? Because of windows nmake? and MAKEFLAGS=?# Or is there something wrong with hotspot/make/Makefile?HOTSPOT_BUILD_ARGUMENTS += ALT_SLASH_JAVA=$(SLASH_JAVA)HOTSPOT_BUILD_ARGUMENTS += ALT_BOOTDIR=$(BOOTDIR)ifeq ($(BUILD_LANGTOOLS), true) HOTSPOT_BUILD_ARGUMENTS += ALT_LANGTOOLS_DIST=$(ABS_LANGTOOLS_DIST)endif# Move to COMMON_BUILD_ARGUMENTS when all repos support# FULL_DEBUG_SYMBOLS and ZIP_DEBUGINFO_FILES:ifdef FULL_DEBUG_SYMBOLS HOTSPOT_BUILD_ARGUMENTS += FULL_DEBUG_SYMBOLS=$(FULL_DEBUG_SYMBOLS)endififdef ZIP_DEBUGINFO_FILES HOTSPOT_BUILD_ARGUMENTS += ZIP_DEBUGINFO_FILES="$(ZIP_DEBUGINFO_FILES)"endifhotspot-build:: $(MKDIR) -p $(HOTSPOT_OUTPUTDIR) $(MKDIR) -p $(HOTSPOT_EXPORT_PATH) @$(call MakeStart,hotspot,$(HOTSPOT_TARGET)) $(CD) $(HOTSPOT_TOPDIR)/make && \ $(MAKE) $(HOTSPOT_BUILD_ARGUMENTS) $(HOTSPOT_TARGET) @$(call MakeFinish,hotspot,$(HOTSPOT_TARGET))###################### .PHONY#####################.PHONY: hotspot-build hotspot-clobber hotspot-sanity