8166365: Small immutable collections should provide optimized implementations when possible
Reviewed-by: smarks, psandoz, attila
#
# Copyright (c) 2006, 2016, 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.
#
##############
#
# Global settings
#
# Install test bundle for targets in jprt.test.bundle.targets set
jprt.selective.test.bundle.installation=true
# The current release name
jprt.tools.default.release=jdk9
# Allow concurrent changes to be merged in prior to pushing
jprt.sync.push=true
# Directories to be excluded from the source bundles
jprt.bundle.exclude.src.dirs=build dist webrev
# Use configure when building
jprt.build.use.configure=true
jprt.build.use.jib=true
jprt.test.use.jib=true
jprt.jib.launcher=common/bin/jib.sh
jprt.build.use.jib.publish=true
# Clear out all the build needs as JIB handles this
jprt.jdk9.build.needs=
jprt.macosx.jdk9.build.needs=
jprt.windows_i586.jdk9.build.needs=
jprt.windows_x64.jdk9.build.needs=
jprt.solaris.jdk9.build.needs=
jprt.linux_i586.jdk9.build.needs=
jprt.linux_x64.jdk9.build.needs=
jprt.linux_armv6.jdk9.build.needs=
jprt.linux_armvh.jdk9.build.needs=
jprt.linux_arm64.jdk9.build.needs=
jprt.linux_armsflt.jdk9.build.needs=
jprt.linux_armvfpsflt.jdk9.build.needs=
jprt.linux_armvfphflt.jdk9.build.needs=
jprt.linux_armv6vfphflt.jdk9.build.needs=
jprt.solaris.client.build.needs=
jprt.linux.client.build.needs=
jprt.solaris.jdk9.compiler=
jprt.linux.jdk9.compiler=
jprt.jdk9.test.needs=
# Disable the need for preinstalled Visual Studio and Xcode
jprt.windows.jdk9.compiler=
jprt.windows.6.2.jdk9.compiler=
jprt.windows.6.3.jdk9.compiler=
jprt.windows.jdk9.target.attribute.compilerVS2013.appliesTo.builds=none
jprt.macosx.jdk9.target.attribute.compilerXcode511.appliesTo.builds=none
# Set up the run flavors (jvm variants)
jprt.run.flavors=c2,default,${my.additional.run.flavors}
# Setup jib profiles
jprt.linux_i586.product.build.jib.profile=linux-x86
jprt.linux_x64.product.build.jib.profile=linux-x64
jprt.macosx_x64.product.build.jib.profile=macosx-x64
jprt.solaris_sparcv9.product.build.jib.profile=solaris-sparcv9
jprt.solaris_x64.product.build.jib.profile=solaris-x64
jprt.windows_i586.product.build.jib.profile=windows-x86
jprt.windows_x64.product.build.jib.profile=windows-x64
jprt.linux_i586.fastdebug.build.jib.profile=linux-x86-debug
jprt.linux_x64.fastdebug.build.jib.profile=linux-x64-debug
jprt.macosx_x64.fastdebug.build.jib.profile=macosx-x64-debug
jprt.solaris_sparcv9.fastdebug.build.jib.profile=solaris-sparcv9-debug
jprt.solaris_x64.fastdebug.build.jib.profile=solaris-x64-debug
jprt.windows_i586.fastdebug.build.jib.profile=windows-x86-debug
jprt.windows_x64.fastdebug.build.jib.profile=windows-x64-debug
jprt.linux_i586.slowdebug.build.jib.profile=linux-x86-slowdebug
jprt.linux_x64.slowdebug.build.jib.profile=linux-x64-slowdebug
jprt.macosx_x64.slowdebug.build.jib.profile=macosx-x64-slowdebug
jprt.solaris_sparcv9.slowdebug.build.jib.profile=solaris-sparcv9-slowdebug
jprt.solaris_x64.slowdebug.build.jib.profile=solaris-x64-slowdebug
jprt.windows_i586.slowdebug.build.jib.profile=windows-x86-slowdebug
jprt.windows_x64.slowdebug.build.jib.profile=windows-x64-slowdebug
jprt.linux_i586.productOpen.build.jib.profile=linux-x86-open
jprt.linux_x64.productOpen.build.jib.profile=linux-x64-open
jprt.macosx_x64.productOpen.build.jib.profile=macosx-x64-open
jprt.solaris_sparcv9.productOpen.build.jib.profile=solaris-sparcv9-open
jprt.solaris_x64.productOpen.build.jib.profile=solaris-x64-open
jprt.windows_i586.productOpen.build.jib.profile=windows-x86-open
jprt.windows_x64.productOpen.build.jib.profile=windows-x64-open
jprt.linux_i586.fastdebugOpen.build.jib.profile=linux-x86-open-debug
jprt.linux_x64.fastdebugOpen.build.jib.profile=linux-x64-open-debug
jprt.macosx_x64.fastdebugOpen.build.jib.profile=macosx-x64-open-debug
jprt.solaris_sparcv9.fastdebugOpen.build.jib.profile=solaris-sparcv9-open-debug
jprt.solaris_x64.fastdebugOpen.build.jib.profile=solaris-x64-open-debug
jprt.windows_i586.fastdebugOpen.build.jib.profile=windows-x86-open-debug
jprt.windows_x64.fastdebugOpen.build.jib.profile=windows-x64-open-debug
jprt.linux_i586.productZero.build.jib.profile=linux-x86-zero
jprt.linux_x64.productZero.build.jib.profile=linux-x64-zero
jprt.linux_i586.fastdebugZero.build.jib.profile=linux-x86-zero-debug
jprt.linux_x64.fastdebugZero.build.jib.profile=linux-x64-zero-debug
jprt.test.jib.profile=run-test-jprt
# Set make target to use for different build flavors
jprt.build.flavor.fastdebugOpen.target=jprt_bundle
jprt.build.flavor.fastdebug.target=jprt_bundle
jprt.build.flavor.product.target=jprt_bundle
jprt.build.flavor.productOpen.target=jprt_bundle
jprt.build.flavor.optimized.target=jprt_bundle
jprt.build.flavor.optimizedOpen.target=jprt_bundle
jprt.build.flavor.slowdebug.target=jprt_bundle
jprt.build.flavor.productZero.target=jprt_bundle
jprt.build.flavor.fastdebugZero.target=jprt_bundle
# Use these configure args to define debug level or provide specific
# configuration details not covered by Jib profiles.
jprt.slowdebug.build.configure.args=
jprt.fastdebug.build.configure.args=--disable-precompiled-headers
# Don't disable precompiled headers on windows. It's simply too slow.
jprt.windows_i586.fastdebug.build.configure.args=
jprt.windows_x64.fastdebug.build.configure.args=
jprt.windows_i586.fastdebugOpen.build.configure.args=
jprt.windows_x64.fastdebugOpen.build.configure.args=
jprt.product.build.configure.args=
jprt.optimized.build.configure.args=--with-debug-level=optimized
jprt.slowdebugOpen.build.configure.args=${jprt.slowdebug.build.configure.args}
jprt.fastdebugOpen.build.configure.args=${jprt.fastdebug.build.configure.args}
jprt.productOpen.build.configure.args=${jprt.product.build.configure.args}
jprt.optimizedOpen.build.configure.args=${jprt.product.build.configure.args}
# hotspot testset has custom build flavors and build targets
my.jprt.testsetHasCustomBuildFlavors.hotspot=true
my.jprt.testsetHasCustomBuildTargets.hotspot=true
my.jprt.testsetHasCustomBuildFlavors.buildinfra=true
my.jprt.testsetHasCustomBuildTargets.buildinfra=true
# determine if the specified testset has custom build flavors or build targets
my.jprt.testsetHasCustomBuildFlavors=${my.jprt.testsetHasCustomBuildFlavors.${jprt.test.set}}
my.jprt.testsetHasCustomBuildTargets=${my.jprt.testsetHasCustomBuildTargets.${jprt.test.set}}
# Select build flavors and build targets based on the specified testset
jprt.build.flavors=${my.jprt.testsetHasCustomBuildFlavors ? \
${my.build.flavors.${jprt.test.set}} : ${my.build.flavors.default}}
jprt.build.targets=${my.jprt.testsetHasCustomBuildTargets ? \
${my.build.targets.${jprt.test.set}} : ${my.build.targets.default}}
# Select test targets - jprt default for jprt.test.set is "default"
jprt.test.targets=${my.test.targets.${jprt.test.set}}
jprt.make.rule.test.targets=${my.make.rule.test.targets.${jprt.test.set}}
jprt.test.bundle.targets=${my.jprt.test.bundle.targets.${jprt.test.set}}
# 7155453: Work-around to prevent popups on OSX from blocking test completion
# but the work-around is added to all platforms to be consistent
jprt.jbb.options=-Djava.awt.headless=true
########
#
# Build options (generic)
#
# Configure args common to all builds
# Also allows for additional, testset specific configure arguments to be set
jprt.build.configure.args= \
--with-output-sync=recurse \
--with-jobs=$ALT_PARALLEL_COMPILE_JOBS \
--with-version-opt=$JPRT_JOB_ID \
${my.additional.build.configure.args.${jprt.test.set}} \
${my.custom.build.configure.args}
########
#
# Build targets and options (default/jdk)
#
# The default build flavors
my.build.flavors.default=fastdebug,product
# Standard list of jprt build targets for this source tree
my.build.targets.default= \
solaris_sparcv9_5.11-{product|fastdebug}, \
solaris_x64_5.11-{product|fastdebug}, \
linux_i586_3.8-{product|fastdebug}, \
linux_x64_3.8-{product|fastdebug}, \
macosx_x64_10.9-{product|fastdebug}, \
windows_i586_6.3-{product|fastdebug}, \
windows_x64_6.3-{product|fastdebug}, \
${my.additional.build.targets.default}
# Test target list (no fastdebug & limited c2 testing)
my.test.target.set= \
solaris_sparcv9_5.11-product-c2-TESTNAME, \
solaris_x64_5.11-product-c2-TESTNAME, \
linux_i586_3.8-product-c2-TESTNAME, \
linux_x64_3.8-product-c2-TESTNAME, \
macosx_x64_10.9-product-c2-TESTNAME, \
windows_i586_6.3-product-c2-TESTNAME, \
windows_x64_6.3-product-c2-TESTNAME
# Default vm test targets (testset=default)
my.test.targets.default= \
${my.test.target.set:TESTNAME=jvm98}, \
${my.test.target.set:TESTNAME=scimark}
# Default jdk test targets (testset=default)
my.make.rule.test.targets.default= \
${my.test.target.set:TESTNAME=langtools_jtreg}, \
${my.test.target.set:TESTNAME=jdk_lang}, \
${my.test.target.set:TESTNAME=jdk_math}, \
${my.test.target.set:TESTNAME=jdk_util}
# Default vm test targets (testset=core)
my.test.targets.core=
# Core jdk test targets (testset=core)
my.make.rule.test.targets.core= \
${my.test.target.set:TESTNAME=jdk_lang}, \
${my.test.target.set:TESTNAME=jdk_math}, \
${my.test.target.set:TESTNAME=jdk_util}, \
${my.test.target.set:TESTNAME=jdk_io}, \
${my.test.target.set:TESTNAME=jdk_net}, \
${my.test.target.set:TESTNAME=jdk_nio}, \
${my.test.target.set:TESTNAME=jdk_security1}, \
${my.test.target.set:TESTNAME=jdk_security2}, \
${my.test.target.set:TESTNAME=jdk_security3}, \
${my.test.target.set:TESTNAME=jdk_security4}, \
${my.test.target.set:TESTNAME=jdk_rmi}, \
${my.test.target.set:TESTNAME=jdk_text}, \
${my.test.target.set:TESTNAME=jdk_time}, \
${my.test.target.set:TESTNAME=jdk_other}, \
${my.test.target.set:TESTNAME=core_tools}
# Svc vm test targets (testset=svc)
my.test.targets.svc=
# Core jdk test targets (testset=svc)
my.make.rule.test.targets.svc= \
${my.test.target.set:TESTNAME=jdk_management}, \
${my.test.target.set:TESTNAME=jdk_instrument}, \
${my.test.target.set:TESTNAME=jdk_jmx}, \
${my.test.target.set:TESTNAME=jdk_jdi}, \
${my.test.target.set:TESTNAME=svc_tools}, \
${my.make.rule.test.targets.svc.extra}
# JAXP vm test targets (testset=jaxp)
my.test.targets.jaxp=
# JAXP test targets (testset=jaxp)
my.make.rule.test.targets.jaxp= \
${my.test.target.set:TESTNAME=jaxp_all}
# All vm test targets (testset=all)
my.test.targets.all= \
${my.test.targets.default}, \
${my.test.target.set:TESTNAME=runThese}, \
${my.test.target.set:TESTNAME=jbb_default}
# All jdk test targets (testset=all)
my.make.rule.test.targets.all= \
${my.make.rule.test.targets.core}, \
${my.make.rule.test.targets.svc}, \
${my.test.target.set:TESTNAME=jdk_awt}, \
${my.test.target.set:TESTNAME=jdk_beans}, \
${my.test.target.set:TESTNAME=jdk_sound}, \
${my.test.target.set:TESTNAME=jdk_swing}
# PIT vm test targets (testset=pit)
my.test.targets.pit= \
${my.test.targets.all}
# PIT jdk test targets (testset=pit)
my.make.rule.test.targets.pit= \
${my.test.target.set:TESTNAME=langtools_jtreg}, \
${my.make.rule.test.targets.core}, \
${my.make.rule.test.targets.svc} \
${my.make.rule.test.targets.jaxp}
# JCK test targets in test/Makefile (no windows)
my.test.target.set.jck= \
solaris_sparcv9_5.11-product-c2-JCK7TESTRULE, \
solaris_x64_5.11-product-c2-JCK7TESTRULE, \
linux_i586_3.8-product-c2-JCK7TESTRULE, \
linux_x64_3.8-product-c2-JCK7TESTRULE
# JCK testset targets
my.make.rule.test.targets.jck= \
${my.test.target.set.jck:JCK7TESTRULE=jck7devtools}, \
${my.test.target.set.jck:JCK7TESTRULE=jck7runtime}, \
${my.test.target.set.jck:JCK7TESTRULE=jck7compiler}
#############
#
# Hotspot related settings (testset=hotspot)
#
# The hotspot build flavors
my.build.flavors.hotspot= \
fastdebugOpen,fastdebug,product,productOpen,optimized,optimizedOpen \
${my.additional.build.flavors.hotspot}
# Platforms built for hotspot push jobs
my.build.targets.hotspot= \
solaris_sparcv9_5.11-{product|fastdebug}, \
solaris_x64_5.11-{product|fastdebug}, \
linux_i586_3.8-{product|fastdebug}, \
linux_x64_3.8-{product|fastdebug}, \
macosx_x64_10.9-{product|fastdebug}, \
windows_i586_6.3-{product|fastdebug}, \
windows_x64_6.3-{product|fastdebug}, \
solaris_x64_5.11-{fastdebugOpen}, \
linux_x64_3.8-{productOpen}, \
${my.additional.build.targets.hotspot}
# Tests to run on the various platforms for hotspot push jobs
my.test.targets.hotspot.solaris.sparcv9= \
solaris_sparcv9_5.11-{product|fastdebug}-c2-jvm98, \
solaris_sparcv9_5.11-{product|fastdebug}-c2-jvm98_nontiered, \
solaris_sparcv9_5.11-{product|fastdebug}-c2-scimark, \
solaris_sparcv9_5.11-product-c2-runThese8,
my.test.targets.hotspot.solaris.x64= \
solaris_x64_5.11-{product|fastdebug}-c2-jvm98, \
solaris_x64_5.11-{product|fastdebug}-c2-jvm98_nontiered, \
solaris_x64_5.11-{product|fastdebug}-c2-scimark, \
solaris_x64_5.11-product-c2-runThese8, \
solaris_x64_5.11-product-c2-runThese8_Xcomp_lang, \
solaris_x64_5.11-product-c2-runThese8_Xcomp_vm,
my.test.targets.hotspot.linux.i586= \
linux_i586_3.8-{product|fastdebug}-c2-jvm98, \
linux_i586_3.8-{product|fastdebug}-c2-jvm98_nontiered, \
linux_i586_3.8-{product|fastdebug}-c2-scimark, \
linux_i586_3.8-fastdebug-c2-runThese8_Xcomp_lang, \
linux_i586_3.8-fastdebug-c2-runThese8_Xcomp_vm
my.test.targets.hotspot.linux.x64= \
linux_x64_3.8-{product|fastdebug}-c2-jvm98, \
linux_x64_3.8-{product|fastdebug}-c2-jvm98_nontiered, \
linux_x64_3.8-{product|fastdebug}-c2-scimark
my.test.targets.hotspot.macosx.x64= \
macosx_x64_10.9-{product|fastdebug}-c2-jvm98, \
macosx_x64_10.9-{product|fastdebug}-c2-jvm98_nontiered, \
macosx_x64_10.9-{product|fastdebug}-c2-scimark
my.test.targets.hotspot.windows.i586= \
windows_i586_6.3-{product|fastdebug}-c2-jvm98, \
windows_i586_6.3-{product|fastdebug}-c2-jvm98_nontiered, \
windows_i586_6.3-{product|fastdebug}-c2-scimark, \
windows_i586_6.3-product-c2-runThese8, \
windows_i586_6.3-product-c2-runThese8_Xcomp_lang, \
windows_i586_6.3-product-c2-runThese8_Xcomp_vm,
my.test.targets.hotspot.windows.x64= \
windows_x64_6.3-{product|fastdebug}-c2-jvm98, \
windows_x64_6.3-{product|fastdebug}-c2-jvm98_nontiered, \
windows_x64_6.3-{product|fastdebug}-c2-scimark, \
windows_x64_6.3-product-c2-runThese8, \
windows_x64_6.3-product-c2-runThese8_Xcomp_lang, \
windows_x64_6.3-product-c2-runThese8_Xcomp_vm,
# Some basic "smoke" tests for OpenJDK builds
my.test.targets.hotspot.open= \
solaris_x64_5.11-{productOpen|fastdebugOpen}-c2-jvm98, \
linux_x64_3.8-{productOpen|fastdebugOpen}-c2-jvm98
# The complete list of test targets for jprt
my.test.targets.hotspot= \
${my.test.targets.hotspot.open}, \
${my.test.targets.hotspot.solaris.sparcv9}, \
${my.test.targets.hotspot.solaris.x64}, \
${my.test.targets.hotspot.linux.i586}, \
${my.test.targets.hotspot.linux.x64}, \
${my.test.targets.hotspot.macosx.x64}, \
${my.test.targets.hotspot.windows.i586}, \
${my.test.targets.hotspot.windows.x64}, \
${my.test.targets.hotspot.solaris.sparcv9}, \
${my.test.targets.hotspot.solaris.x64}, \
${my.test.targets.hotspot.linux.x64}, \
${my.test.targets.hotspot.windows.i586}, \
${my.test.targets.hotspot.windows.x64}, \
${my.additional.test.targets.hotspot}
# Make file based test targets
my.make.rule.test.targets.hotspot.basicvmtests= \
linux_i586_3.8-*-default-hotspot_basicvmtest, \
linux_x64_3.8-*-default-hotspot_basicvmtest, \
macosx_x64_10.9-*-default-hotspot_basicvmtest, \
solaris_sparcv9_5.11-*-default-hotspot_basicvmtest, \
solaris_x64_5.11-*-default-hotspot_basicvmtest, \
windows_i586_6.3-*-default-hotspot_basicvmtest, \
windows_x64_6.3-*-default-hotspot_basicvmtest
my.make.rule.test.targets.hotspot.gtest= \
linux_i586_3.8-*-default-hotspot_gtest, \
linux_x64_3.8-*-default-hotspot_gtest, \
macosx_x64_10.9-*-default-hotspot_gtest, \
solaris_sparcv9_5.11-*-default-hotspot_gtest, \
solaris_x64_5.11-*-default-hotspot_gtest, \
windows_i586_6.3-*-default-hotspot_gtest, \
windows_x64_6.3-*-default-hotspot_gtest, \
${my.additional.make.rule.test.targets.hotspot.gtest}
my.make.rule.test.targets.hotspot.reg.group= \
solaris_sparcv9_5.11-fastdebug-c2-GROUP, \
solaris_x64_5.11-fastdebug-c2-GROUP, \
linux_i586_3.8-fastdebug-c2-GROUP, \
linux_x64_3.8-fastdebug-c2-GROUP, \
macosx_x64_10.9-fastdebug-c2-GROUP, \
windows_i586_6.3-fastdebug-c2-GROUP, \
windows_x64_6.3-fastdebug-c2-GROUP
# Hotspot jtreg tests
my.make.rule.test.targets.hotspot.reg= \
${my.make.rule.test.targets.hotspot.reg.group:GROUP=hotspot_fast_compiler_1}, \
${my.make.rule.test.targets.hotspot.reg.group:GROUP=hotspot_fast_compiler_2}, \
${my.make.rule.test.targets.hotspot.reg.group:GROUP=hotspot_fast_compiler_3}, \
${my.make.rule.test.targets.hotspot.reg.group:GROUP=hotspot_fast_compiler_closed}, \
${my.make.rule.test.targets.hotspot.reg.group:GROUP=hotspot_fast_gc_1}, \
${my.make.rule.test.targets.hotspot.reg.group:GROUP=hotspot_fast_gc_2}, \
${my.make.rule.test.targets.hotspot.reg.group:GROUP=hotspot_fast_gc_closed}, \
${my.make.rule.test.targets.hotspot.reg.group:GROUP=hotspot_fast_gc_gcold}, \
${my.make.rule.test.targets.hotspot.reg.group:GROUP=hotspot_fast_gc_gcbasher}, \
${my.make.rule.test.targets.hotspot.reg.group:GROUP=hotspot_fast_runtime}, \
${my.make.rule.test.targets.hotspot.reg.group:GROUP=hotspot_fast_serviceability}, \
${my.make.rule.test.targets.hotspot.reg.group:GROUP=jdk_svc_sanity}, \
solaris_sparcv9_5.11-product-c2-hotspot_fast_gc_gcbasher, \
solaris_x64_5.11-product-c2-hotspot_fast_gc_gcbasher, \
linux_i586_3.8-product-c2-hotspot_fast_gc_gcbasher, \
linux_x64_3.8-product-c2-hotspot_fast_gc_gcbasher, \
macosx_x64_10.9-product-c2-hotspot_fast_gc_gcbasher, \
windows_i586_6.3-product-c2-hotspot_fast_gc_gcbasher, \
windows_x64_6.3-product-c2-hotspot_fast_gc_gcbasher, \
${my.additional.make.rule.test.targets.hotspot.reg}
# Other Makefile based Hotspot tests
my.make.rule.test.targets.hotspot.other= \
${my.make.rule.test.targets.hotspot.basicvmtests}, \
${my.make.rule.test.targets.hotspot.gtest}, \
${my.additional.make.rule.test.targets.hotspot.other}
# All the makefile based tests to run
my.make.rule.test.targets.hotspot= \
${my.make.rule.test.targets.hotspot.reg} \
${my.make.rule.test.targets.hotspot.other}
# Install the test bundle for the testset hotspot jtreg tests
# (but not for the other Makefile based tests)
my.jprt.test.bundle.targets.hotspot= \
${my.make.rule.test.targets.hotspot.reg}, \
${my.make.rule.test.targets.hotspot.gtest}
# Native jdk and hotspot test targets (testset=nativesanity)
my.make.rule.test.targets.nativesanity= \
${my.test.target.set:TESTNAME=jdk_native_sanity}, \
${my.test.target.set:TESTNAME=hotspot_native_sanity}
# Install the test bundle for the nativesanity jtreg tests
my.jprt.test.bundle.targets.nativesanity=${my.make.rule.test.targets.nativesanity}
################################################################################
# Testset buildinfra
my.build.flavors.buildinfra = \
product,fastdebug,slowdebug,productZero,fastdebugZero \
${my.additional.build.flavors.buildinfra}
# Platforms built for hotspot push jobs
my.build.targets.buildinfra = \
solaris_sparcv9_5.11-{product|fastdebug|slowdebug}, \
solaris_x64_5.11-{product|fastdebug|slowdebug}, \
linux_i586_3.8-{product|fastdebug|slowdebug|productZero|fastdebugZero}, \
linux_x64_3.8-{product|fastdebug|slowdebug|productZero|fastdebugZero}, \
macosx_x64_10.9-{product|fastdebug|slowdebug}, \
windows_i586_6.3-{product|fastdebug|slowdebug}, \
windows_x64_6.3-{product|fastdebug|slowdebug}, \
${my.additional.build.targets.buildinfra}
my.test.targets.buildinfra = \
${my.test.targets.default}, \
${my.test.targets.hotspot}
my.make.rule.test.targets.buildinfra = \
${my.make.rule.test.targets.default}, \
${my.make.rule.test.targets.hotspot}