make/Defs-internal.gmk
author ysr
Wed, 07 Sep 2011 13:55:42 -0700
changeset 10526 3e92f211533f
parent 8917 a3bac6e9ee79
child 12024 452c9c3f0a96
permissions -rw-r--r--
4965777: GC changes to support use of discovered field for pending references Summary: If and when the reference handler thread is able to use the discovered field to link reference objects in its pending list, so will GC. In that case, GC will scan through this field once a reference object has been placed on the pending list, but not scan that field before that stage, as the field is used by the concurrent GC thread to link discovered objects. When ReferenceHandleR thread does not use the discovered field for the purpose of linking the elements in the pending list, as would be the case in older JDKs, the JVM will fall back to the old behaviour of using the next field for that purpose. Reviewed-by: jcoomes, mchung, stefank
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
     1
#
8917
a3bac6e9ee79 7033660: Update copyright year to 2011 on any files changed in 2011
ohair
parents: 8441
diff changeset
     2
# Copyright (c) 1995, 2011, Oracle and/or its affiliates. All rights reserved.
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
     3
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
fd16c54261b3 Initial load
duke
parents:
diff changeset
     4
#
fd16c54261b3 Initial load
duke
parents:
diff changeset
     5
# This code is free software; you can redistribute it and/or modify it
fd16c54261b3 Initial load
duke
parents:
diff changeset
     6
# under the terms of the GNU General Public License version 2 only, as
5499
eb0b3e373167 6943119: Rebrand source copyright notices
ohair
parents: 4557
diff changeset
     7
# published by the Free Software Foundation.  Oracle designates this
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
     8
# particular file as subject to the "Classpath" exception as provided
5499
eb0b3e373167 6943119: Rebrand source copyright notices
ohair
parents: 4557
diff changeset
     9
# by Oracle in the LICENSE file that accompanied this code.
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
    10
#
fd16c54261b3 Initial load
duke
parents:
diff changeset
    11
# This code is distributed in the hope that it will be useful, but WITHOUT
fd16c54261b3 Initial load
duke
parents:
diff changeset
    12
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
fd16c54261b3 Initial load
duke
parents:
diff changeset
    13
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
fd16c54261b3 Initial load
duke
parents:
diff changeset
    14
# version 2 for more details (a copy is included in the LICENSE file that
fd16c54261b3 Initial load
duke
parents:
diff changeset
    15
# accompanied this code).
fd16c54261b3 Initial load
duke
parents:
diff changeset
    16
#
fd16c54261b3 Initial load
duke
parents:
diff changeset
    17
# You should have received a copy of the GNU General Public License version
fd16c54261b3 Initial load
duke
parents:
diff changeset
    18
# 2 along with this work; if not, write to the Free Software Foundation,
fd16c54261b3 Initial load
duke
parents:
diff changeset
    19
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
fd16c54261b3 Initial load
duke
parents:
diff changeset
    20
#
5499
eb0b3e373167 6943119: Rebrand source copyright notices
ohair
parents: 4557
diff changeset
    21
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
eb0b3e373167 6943119: Rebrand source copyright notices
ohair
parents: 4557
diff changeset
    22
# or visit www.oracle.com if you need additional information or have any
eb0b3e373167 6943119: Rebrand source copyright notices
ohair
parents: 4557
diff changeset
    23
# questions.
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
    24
#
fd16c54261b3 Initial load
duke
parents:
diff changeset
    25
fd16c54261b3 Initial load
duke
parents:
diff changeset
    26
#
fd16c54261b3 Initial load
duke
parents:
diff changeset
    27
# Common variables used by all the Java makefiles.  This file should
fd16c54261b3 Initial load
duke
parents:
diff changeset
    28
# not contain rules.
fd16c54261b3 Initial load
duke
parents:
diff changeset
    29
#
fd16c54261b3 Initial load
duke
parents:
diff changeset
    30
8441
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    31
# The build times report is turned off by setting REPORT_BUILD_TIMES to nothing.
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    32
# This is necessary for the target clobber/clean which will erase the
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    33
# directories where the buildtimes are stored.
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    34
REPORT_BUILD_TIMES=1
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    35
# Store the build times in this directory.
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    36
BUILDTIMESDIR=$(ABS_OUTPUTDIR)/tmp/buildtimes
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    37
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    38
# Record starting time for build of a sub repository.
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    39
define RecordStartTime
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    40
$(MKDIR) -p $(BUILDTIMESDIR)
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    41
$(DATE) '+%Y %m %d %H %M %S' | $(NAWK) '{ print $$1,$$2,$$3,$$4,$$5,$$6,($$4*3600+$$5*60+$$6) }' > $(BUILDTIMESDIR)/build_time_start_$1
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    42
$(DATE) '+%Y-%m-%d %H:%M:%S' > $(BUILDTIMESDIR)/build_time_start_$1_human_readable
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    43
endef
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    44
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    45
# Indicate that we started to build a sub repository and record starting time. 
3789
2040d99c6f14 6855174: Improve log output when builds transition from one workspace to another
ohair
parents: 3571
diff changeset
    46
