6797688: Umbrella: Merge all JDK 6u4 - 6u12 deployment code into JDK7
6845973: Update JDK7 with deployment changes in 6u13, 6u14
4802695: Support 64-bit Java Plug-in and Java webstart on Windows/Linux on AMD64
6825019: DownloadManager should not be loaded and referenced for full JRE
6738770: REGRESSION:JSException throws when use LiveConnect javascript facility
6772884: plugin2 : java.lang.OutOfMemoryError or crash
6707535: Crossing domain hole affecting multiple sites/domains using plug-in
6728071: Non-verification of Update files may allow unintended updates
6704154: Code loaded from local filesystem should not get access to localhost
6727081: Web Start security restrictions bypass using special extension jnlp
6727079: Java Web Start Socket() restriction bypass
6727071: Cache location/user name information disclosure in SingleInstanceImpl.
6716217: AppletClassLoader adds permissions based on codebase regardless of CS
6694892: Java Webstart inclusion via system properties override [CVE-2008-2086]
6704074: localhost socket access due to cache location exposed
6703909: Java webstart arbitrary file creation using nativelib
6665315: browser crashes when deployment.properties has more slashes ( / )
6660121: Encoding values in JNLP files can cause buffer overflow
6606110: URLConnection.setProxiedHost for resources that are loaded via proxy
6581221: SSV(VISTA): Redirection FAILS to work if user does a downgrade install
6609756: Buffer Overflow in Java ActiveX component
6608712: Bypassing the same origin policy in Java with crafted names
6534630: "gnumake clobber" doesn't
6849953: JDK7 - replacement of bufferoverflowU.lib on amd64 breaks build
6849029: Need some JDK7 merge clean-up after comments on the webrev
6847582: Build problem on JDK7 with isSecureProperty in merge
6827935: JDK 7 deployment merging - problem in Compiler-msvm.gmk
6823215: latest merge fixes from 6u12 -> JDK7
6816153: further mergers for JDK7 deployment integration
6807074: Fix Java Kernel and JQS in initial JDK7 builds
Summary: Initial changeset for implementing 6uX Deployment Features into JDK7
Reviewed-by: dgu, billyh
## Copyright 1995-2009 Sun Microsystems, Inc. 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. Sun designates this# particular file as subject to the "Classpath" exception as provided# by Sun 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 Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,# CA 95054 USA or visit www.sun.com if you need additional information or# have any questions.### Common variables used by all the Java makefiles. This file should# not contain rules.#ifdef OPENJDK ifneq ($(OPENJDK),true) x:=$(error "OPENJDK (if defined) can only be set to true") endifendif# Define absolute paths to TOPDIRsABS_CONTROL_TOPDIR:=$(call OptFullPath,"$(CONTROL_TOPDIR)")ABS_LANGTOOLS_TOPDIR:=$(call OptFullPath,"$(LANGTOOLS_TOPDIR)")ABS_CORBA_TOPDIR:=$(call OptFullPath,"$(CORBA_TOPDIR)")ABS_JAXP_TOPDIR:=$(call OptFullPath,"$(JAXP_TOPDIR)")ABS_JAXWS_TOPDIR:=$(call OptFullPath,"$(JAXWS_TOPDIR)")ABS_JDK_TOPDIR:=$(call OptFullPath,"$(JDK_TOPDIR)")ABS_HOTSPOT_TOPDIR:=$(call OptFullPath,"$(HOTSPOT_TOPDIR)")ABS_INSTALL_TOPDIR:=$(call OptFullPath,"$(INSTALL_TOPDIR)")ABS_SPONSORS_TOPDIR:=$(call OptFullPath,"$(SPONSORS_TOPDIR)")ABS_DEPLOY_TOPDIR:=$(call OptFullPath,"$(DEPLOY_TOPDIR)")# Macro to return true or false if a file exists and is readabledefine MkExists$(shell if [ -r $1 ]; then $(ECHO) true; else $(ECHO) false; fi)endefHOTSPOT_SRC_AVAILABLE := $(call MkExists,$(HOTSPOT_TOPDIR)/make/Makefile)ifndef BUILD_HOTSPOT ifdef ALT_HOTSPOT_IMPORT_PATH BUILD_HOTSPOT := false else BUILD_HOTSPOT := $(HOTSPOT_SRC_AVAILABLE) endifendifLANGTOOLS_SRC_AVAILABLE := $(call MkExists,$(LANGTOOLS_TOPDIR)/make/Makefile)ifndef BUILD_LANGTOOLS ifdef ALT_LANGTOOLS_DIST BUILD_LANGTOOLS := false else BUILD_LANGTOOLS := $(LANGTOOLS_SRC_AVAILABLE) endifendifCORBA_SRC_AVAILABLE := $(call MkExists,$(CORBA_TOPDIR)/make/Makefile)ifndef BUILD_CORBA ifdef ALT_CORBA_DIST BUILD_CORBA := false else BUILD_CORBA := $(CORBA_SRC_AVAILABLE) endifendifJAXP_SRC_AVAILABLE := $(call MkExists,$(JAXP_TOPDIR)/make/Makefile)ifndef BUILD_JAXP ifdef ALT_JAXP_DIST BUILD_JAXP := false else BUILD_JAXP := $(JAXP_SRC_AVAILABLE) endifendifJAXWS_SRC_AVAILABLE := $(call MkExists,$(JAXWS_TOPDIR)/make/Makefile)ifndef BUILD_JAXWS ifdef ALT_JAXWS_DIST BUILD_JAXWS := false else BUILD_JAXWS := $(JAXWS_SRC_AVAILABLE) endifendifJDK_SRC_AVAILABLE := $(call MkExists,$(JDK_TOPDIR)/make/Makefile)ifndef BUILD_JDK BUILD_JDK := $(JDK_SRC_AVAILABLE)endififeq ($(JDK_SRC_AVAILABLE),true) JDK_CLOSED_SRC_AVAILABLE := $(call MkExists,$(JDK_TOPDIR)/src/closed) ifeq ($(JDK_CLOSED_SRC_AVAILABLE),false) OPENJDK = true endifendifDEPLOY_SRC_AVAILABLE := $(call MkExists,$(DEPLOY_TOPDIR)/make/Makefile)ifndef BUILD_DEPLOY BUILD_DEPLOY := $(DEPLOY_SRC_AVAILABLE)endifINSTALL_SRC_AVAILABLE := $(call MkExists,$(INSTALL_TOPDIR)/make/Makefile)ifndef BUILD_INSTALL ifdef DEV_ONLY BUILD_INSTALL := false else BUILD_INSTALL := $(INSTALL_SRC_AVAILABLE) endifendifSPONSORS_SRC_AVAILABLE := $(call MkExists,$(SPONSORS_TOPDIR)/make/Makefile)ifndef BUILD_SPONSORS ifdef DEV_ONLY BUILD_SPONSORS := false else BUILD_SPONSORS := $(SPONSORS_SRC_AVAILABLE) endifendif# Do we build the source and openjdk binary plug bundles?BUNDLE_RULES = $(JDK_TOPDIR)/make/closed/bundles.gmkBUNDLE_RULES_AVAILABLE := $(call MkExists,$(BUNDLE_RULES))# Current things we do NOT build for OPENJDKifdef OPENJDK BUILD_DEPLOY = false BUILD_INSTALL = false BUILD_SPONSORS = false BUNDLE_RULES_AVAILABLE := false # These could be over-ridden on the command line or in environment ifndef SKIP_FASTDEBUG_BUILD SKIP_FASTDEBUG_BUILD = true endif ifndef SKIP_DEBUG_BUILD SKIP_DEBUG_BUILD = true endif ifndef SKIP_COMPARE_IMAGES SKIP_COMPARE_IMAGES = true endif SKIP_OPENJDK_BUILD = trueelse ifndef SKIP_OPENJDK_BUILD #SKIP_OPENJDK_BUILD = false # Until 6675289 is resolved, or this feature is removed. SKIP_OPENJDK_BUILD = true endifendififndef SKIP_PRODUCT_BUILD SKIP_PRODUCT_BUILD = falseendif# Solaris 64 bit builds are not complete enough to ever do thisifeq ($(PLATFORM)$(ARCH_DATA_MODEL),solaris64) SKIP_OPENJDK_BUILD = trueendif# Many reasons why we would want to skip the comparison to previous jdkifndef SKIP_COMPARE_IMAGES ifeq ($(BUILD_JDK), false) SKIP_COMPARE_IMAGES = true endif ifeq ($(BUILD_DEPLOY), false) SKIP_COMPARE_IMAGES = true endif ifeq ($(BUILD_INSTALL), false) SKIP_COMPARE_IMAGES = true endif ifdef DEV_ONLY SKIP_COMPARE_IMAGES = true endifendif# Select defaults if these are not set to true or falseifndef SKIP_DEBUG_BUILD SKIP_DEBUG_BUILD=trueendififndef SKIP_FASTDEBUG_BUILD SKIP_FASTDEBUG_BUILD=falseendif# Output directory for hotspot buildHOTSPOT_DIR = $(ABS_OUTPUTDIR)/hotspot# If we are building componentsifndef ALT_LANGTOOLS_DIST LANGTOOLS_OUTPUTDIR = $(ABS_OUTPUTDIR)/langtools ABS_LANGTOOLS_DIST = $(LANGTOOLS_OUTPUTDIR)/distendififndef ALT_CORBA_DIST CORBA_OUTPUTDIR = $(ABS_OUTPUTDIR)/corba ABS_CORBA_DIST = $(CORBA_OUTPUTDIR)/distendififndef ALT_JAXP_DIST JAXP_OUTPUTDIR = $(ABS_OUTPUTDIR)/jaxp ABS_JAXP_DIST = $(JAXP_OUTPUTDIR)/distendififndef ALT_JAXWS_DIST JAXWS_OUTPUTDIR = $(ABS_OUTPUTDIR)/jaxws ABS_JAXWS_DIST = $(JAXWS_OUTPUTDIR)/distendif# Common make arguments (supplied to all component builds)COMMON_BUILD_ARGUMENTS = \ JDK_TOPDIR=$(ABS_JDK_TOPDIR) \ JDK_MAKE_SHARED_DIR=$(ABS_JDK_TOPDIR)/make/common/shared \ EXTERNALSANITYCONTROL=true \ TARGET_CLASS_VERSION=$(TARGET_CLASS_VERSION) \ MILESTONE=$(MILESTONE) \ BUILD_NUMBER=$(BUILD_NUMBER) \ JDK_BUILD_NUMBER=$(JDK_BUILD_NUMBER) \ FULL_VERSION=$(FULL_VERSION) \ PREVIOUS_JDK_VERSION=$(PREVIOUS_JDK_VERSION) \ JDK_VERSION=$(JDK_VERSION) \ JDK_MKTG_VERSION=$(JDK_MKTG_VERSION) \ JDK_MAJOR_VERSION=$(JDK_MAJOR_VERSION) \ JDK_MINOR_VERSION=$(JDK_MINOR_VERSION) \ JDK_MICRO_VERSION=$(JDK_MICRO_VERSION) \ PREVIOUS_MAJOR_VERSION=$(PREVIOUS_MAJOR_VERSION) \ PREVIOUS_MINOR_VERSION=$(PREVIOUS_MINOR_VERSION) \ PREVIOUS_MICRO_VERSION=$(PREVIOUS_MICRO_VERSION)ifdef ARCH_DATA_MODEL COMMON_BUILD_ARGUMENTS += ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)endififeq ($(DEBUG_NAME), debug) COMMON_BUILD_ARGUMENTS += VARIANT=DBG DEBUG_CLASSFILES=trueendififeq ($(DEBUG_NAME), fastdebug) COMMON_BUILD_ARGUMENTS += VARIANT=DBG FASTDEBUG=true DEBUG_CLASSFILES=trueendififdef COOKED_JDK_UPDATE_VERSION COMMON_BUILD_ARGUMENTS += COOKED_JDK_UPDATE_VERSION=$(COOKED_JDK_UPDATE_VERSION)endififdef COOKED_BUILD_NUMBER COMMON_BUILD_ARGUMENTS += COOKED_BUILD_NUMBER=$(COOKED_BUILD_NUMBER)endififdef ANT_HOME COMMON_BUILD_ARGUMENTS += ANT_HOME="$(ANT_HOME)"endif