2
# Copyright (c) 2017, 2024, Oracle and/or its affiliates. All rights reserved.
3
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5
# This code is free software; you can redistribute it and/or modify it
6
# under the terms of the GNU General Public License version 2 only, as
7
# published by the Free Software Foundation. Oracle designates this
8
# particular file as subject to the "Classpath" exception as provided
9
# by Oracle in the LICENSE file that accompanied this code.
11
# This code is distributed in the hope that it will be useful, but WITHOUT
12
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14
# version 2 for more details (a copy is included in the LICENSE file that
15
# accompanied this code).
17
# You should have received a copy of the GNU General Public License version
18
# 2 along with this work; if not, write to the Free Software Foundation,
19
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
21
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22
# or visit www.oracle.com if you need additional information or have any
26
################################################################################
27
# Fake minimalistic spec file for RunTestsPrebuilt.gmk.
28
################################################################################
30
# Make sure all shell commands are executed with the C locale
35
$$(info Error: Variable $1 is missing, needed by RunTestPrebuiltSpec.gmk)
36
$$(error Cannot continue.)
38
ifneq ($$(findstring $$(LOG_LEVEL), debug trace), )
39
$$(info Prebuilt variable $1=$$($1))
44
# It is the responsibility of the file including us to have set these up.
45
# Verify that this is correct.
46
$(eval $(call VerifyVariable,SPEC))
47
$(eval $(call VerifyVariable,TOPDIR))
48
$(eval $(call VerifyVariable,OUTPUTDIR))
49
$(eval $(call VerifyVariable,BOOT_JDK))
50
$(eval $(call VerifyVariable,JT_HOME))
51
$(eval $(call VerifyVariable,JDK_IMAGE_DIR))
52
$(eval $(call VerifyVariable,TEST_IMAGE_DIR))
53
$(eval $(call VerifyVariable,MAKE))
54
$(eval $(call VerifyVariable,BASH))
56
################################################################################
57
# The "human readable" name of this configuration
58
CONF_NAME := run-test-prebuilt
60
# Number of parallel jobs to use for compilation
64
# Use hard-coded values for java flags (one size, fits all!)
65
JAVA_FLAGS := -Duser.language=en -Duser.country=US
66
JAVA_FLAGS_BIG := -Xms64M -Xmx1600M
67
JAVA_FLAGS_SMALL := -XX:+UseSerialGC -Xms32M -Xmx512M -XX:TieredStopAtLevel=1
68
BUILDJDK_JAVA_FLAGS_SMALL := -Xms32M -Xmx512M -XX:TieredStopAtLevel=1
69
BUILD_JAVA_FLAGS := $(JAVA_FLAGS_BIG)
71
################################################################################
72
# Hard-coded values copied from spec.gmk.in.
76
MAKE_ARGS = $(MAKE_LOG_FLAGS) -r -R -I $(TOPDIR)/make/common SPEC=$(SPEC) \
77
MAKE_LOG_FLAGS="$(MAKE_LOG_FLAGS)" LOG_LEVEL=$(LOG_LEVEL)
78
BASH_ARGS := -o pipefail -e
79
SHELL := $(BASH) $(BASH_ARGS)
81
################################################################################
82
# Set some reasonable defaults for features
84
HOTSPOT_DEBUG_LEVEL := release
85
BUILD_FAILURE_HANDLER := true
87
################################################################################
88
# Alias some paths (that should not really be used) to our JDK image under test.
89
SUPPORT_OUTPUTDIR := $(OUTPUTDIR)/support
90
BUILDTOOLS_OUTPUTDIR := $(OUTPUTDIR)/buildtools
91
HOTSPOT_OUTPUTDIR := $(OUTPUTDIR)/hotspot
92
JDK_OUTPUTDIR := $(OUTPUTDIR)/jdk
93
IMAGES_OUTPUTDIR := $(OUTPUTDIR)/images
94
BUNDLES_OUTPUTDIR := $(OUTPUTDIR)/bundles
95
TESTMAKE_OUTPUTDIR := $(OUTPUTDIR)/test-make
96
MAKESUPPORT_OUTPUTDIR := $(OUTPUTDIR)/make-support
97
BUILDJDK_OUTPUTDIR := $(OUTPUTDIR)/buildjdk
99
JRE_IMAGE_DIR := $(JDK_IMAGE_DIR)
101
################################################################################
102
# Assume build platform is same as target platform
103
OPENJDK_BUILD_OS := $(OPENJDK_TARGET_OS)
104
OPENJDK_BUILD_OS_TYPE := $(OPENJDK_TARGET_OS_TYPE)
105
OPENJDK_BUILD_OS_ENV := $(OPENJDK_TARGET_OS_ENV)
107
OPENJDK_BUILD_CPU := $(OPENJDK_TARGET_CPU)
108
OPENJDK_BUILD_CPU_ARCH := $(OPENJDK_TARGET_CPU_ARCH)
109
OPENJDK_BUILD_CPU_BITS := $(OPENJDK_TARGET_CPU_BITS)
110
OPENJDK_BUILD_CPU_ENDIAN := $(OPENJDK_TARGET_CPU_ENDIAN)
112
################################################################################
113
# Java executable definitions
114
JAVA_CMD := $(BOOT_JDK)/bin/java
115
JAVAC_CMD := $(BOOT_JDK)/bin/javac
116
JAR_CMD := $(BOOT_JDK)/bin/jar
117
JLINK_CMD := $(JDK_OUTPUTDIR)/bin/jlink
118
JMOD_CMD := $(JDK_OUTPUTDIR)/bin/jmod
120
JAVA := $(FIXPATH) $(JAVA_CMD) $(JAVA_FLAGS_BIG) $(JAVA_FLAGS)
121
JAVA_SMALL := $(FIXPATH) $(JAVA_CMD) $(JAVA_FLAGS_SMALL) $(JAVA_FLAGS)
122
JAVAC := $(FIXPATH) $(JAVAC_CMD)
123
JAR := $(FIXPATH) $(JAR_CMD)
124
JLINK := $(FIXPATH) $(JLINK_CMD)
125
JMOD := $(FIXPATH) $(JMOD_CMD)
127
JTREG_JAVA := $(FIXPATH) $(JTREG_JDK)/bin/java $(JAVA_FLAGS_BIG) $(JAVA_FLAGS)
129
BUILD_JAVA := $(JDK_IMAGE_DIR)/bin/JAVA
130
################################################################################
131
# Some common tools. Assume most common name and no path.
143
FIND_DELETE := -delete
176
ifeq ($(OPENJDK_BUILD_OS), windows)