define MakeStart
8441
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    47
$(call RecordStartTime,$1)
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    48
$(PRINTF) "\n\n%s\n%s\n##### %-60.60s #####\n%s\n\n" \
3789
2040d99c6f14 6855174: Improve log output when builds transition from one workspace to another
ohair
parents: 3571
diff changeset
    49
"########################################################################" \
2040d99c6f14 6855174: Improve log output when builds transition from one workspace to another
ohair
parents: 3571
diff changeset
    50
"########################################################################" \
8441
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    51
"Entering $1 for target(s) $2" \
3789
2040d99c6f14 6855174: Improve log output when builds transition from one workspace to another
ohair
parents: 3571
diff changeset
    52
"########################################################################"
2040d99c6f14 6855174: Improve log output when builds transition from one workspace to another
ohair
parents: 3571
diff changeset
    53
endef
2040d99c6f14 6855174: Improve log output when builds transition from one workspace to another
ohair
parents: 3571
diff changeset
    54
8441
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    55
# Record ending time and calculate the difference and store it in a
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    56
# easy to read format. Handles builds that cross midnight. Expects
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    57
# that a build will never take 24 hours or more. 
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    58
define RecordEndTime
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    59
$(DATE) '+%Y %m %d %H %M %S' | $(NAWK) '{ print $$1,$$2,$$3,$$4,$$5,$$6,($$4*3600+$$5*60+$$6) }' > $(BUILDTIMESDIR)/build_time_end_$1
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    60
$(DATE) '+%Y-%m-%d %H:%M:%S' > $(BUILDTIMESDIR)/build_time_end_$1_human_readable
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    61
$(ECHO) `$(CAT) $(BUILDTIMESDIR)/build_time_start_$1` `$(CAT) $(BUILDTIMESDIR)/build_time_end_$1` $1 | \
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    62
  $(NAWK) '{ F=$$7; T=$$14; if (F > T) { T+=3600*24 }; D=T-F; H=int(D/3600); \
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    63
             M=int((D-H*3600)/60); S=D-H*3600-M*60; printf("%02d:%02d:%02d %s\n",H,M,S,$$15); }' \
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    64
  > $(BUILDTIMESDIR)/build_time_diff_$1
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    65
endef
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    66
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    67
# Indicate that we are done.
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    68
# Record ending time and print out the total time it took to build.
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    69
define MakeFinish 
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    70
$(if $(REPORT_BUILD_TIMES),$(call RecordEndTime,$1),) 
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    71
$(PRINTF) "%s\n##### %-60.60s #####\n%s\n##### %-60.60s #####\n%s\n\n" \
3789
2040d99c6f14 6855174: Improve log output when builds transition from one workspace to another
ohair
parents: 3571
diff changeset
    72
"########################################################################" \
8441
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    73
"Leaving $1 for target(s) $2" \
3789
2040d99c6f14 6855174: Improve log output when builds transition from one workspace to another
ohair
parents: 3571
diff changeset
    74
"########################################################################" \
8441
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    75
$(if $(REPORT_BUILD_TIMES),"Build time `$(CAT) $(BUILDTIMESDIR)/build_time_diff_$1` for target(s) $2","") \
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    76
"########################################################################" 
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    77
endef
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    78
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    79
# Find all build_time_* files and print their contents in a list sorted
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    80
# on the name of the sub repository.
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    81
define ReportBuildTimes
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    82
$(PRINTF) "-- Build times ----------\nTarget %s\nStart %s\nEnd   %s\n%s\n%s\n-------------------------\n" \
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    83
$1 \
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    84
"`$(CAT) $(BUILDTIMESDIR)/build_time_start_TOTAL_human_readable`" \
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    85
"`$(CAT) $(BUILDTIMESDIR)/build_time_end_TOTAL_human_readable`" \
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    86
"`$(LS) $(BUILDTIMESDIR)/build_time_diff_* | $(GREP) -v _TOTAL | $(XARGS) $(CAT) | $(SORT) -k 2`" \
30f5ad688d4a 7021753: Add a build times report
ohrstrom
parents: 8055
diff changeset
    87
"`$(CAT) $(BUILDTIMESDIR)/build_time_diff_TOTAL`"
3789
2040d99c6f14 6855174: Improve log output when builds transition from one workspace to another
ohair
parents: 3571
diff changeset
    88
