make/Defs-internal.gmk
changeset 0 fd16c54261b3
child 16 13adabd0ff72
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/Defs-internal.gmk	Sat Dec 01 00:00:00 2007 +0000
@@ -0,0 +1,254 @@
+#
+# Copyright 1995-2007 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.
+#
+
+# Define absolute paths to TOPDIRs
+ABS_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 readable
+define MkExists
+$(shell if [ -r $1 ]; then $(ECHO) true; else $(ECHO) false; fi)
+endef
+
+HOTSPOT_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)
+  endif
+endif
+
+LANGTOOLS_SRC_AVAILABLE := $(call MkExists,$(LANGTOOLS_TOPDIR)/make/Makefile)
+ifndef BUILD_LANGTOOLS
+  ifdef ALT_LANGTOOLS_DIST
+    BUILD_LANGTOOLS := false
+  else
+    BUILD_LANGTOOLS := $(LANGTOOLS_SRC_AVAILABLE)
+  endif
+endif
+
+CORBA_SRC_AVAILABLE := $(call MkExists,$(CORBA_TOPDIR)/make/Makefile)
+ifndef BUILD_CORBA
+  ifdef ALT_CORBA_DIST
+    BUILD_CORBA := false
+  else
+    BUILD_CORBA := $(CORBA_SRC_AVAILABLE)
+  endif
+endif
+
+JAXP_SRC_AVAILABLE := $(call MkExists,$(JAXP_TOPDIR)/make/Makefile)
+ifndef BUILD_JAXP
+  ifdef ALT_JAXP_DIST
+    BUILD_JAXP := false
+  else
+    BUILD_JAXP := $(JAXP_SRC_AVAILABLE)
+  endif
+endif
+
+JAXWS_SRC_AVAILABLE := $(call MkExists,$(JAXWS_TOPDIR)/make/Makefile)
+ifndef BUILD_JAXWS
+  ifdef ALT_JAXWS_DIST
+    BUILD_JAXWS := false
+  else
+    BUILD_JAXWS := $(JAXWS_SRC_AVAILABLE)
+  endif
+endif
+
+JDK_SRC_AVAILABLE := $(call MkExists,$(JDK_TOPDIR)/make/Makefile)
+ifndef BUILD_JDK
+  BUILD_JDK := $(JDK_SRC_AVAILABLE)
+endif
+ifeq ($(JDK_SRC_AVAILABLE),true)
+  JDK_CLOSED_SRC_AVAILABLE := $(call MkExists,$(JDK_TOPDIR)/src/closed)
+  ifndef OPENJDK
+    ifeq ($(JDK_CLOSED_SRC_AVAILABLE),false)
+      OPENJDK = true
+    endif
+  endif
+endif
+
+DEPLOY_SRC_AVAILABLE := $(call MkExists,$(DEPLOY_TOPDIR)/make/Makefile)
+ifndef BUILD_DEPLOY
+  BUILD_DEPLOY := $(DEPLOY_SRC_AVAILABLE)
+endif
+
+INSTALL_SRC_AVAILABLE := $(call MkExists,$(INSTALL_TOPDIR)/make/Makefile)
+ifndef BUILD_INSTALL
+  ifdef DEV_ONLY
+    BUILD_INSTALL := false
+  else
+    BUILD_INSTALL := $(INSTALL_SRC_AVAILABLE)
+  endif
+endif
+
+SPONSORS_SRC_AVAILABLE := $(call MkExists,$(SPONSORS_TOPDIR)/make/Makefile)
+ifndef BUILD_SPONSORS
+  ifdef DEV_ONLY
+    BUILD_SPONSORS := false
+  else
+    BUILD_SPONSORS := $(SPONSORS_SRC_AVAILABLE)
+  endif
+endif
+
+
+# Do we build the source and openjdk binary plug bundles?
+BUNDLE_RULES = $(JDK_TOPDIR)/make/closed/bundles.gmk
+BUNDLE_RULES_AVAILABLE := $(call MkExists,$(BUNDLE_RULES))
+
+# Current things we do NOT build for OPENJDK
+ifdef 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 = true
+else
+  ifndef SKIP_OPENJDK_BUILD
+    SKIP_OPENJDK_BUILD = false
+    # FIXUP: until freetype fixed on linux and solaris rmi build fixed
+    SKIP_OPENJDK_BUILD = true
+  endif
+endif
+
+# Solaris 64 bit builds are not complete enough to ever do this
+ifeq ($(PLATFORM)$(ARCH_DATA_MODEL),solaris64)
+  SKIP_OPENJDK_BUILD = true
+endif
+
+# Many reasons why we would want to skip the comparison to previous jdk
+ifndef 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
+  endif
+endif
+
+# Select defaults if these are not set to true or false
+ifndef SKIP_DEBUG_BUILD
+  SKIP_DEBUG_BUILD=true
+endif
+ifndef SKIP_FASTDEBUG_BUILD
+  SKIP_FASTDEBUG_BUILD=false
+endif
+
+# Output directory for hotspot build
+HOTSPOT_DIR = $(ABS_OUTPUTDIR)/hotspot
+
+# If we are building components
+ifndef ALT_LANGTOOLS_DIST
+  LANGTOOLS_OUTPUTDIR = $(ABS_OUTPUTDIR)/langtools
+  ABS_LANGTOOLS_DIST = $(LANGTOOLS_OUTPUTDIR)/dist
+endif
+ifndef ALT_CORBA_DIST
+  CORBA_OUTPUTDIR = $(ABS_OUTPUTDIR)/corba
+  ABS_CORBA_DIST = $(CORBA_OUTPUTDIR)/dist
+endif
+ifndef ALT_JAXP_DIST
+  JAXP_OUTPUTDIR = $(ABS_OUTPUTDIR)/jaxp
+  ABS_JAXP_DIST = $(JAXP_OUTPUTDIR)/dist
+endif
+ifndef ALT_JAXWS_DIST
+  JAXWS_OUTPUTDIR = $(ABS_OUTPUTDIR)/jaxws
+  ABS_JAXWS_DIST = $(JAXWS_OUTPUTDIR)/dist
+endif
+
+# 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)
+
+ifdef ARCH_DATA_MODEL
+  COMMON_BUILD_ARGUMENTS += ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)
+endif
+
+ifeq ($(DEBUG_NAME), debug)
+  COMMON_BUILD_ARGUMENTS += VARIANT=DBG DEBUG_CLASSFILES=true
+endif
+
+ifeq ($(DEBUG_NAME), fastdebug)
+  COMMON_BUILD_ARGUMENTS += VARIANT=DBG FASTDEBUG=true DEBUG_CLASSFILES=true
+endif
+
+ifdef COOKED_JDK_UPDATE_VERSION
+  COMMON_BUILD_ARGUMENTS += COOKED_JDK_UPDATE_VERSION=$(COOKED_JDK_UPDATE_VERSION)
+endif
+
+ifdef COOKED_BUILD_NUMBER
+  COMMON_BUILD_ARGUMENTS += COOKED_BUILD_NUMBER=$(COOKED_BUILD_NUMBER)
+endif
+
+ifdef ANT_HOME
+  COMMON_BUILD_ARGUMENTS += ANT_HOME="$(ANT_HOME)"
+endif
+
+ifdef FINDBUGS_HOME
+  COMMON_BUILD_ARGUMENTS += FINDBUGS_HOME="$(FINDBUGS_HOME)"
+endif
+
+