endef
2040d99c6f14 6855174: Improve log output when builds transition from one workspace to another
ohair
parents: 3571
diff changeset
    89
19
1a94d6d22dbb 6674232: OPENJDK=false is same as OPENJDK=true
ohair
parents: 18
diff changeset
    90
ifdef OPENJDK
1a94d6d22dbb 6674232: OPENJDK=false is same as OPENJDK=true
ohair
parents: 18
diff changeset
    91
  ifneq ($(OPENJDK),true)
1a94d6d22dbb 6674232: OPENJDK=false is same as OPENJDK=true
ohair
parents: 18
diff changeset
    92
    x:=$(error "OPENJDK (if defined) can only be set to true")
1a94d6d22dbb 6674232: OPENJDK=false is same as OPENJDK=true
ohair
parents: 18
diff changeset
    93
  endif
1a94d6d22dbb 6674232: OPENJDK=false is same as OPENJDK=true
ohair
parents: 18
diff changeset
    94
endif
1a94d6d22dbb 6674232: OPENJDK=false is same as OPENJDK=true
ohair
parents: 18
diff changeset
    95
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
    96
# Define absolute paths to TOPDIRs
fd16c54261b3 Initial load
duke
parents:
diff changeset
    97
ABS_LANGTOOLS_TOPDIR:=$(call OptFullPath,"$(LANGTOOLS_TOPDIR)")
fd16c54261b3 Initial load
duke
parents:
diff changeset
    98
ABS_CORBA_TOPDIR:=$(call OptFullPath,"$(CORBA_TOPDIR)")
fd16c54261b3 Initial load
duke
parents:
diff changeset
    99
ABS_JAXP_TOPDIR:=$(call OptFullPath,"$(JAXP_TOPDIR)")
fd16c54261b3 Initial load
duke
parents:
diff changeset
   100
ABS_JAXWS_TOPDIR:=$(call OptFullPath,"$(JAXWS_TOPDIR)")
fd16c54261b3 Initial load
duke
parents:
diff changeset
   101
ABS_JDK_TOPDIR:=$(call OptFullPath,"$(JDK_TOPDIR)")
fd16c54261b3 Initial load
duke
parents:
diff changeset
   102
ABS_HOTSPOT_TOPDIR:=$(call OptFullPath,"$(HOTSPOT_TOPDIR)")
fd16c54261b3 Initial load
duke
parents:
diff changeset
   103
ABS_INSTALL_TOPDIR:=$(call OptFullPath,"$(INSTALL_TOPDIR)")
fd16c54261b3 Initial load
duke
parents:
diff changeset
   104
ABS_SPONSORS_TOPDIR:=$(call OptFullPath,"$(SPONSORS_TOPDIR)")
fd16c54261b3 Initial load
duke
parents:
diff changeset
   105
ABS_DEPLOY_TOPDIR:=$(call OptFullPath,"$(DEPLOY_TOPDIR)")
fd16c54261b3 Initial load
duke
parents:
diff changeset
   106
fd16c54261b3 Initial load
duke
parents:
diff changeset
   107
# Macro to return true or false if a file exists and is readable
fd16c54261b3 Initial load
duke
parents:
diff changeset
   108
define MkExists
fd16c54261b3 Initial load
duke
parents:
diff changeset
   109
$(shell if [ -r $1 ]; then $(ECHO) true; else $(ECHO) false; fi)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   110
endef
fd16c54261b3 Initial load
duke
parents:
diff changeset
   111
fd16c54261b3 Initial load
duke
parents:
diff changeset
   112
HOTSPOT_SRC_AVAILABLE := $(call MkExists,$(HOTSPOT_TOPDIR)/make/Makefile)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   113
ifndef BUILD_HOTSPOT
fd16c54261b3 Initial load
duke
parents:
diff changeset
   114
  ifdef ALT_HOTSPOT_IMPORT_PATH
fd16c54261b3 Initial load
duke
parents:
diff changeset
   115
    BUILD_HOTSPOT := false
fd16c54261b3 Initial load
duke
parents:
diff changeset
   116
  else
fd16c54261b3 Initial load
duke
parents:
diff changeset
   117
    BUILD_HOTSPOT := $(HOTSPOT_SRC_AVAILABLE)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   118
  endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   119
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   120
fd16c54261b3 Initial load
duke
parents:
diff changeset
   121
LANGTOOLS_SRC_AVAILABLE := $(call MkExists,$(LANGTOOLS_TOPDIR)/make/Makefile)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   122
ifndef BUILD_LANGTOOLS
fd16c54261b3 Initial load
duke
parents:
diff changeset
   123
  ifdef ALT_LANGTOOLS_DIST
fd16c54261b3 Initial load
duke
parents:
diff changeset
   124
    BUILD_LANGTOOLS := false
fd16c54261b3 Initial load
duke
parents:
diff changeset
   125
  else
fd16c54261b3 Initial load
duke
parents:
diff changeset
   126
    BUILD_LANGTOOLS := $(LANGTOOLS_SRC_AVAILABLE)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   127
  endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   128
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   129
fd16c54261b3 Initial load
duke
parents:
diff changeset
   130
CORBA_SRC_AVAILABLE := $(call MkExists,$(CORBA_TOPDIR)/make/Makefile)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   131
ifndef BUILD_CORBA
fd16c54261b3 Initial load
duke
parents:
diff changeset
   132
  ifdef ALT_CORBA_DIST
fd16c54261b3 Initial load
duke
parents:
diff changeset
   133
    BUILD_CORBA := false
fd16c54261b3 Initial load
duke
parents:
diff changeset
   134
  else
fd16c54261b3 Initial load
duke
parents:
diff changeset
   135
    BUILD_CORBA := $(CORBA_SRC_AVAILABLE)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   136
  endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   137
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   138
fd16c54261b3 Initial load
duke
parents:
diff changeset
   139
JAXP_SRC_AVAILABLE := $(call MkExists,$(JAXP_TOPDIR)/make/Makefile)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   140
ifndef BUILD_JAXP
fd16c54261b3 Initial load
duke
parents:
diff changeset
   141
  ifdef ALT_JAXP_DIST
fd16c54261b3 Initial load
duke
parents:
diff changeset
   142
    BUILD_JAXP := false
fd16c54261b3 Initial load
duke
parents:
diff changeset
   143
  else
fd16c54261b3 Initial load
duke
parents:
diff changeset
   144
    BUILD_JAXP := $(JAXP_SRC_AVAILABLE)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   145
  endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   146
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   147
fd16c54261b3 Initial load
duke
parents:
diff changeset
   148
JAXWS_SRC_AVAILABLE := $(call MkExists,$(JAXWS_TOPDIR)/make/Makefile)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   149
ifndef BUILD_JAXWS
fd16c54261b3 Initial load
duke
parents:
diff changeset
   150
  ifdef ALT_JAXWS_DIST
fd16c54261b3 Initial load
duke
parents:
diff changeset
   151
    BUILD_JAXWS := false
fd16c54261b3 Initial load
duke
parents:
diff changeset
   152
  else
fd16c54261b3 Initial load
duke
parents:
diff changeset
   153
    BUILD_JAXWS := $(JAXWS_SRC_AVAILABLE)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   154
  endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   155
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   156
fd16c54261b3 Initial load
duke
parents:
diff changeset
   157
JDK_SRC_AVAILABLE := $(call MkExists,$(JDK_TOPDIR)/make/Makefile)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   158
ifndef BUILD_JDK
fd16c54261b3 Initial load
duke
parents:
diff changeset
   159
  BUILD_JDK := $(JDK_SRC_AVAILABLE)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   160
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   161
ifeq ($(JDK_SRC_AVAILABLE),true)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   162
  JDK_CLOSED_SRC_AVAILABLE := $(call MkExists,$(JDK_TOPDIR)/src/closed)
19
1a94d6d22dbb 6674232: OPENJDK=false is same as OPENJDK=true
ohair
parents: 18
diff changeset
   163
  ifeq ($(JDK_CLOSED_SRC_AVAILABLE),false)
1a94d6d22dbb 6674232: OPENJDK=false is same as OPENJDK=true
ohair
parents: 18
diff changeset
   164
    OPENJDK = true
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
   165
  endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   166
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   167
fd16c54261b3 Initial load
duke
parents:
diff changeset
   168
DEPLOY_SRC_AVAILABLE := $(call MkExists,$(DEPLOY_TOPDIR)/make/Makefile)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   169
ifndef BUILD_DEPLOY
fd16c54261b3 Initial load
duke
parents:
diff changeset
   170
  BUILD_DEPLOY := $(DEPLOY_SRC_AVAILABLE)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   171
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   172
fd16c54261b3 Initial load
duke
parents:
diff changeset
   173
INSTALL_SRC_AVAILABLE := $(call MkExists,$(INSTALL_TOPDIR)/make/Makefile)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   174
ifndef BUILD_INSTALL
fd16c54261b3 Initial load
duke
parents:
diff changeset
   175
  ifdef DEV_ONLY
fd16c54261b3 Initial load
duke
parents:
diff changeset
   176
    BUILD_INSTALL := false
fd16c54261b3 Initial load
duke
parents:
diff changeset
   177
  else
fd16c54261b3 Initial load
duke
parents:
diff changeset
   178
    BUILD_INSTALL := $(INSTALL_SRC_AVAILABLE)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   179
  endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   180
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   181
fd16c54261b3 Initial load
duke
parents:
diff changeset
   182
SPONSORS_SRC_AVAILABLE := $(call MkExists,$(SPONSORS_TOPDIR)/make/Makefile)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   183
ifndef BUILD_SPONSORS
fd16c54261b3 Initial load
duke
parents:
diff changeset
   184
  ifdef DEV_ONLY
fd16c54261b3 Initial load
duke
parents:
diff changeset
   185
    BUILD_SPONSORS := false
fd16c54261b3 Initial load
duke
parents:
diff changeset
   186
  else
fd16c54261b3 Initial load
duke
parents:
diff changeset
   187
    BUILD_SPONSORS := $(SPONSORS_SRC_AVAILABLE)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   188
  endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   189
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   190
fd16c54261b3 Initial load
duke
parents:
diff changeset
   191
7873
4ff5acee11e8 7009969: Remove SKIP_OPENJDK_BUILD from top Makefile
ohair
parents: 7654
diff changeset
   192
# Do we build the source bundles?
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
   193
BUNDLE_RULES = $(JDK_TOPDIR)/make/closed/bundles.gmk
3571
764028d95393 6872177: JCE framework and provider builds broken following -target 7 changes
wetmore
parents: 3040
diff changeset
   194
ifeq ($(SKIP_BUNDLES_BUILD), true)
764028d95393 6872177: JCE framework and provider builds broken following -target 7 changes
wetmore
parents: 3040
diff changeset
   195
  BUNDLE_RULES_AVAILABLE := false
764028d95393 6872177: JCE framework and provider builds broken following -target 7 changes
wetmore
parents: 3040
diff changeset
   196
else 
764028d95393 6872177: JCE framework and provider builds broken following -target 7 changes
wetmore
parents: 3040
diff changeset
   197
  BUNDLE_RULES_AVAILABLE := $(call MkExists,$(BUNDLE_RULES))
764028d95393 6872177: JCE framework and provider builds broken following -target 7 changes
wetmore
parents: 3040
diff changeset
   198
endif
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
   199
fd16c54261b3 Initial load
duke
parents:
diff changeset
   200
# Current things we do NOT build for OPENJDK
fd16c54261b3 Initial load
duke
parents:
diff changeset
   201
ifdef OPENJDK
fd16c54261b3 Initial load
duke
parents:
diff changeset
   202
  BUILD_DEPLOY = false
fd16c54261b3 Initial load
duke
parents:
diff changeset
   203
  BUILD_INSTALL = false
fd16c54261b3 Initial load
duke
parents:
diff changeset
   204
  BUILD_SPONSORS = false
fd16c54261b3 Initial load
duke
parents:
diff changeset
   205
  BUNDLE_RULES_AVAILABLE := false
fd16c54261b3 Initial load
duke
parents:
diff changeset
   206
  # These could be over-ridden on the command line or in environment
fd16c54261b3 Initial load
duke
parents:
diff changeset
   207
  ifndef SKIP_FASTDEBUG_BUILD
fd16c54261b3 Initial load
duke
parents:
diff changeset
   208
    SKIP_FASTDEBUG_BUILD = true
fd16c54261b3 Initial load
duke
parents:
diff changeset
   209
  endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   210
  ifndef SKIP_DEBUG_BUILD
fd16c54261b3 Initial load
duke
parents:
diff changeset
   211
    SKIP_DEBUG_BUILD = true
fd16c54261b3 Initial load
duke
parents:
diff changeset
   212
  endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   213
  ifndef SKIP_COMPARE_IMAGES
fd16c54261b3 Initial load
duke
parents:
diff changeset
   214
    SKIP_COMPARE_IMAGES = true
fd16c54261b3 Initial load
duke
parents:
diff changeset
   215
  endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   216
else
3040
48f8548b018b 6857805: Fix openjdk builds to avoid building deploy repository
ohair
parents: 2905
diff changeset
   217
  
48f8548b018b 6857805: Fix openjdk builds to avoid building deploy repository
ohair
parents: 2905
diff changeset
   218
  # Various non-OPENJDK reasons to NOT build the deploy repository
48f8548b018b 6857805: Fix openjdk builds to avoid building deploy repository
ohair
parents: 2905
diff changeset
   219
  ifeq ($(ARCH), ia64)
48f8548b018b 6857805: Fix openjdk builds to avoid building deploy repository
ohair
parents: 2905
diff changeset
   220
    BUILD_DEPLOY=false
48f8548b018b 6857805: Fix openjdk builds to avoid building deploy repository
ohair
parents: 2905
diff changeset
   221
  endif
48f8548b018b 6857805: Fix openjdk builds to avoid building deploy repository
ohair
parents: 2905
diff changeset
   222
  ifeq ($(ARCH), sparcv9)
48f8548b018b 6857805: Fix openjdk builds to avoid building deploy repository
ohair
parents: 2905
diff changeset
   223
    BUILD_DEPLOY=false
48f8548b018b 6857805: Fix openjdk builds to avoid building deploy repository
ohair
parents: 2905
diff changeset
   224
  endif
48f8548b018b 6857805: Fix openjdk builds to avoid building deploy repository
ohair
parents: 2905
diff changeset
   225
  ifeq ($(ARCH), amd64)
48f8548b018b 6857805: Fix openjdk builds to avoid building deploy repository
ohair
parents: 2905
diff changeset
   226
    ifeq ($(PLATFORM), solaris)
48f8548b018b 6857805: Fix openjdk builds to avoid building deploy repository
ohair
parents: 2905
diff changeset
   227
      BUILD_DEPLOY=false
48f8548b018b 6857805: Fix openjdk builds to avoid building deploy repository
ohair
parents: 2905
diff changeset
   228
    endif
48f8548b018b 6857805: Fix openjdk builds to avoid building deploy repository
ohair
parents: 2905
diff changeset
   229
  endif
48f8548b018b 6857805: Fix openjdk builds to avoid building deploy repository
ohair
parents: 2905
diff changeset
   230
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
   231
endif
874
638ddad10e12 6728161: Add SKIP_BOOT_CYCLE feature to create boot jdk and use it during build
ohair
parents: 668
diff changeset
   232
ifndef SKIP_PRODUCT_BUILD
638ddad10e12 6728161: Add SKIP_BOOT_CYCLE feature to create boot jdk and use it during build
ohair
parents: 668
diff changeset
   233
  SKIP_PRODUCT_BUILD = false
638ddad10e12 6728161: Add SKIP_BOOT_CYCLE feature to create boot jdk and use it during build
ohair
parents: 668
diff changeset
   234
endif
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
   235
fd16c54261b3 Initial load
duke
parents:
diff changeset
   236
# Many reasons why we would want to skip the comparison to previous jdk
fd16c54261b3 Initial load
duke
parents:
diff changeset
   237
ifndef SKIP_COMPARE_IMAGES
fd16c54261b3 Initial load
duke
parents:
diff changeset
   238
  ifeq ($(BUILD_JDK), false)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   239
    SKIP_COMPARE_IMAGES = true
fd16c54261b3 Initial load
duke
parents:
diff changeset
   240
  endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   241
  ifeq ($(BUILD_DEPLOY), false)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   242
    SKIP_COMPARE_IMAGES = true
fd16c54261b3 Initial load
duke
parents:
diff changeset
   243
  endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   244
  ifeq ($(BUILD_INSTALL), false)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   245
    SKIP_COMPARE_IMAGES = true
fd16c54261b3 Initial load
duke
parents:
diff changeset
   246
  endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   247
  ifdef DEV_ONLY
fd16c54261b3 Initial load
duke
parents:
diff changeset
   248
    SKIP_COMPARE_IMAGES = true
fd16c54261b3 Initial load
duke
parents:
diff changeset
   249
  endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   250
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   251
fd16c54261b3 Initial load
duke
parents:
diff changeset
   252
# Select defaults if these are not set to true or false
fd16c54261b3 Initial load
duke
parents:
diff changeset
   253
ifndef SKIP_DEBUG_BUILD
fd16c54261b3 Initial load
duke
parents:
diff changeset
   254
  SKIP_DEBUG_BUILD=true
fd16c54261b3 Initial load
duke
parents:
diff changeset
   255
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   256
ifndef SKIP_FASTDEBUG_BUILD
8055
7c023d700f09 7014634: By default, only build the product bits with a closed jdk build (like openjdk does)
ohair
parents: 7873
diff changeset
   257
  SKIP_FASTDEBUG_BUILD=true
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
   258
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   259
4309
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   260
# Select javadoc setting GENERATE_DOCS
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   261
ifndef NO_DOCS
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   262
  # Default value (we want javadoc run)
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   263
  GENERATE_DOCS=true
4557
06b5b429d9f5 6914986: Make sure openjdk doc generation not turned off with JDK_UPDATE_VERSION
andrew
parents: 4309
diff changeset
   264
  # No DOCS build when JDK_UPDATE_VERSION set on non-OPENJDK builds
06b5b429d9f5 6914986: Make sure openjdk doc generation not turned off with JDK_UPDATE_VERSION
andrew
parents: 4309
diff changeset
   265
  ifndef OPENJDK
06b5b429d9f5 6914986: Make sure openjdk doc generation not turned off with JDK_UPDATE_VERSION
andrew
parents: 4309
diff changeset
   266
    ifdef JDK_UPDATE_VERSION
06b5b429d9f5 6914986: Make sure openjdk doc generation not turned off with JDK_UPDATE_VERSION
andrew
parents: 4309
diff changeset
   267
      GENERATE_DOCS=false
06b5b429d9f5 6914986: Make sure openjdk doc generation not turned off with JDK_UPDATE_VERSION
andrew
parents: 4309
diff changeset
   268
    endif
4309
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   269
  endif
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   270
  # If langtools, corba, jaxp, and jaxws are not being built, 
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   271
  #   a full jdk javadoc is not possible
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   272
  ifneq ($(BUILD_LANGTOOLS), true)
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   273
    GENERATE_DOCS=false
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   274
  endif
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   275
  ifneq ($(BUILD_CORBA), true)
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   276
    GENERATE_DOCS=false
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   277
  endif
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   278
  ifneq ($(BUILD_JAXP), true)
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   279
    GENERATE_DOCS=false
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   280
  endif
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   281
  ifneq ($(BUILD_JAXWS), true)
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   282
    GENERATE_DOCS=false
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   283
  endif
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   284
  ifeq ($(GENERATE_DOCS),false)
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   285
    NO_DOCS=true
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   286
  endif
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   287
else
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   288
  GENERATE_DOCS=false
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   289
endif
39ca605f0647 6727046: Add message when docs are skipped in control build
ohair
parents: 3789
diff changeset
   290
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
   291
# Output directory for hotspot build
fd16c54261b3 Initial load
duke
parents:
diff changeset
   292
HOTSPOT_DIR = $(ABS_OUTPUTDIR)/hotspot
fd16c54261b3 Initial load
duke
parents:
diff changeset
   293
fd16c54261b3 Initial load
duke
parents:
diff changeset
   294
# If we are building components
fd16c54261b3 Initial load
duke
parents:
diff changeset
   295
ifndef ALT_LANGTOOLS_DIST
fd16c54261b3 Initial load
duke
parents:
diff changeset
   296
  LANGTOOLS_OUTPUTDIR = $(ABS_OUTPUTDIR)/langtools
fd16c54261b3 Initial load
duke
parents:
diff changeset
   297
  ABS_LANGTOOLS_DIST = $(LANGTOOLS_OUTPUTDIR)/dist
fd16c54261b3 Initial load
duke
parents:
diff changeset
   298
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   299
ifndef ALT_CORBA_DIST
fd16c54261b3 Initial load
duke
parents:
diff changeset
   300
  CORBA_OUTPUTDIR = $(ABS_OUTPUTDIR)/corba
fd16c54261b3 Initial load
duke
parents:
diff changeset
   301
  ABS_CORBA_DIST = $(CORBA_OUTPUTDIR)/dist
fd16c54261b3 Initial load
duke
parents:
diff changeset
   302
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   303
ifndef ALT_JAXP_DIST
fd16c54261b3 Initial load
duke
parents:
diff changeset
   304
  JAXP_OUTPUTDIR = $(ABS_OUTPUTDIR)/jaxp
fd16c54261b3 Initial load
duke
parents:
diff changeset
   305
  ABS_JAXP_DIST = $(JAXP_OUTPUTDIR)/dist
fd16c54261b3 Initial load
duke
parents:
diff changeset
   306
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   307
ifndef ALT_JAXWS_DIST
fd16c54261b3 Initial load
duke
parents:
diff changeset
   308
  JAXWS_OUTPUTDIR = $(ABS_OUTPUTDIR)/jaxws
fd16c54261b3 Initial load
duke
parents:
diff changeset
   309
  ABS_JAXWS_DIST = $(JAXWS_OUTPUTDIR)/dist
fd16c54261b3 Initial load
duke
parents:
diff changeset
   310
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   311
fd16c54261b3 Initial load
duke
parents:
diff changeset
   312
# Common make arguments (supplied to all component builds)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   313
COMMON_BUILD_ARGUMENTS = \
fd16c54261b3 Initial load
duke
parents:
diff changeset
   314
    JDK_TOPDIR=$(ABS_JDK_TOPDIR) \
fd16c54261b3 Initial load
duke
parents:
diff changeset
   315
    JDK_MAKE_SHARED_DIR=$(ABS_JDK_TOPDIR)/make/common/shared \
fd16c54261b3 Initial load
duke
parents:
diff changeset
   316
    EXTERNALSANITYCONTROL=true \
2905
4fa83b3a1b96 6827026: Change javac source and target default to 7
jjg
parents: 2099
diff changeset
   317
    SOURCE_LANGUAGE_VERSION=$(SOURCE_LANGUAGE_VERSION) \
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
   318
    TARGET_CLASS_VERSION=$(TARGET_CLASS_VERSION) \
fd16c54261b3 Initial load
duke
parents:
diff changeset
   319
    MILESTONE=$(MILESTONE) \
fd16c54261b3 Initial load
duke
parents:
diff changeset
   320
    BUILD_NUMBER=$(BUILD_NUMBER) \
fd16c54261b3 Initial load
duke
parents:
diff changeset
   321
    JDK_BUILD_NUMBER=$(JDK_BUILD_NUMBER) \
fd16c54261b3 Initial load
duke
parents:
diff changeset
   322
    FULL_VERSION=$(FULL_VERSION) \
fd16c54261b3 Initial load
duke
parents:
diff changeset
   323
    PREVIOUS_JDK_VERSION=$(PREVIOUS_JDK_VERSION) \
fd16c54261b3 Initial load
duke
parents:
diff changeset
   324
    JDK_VERSION=$(JDK_VERSION) \
fd16c54261b3 Initial load
duke
parents:
diff changeset
   325
    JDK_MKTG_VERSION=$(JDK_MKTG_VERSION) \
fd16c54261b3 Initial load
duke
parents:
diff changeset
   326
    JDK_MAJOR_VERSION=$(JDK_MAJOR_VERSION) \
fd16c54261b3 Initial load
duke
parents:
diff changeset
   327
    JDK_MINOR_VERSION=$(JDK_MINOR_VERSION) \
575
8ad8d219b074 6710904: COMMON_BUILD_ARGUMENTS needs PREVIOUS_..._VERSION settings
martin
parents: 19
diff changeset
   328
    JDK_MICRO_VERSION=$(JDK_MICRO_VERSION) \
8ad8d219b074 6710904: COMMON_BUILD_ARGUMENTS needs PREVIOUS_..._VERSION settings
martin
parents: 19
diff changeset
   329
    PREVIOUS_MAJOR_VERSION=$(PREVIOUS_MAJOR_VERSION) \
8ad8d219b074 6710904: COMMON_BUILD_ARGUMENTS needs PREVIOUS_..._VERSION settings
martin
parents: 19
diff changeset
   330
    PREVIOUS_MINOR_VERSION=$(PREVIOUS_MINOR_VERSION) \
8ad8d219b074 6710904: COMMON_BUILD_ARGUMENTS needs PREVIOUS_..._VERSION settings
martin
parents: 19
diff changeset
   331
    PREVIOUS_MICRO_VERSION=$(PREVIOUS_MICRO_VERSION)
0
fd16c54261b3 Initial load
duke
parents:
diff changeset
   332
fd16c54261b3 Initial load
duke
parents:
diff changeset
   333
ifdef ARCH_DATA_MODEL
fd16c54261b3 Initial load
duke
parents:
diff changeset
   334
  COMMON_BUILD_ARGUMENTS += ARCH_DATA_MODEL=$(ARCH_DATA_MODEL)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   335
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   336
fd16c54261b3 Initial load
duke
parents:
diff changeset
   337
ifeq ($(DEBUG_NAME), debug)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   338
  COMMON_BUILD_ARGUMENTS += VARIANT=DBG DEBUG_CLASSFILES=true
fd16c54261b3 Initial load
duke
parents:
diff changeset
   339
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   340
fd16c54261b3 Initial load
duke
parents:
diff changeset
   341
ifeq ($(DEBUG_NAME), fastdebug)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   342
  COMMON_BUILD_ARGUMENTS += VARIANT=DBG FASTDEBUG=true DEBUG_CLASSFILES=true
fd16c54261b3 Initial load
duke
parents:
diff changeset
   343
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   344
fd16c54261b3 Initial load
duke
parents:
diff changeset
   345
ifdef COOKED_JDK_UPDATE_VERSION
fd16c54261b3 Initial load
duke
parents:
diff changeset
   346
  COMMON_BUILD_ARGUMENTS += COOKED_JDK_UPDATE_VERSION=$(COOKED_JDK_UPDATE_VERSION)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   347
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   348
fd16c54261b3 Initial load
duke
parents:
diff changeset
   349
ifdef COOKED_BUILD_NUMBER
fd16c54261b3 Initial load
duke
parents:
diff changeset
   350
  COMMON_BUILD_ARGUMENTS += COOKED_BUILD_NUMBER=$(COOKED_BUILD_NUMBER)
fd16c54261b3 Initial load
duke
parents:
diff changeset
   351
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   352
fd16c54261b3 Initial load
duke
parents:
diff changeset
   353
ifdef ANT_HOME
fd16c54261b3 Initial load
duke
parents:
diff changeset
   354
  COMMON_BUILD_ARGUMENTS += ANT_HOME="$(ANT_HOME)"
fd16c54261b3 Initial load
duke
parents:
diff changeset
   355
endif
fd16c54261b3 Initial load
duke
parents:
diff changeset
   356