make/RunTestsPrebuiltSpec.gmk
branchihse-testmakefiles-branch
changeset 55881 dbf68259f80e
child 55884 9ee155c19c6a
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/make/RunTestsPrebuiltSpec.gmk	Mon Nov 27 12:23:47 2017 +0100
@@ -0,0 +1,227 @@
+#
+# Copyright (c) 2017, 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.
+#
+
+# Fake minimalistic spec file for RunTestsPrebuilt.gmk.
+
+define VerifyVariable
+  ifeq ($$($1), )
+    $$(info Error: Variable $1 is missing, needed for run-tests-prebuilt)
+    $$(error Cannot continue.)
+  else
+    ifneq ($$(findstring $$(LOG_LEVEL), debug trace), )
+      $$(info Prebuilt variable $1=$$($1))
+    endif
+  endif
+endef
+
+$(eval $(call VerifyVariable,TOPDIR))
+$(eval $(call VerifyVariable,BOOT_JDK))
+$(eval $(call VerifyVariable,OUTPUT_ROOT))
+$(eval $(call VerifyVariable,JDK_IMAGE_DIR))
+$(eval $(call VerifyVariable,TEST_IMAGE_DIR))
+$(eval $(call VerifyVariable,JT_HOME))
+$(eval $(call VerifyVariable,TONGA_JAR))
+
+
+# These are old aliases that have not yet been fully removed
+BUILD_OUTPUT :=  $(OUTPUT_ROOT)
+SRC_ROOT := $(TOPDIR)
+
+# FIXMEs
+
+# verify that we have:
+# MAKE
+# BASH
+
+#SPEC :=
+FIXPATH :=
+CYGPATH := cygpath
+
+
+###FIXME
+# colon or semicolon
+PATH_SEP:=:
+
+
+LOG_LEVEL=info
+#LOG_LEVEL=$(LOG_LEVEL)
+#MAKE_LOG_FLAGS=$(MAKE_LOG_FLAGS)
+
+# The built jdk will run in this target system.
+
+OPENJDK_TARGET_OS:=linux
+OPENJDK_TARGET_OS_TYPE:=unix
+OPENJDK_TARGET_OS_ENV:=linux
+
+OPENJDK_TARGET_CPU:=x86_64
+OPENJDK_TARGET_CPU_ARCH:=x86
+OPENJDK_TARGET_CPU_BITS:=64
+OPENJDK_TARGET_CPU_ENDIAN:=little
+
+#DEBUG_LEVEL:=@DEBUG_LEVEL@
+#HOTSPOT_DEBUG_LEVEL:=@HOTSPOT_DEBUG_LEVEL@
+
+#BUILD_GTEST := @BUILD_GTEST@
+
+### FIXME
+BUILD_FAILURE_HANDLER := true
+
+### FIXME
+# Information about the build system
+NUM_CORES:=16
+MEMORY_SIZE:=28130
+
+## FIXME
+# Number of parallel jobs to use for compilation
+JOBS?=16
+TEST_JOBS?=0
+
+#### custom
+TONGA_JAR := @TONGA_JAR@
+
+################################################################################
+
+
+# SPACE and COMMA are defined in MakeBase.gmk, but they are also used in
+# some definitions here, and are needed if MakeBase.gmk is not included before
+# this file.
+X:=
+SPACE:=$(X) $(X)
+COMMA:=,
+
+# The default make arguments
+MAKE_ARGS = $(MAKE_LOG_FLAGS) -r -R -I $(TOPDIR)/make/common SPEC=$(SPEC) \
+    MAKE_LOG_FLAGS="$(MAKE_LOG_FLAGS)" LOG_LEVEL=$(LOG_LEVEL)
+
+# Override the shell with bash
+BASH_ARGS := -o pipefail -e
+SHELL:=$(BASH) $(BASH_ARGS)
+
+# The "human readable" name of this configuration
+CONF_NAME := run-test-prebuilt
+
+# Assume target platform is same as build platform
+OPENJDK_TARGET_OS := $(OPENJDK_BUILD_OS)
+OPENJDK_TARGET_OS_TYPE := $(OPENJDK_BUILD_OS_TYPE)
+OPENJDK_TARGET_OS_ENV := $(OPENJDK_BUILD_OS_ENV)
+
+OPENJDK_TARGET_CPU := $(OPENJDK_BUILD_CPU)
+OPENJDK_TARGET_CPU_ARCH := $(OPENJDK_BUILD_CPU_ARCH)
+OPENJDK_TARGET_CPU_BITS := $(OPENJDK_BUILD_CPU_BITS)
+OPENJDK_TARGET_CPU_ENDIAN := $(OPENJDK_BUILD_CPU_ENDIAN)
+
+# FIXME: Can we remove this?
+HOTSPOT_TOPDIR:=$(TOPDIR)/hotspot
+
+SUPPORT_OUTPUTDIR := $(OUTPUT_ROOT)/support
+BUILDTOOLS_OUTPUTDIR := $(OUTPUT_ROOT)/buildtools
+
+HOTSPOT_OUTPUTDIR := $(OUTPUT_ROOT)/hotspot
+JDK_OUTPUTDIR := $(OUTPUT_ROOT)/jdk
+IMAGES_OUTPUTDIR := $(OUTPUT_ROOT)/images
+BUNDLES_OUTPUTDIR := $(OUTPUT_ROOT)/bundles
+TESTMAKE_OUTPUTDIR := $(OUTPUT_ROOT)/test-make
+MAKESUPPORT_OUTPUTDIR := $(OUTPUT_ROOT)/make-support
+BUILDJDK_OUTPUTDIR := $(OUTPUT_ROOT)/buildjdk
+
+### FIXME?
+#JAVA_FLAGS:= -Duser.language=en -Duser.country=US
+#JAVA_FLAGS_BIG:= -Xms64M -Xmx1600M -XX:ThreadStackSize=1536
+#JAVA_FLAGS_SMALL:= -XX:+UseSerialGC -Xms32M -Xmx512M -XX:TieredStopAtLevel=1
+#JAVA_FLAGS_JAVAC:= -XX:+UseSerialGC -Xms32M -Xmx512M -XX:TieredStopAtLevel=1
+#JAVA_TOOL_FLAGS_SMALL:= -J-XX:+UseSerialGC -J-Xms32M -J-Xmx512M -J-XX:TieredStopAtLevel=1
+
+JAVA_CMD:=$(BOOT_JDK)/bin/java
+JAVAC_CMD:=$(BOOT_JDK)/bin/javac
+JAVAH_CMD:=$(BOOT_JDK)/bin/javah
+JAR_CMD:=$(BOOT_JDK)/bin/jar
+JLINK_CMD := $(JDK_OUTPUTDIR)/bin/jlink
+JMOD_CMD := $(JDK_OUTPUTDIR)/bin/jmod
+JARSIGNER_CMD:=$(BOOT_JDK)/bin/jarsigner
+
+# These variables are meant to be used. They are defined with = instead of := to make
+# it possible to override only the *_CMD variables.
+JAVA=$(FIXPATH) $(JAVA_CMD) $(JAVA_FLAGS_BIG) $(JAVA_FLAGS)
+JAVA_SMALL=$(FIXPATH) $(JAVA_CMD) $(JAVA_FLAGS_SMALL) $(JAVA_FLAGS)
+JAVA_JAVAC=$(FIXPATH) $(JAVA_CMD) $(JAVA_FLAGS_JAVAC) $(JAVA_FLAGS)
+JAVAC=$(FIXPATH) $(JAVAC_CMD)
+JAVAH=$(FIXPATH) $(JAVAH_CMD)
+JAR=$(FIXPATH) $(JAR_CMD)
+JLINK = $(FIXPATH) $(JLINK_CMD) $(JAVA_TOOL_FLAGS_SMALL)
+JMOD = $(FIXPATH) $(JMOD_CMD) $(JAVA_TOOL_FLAGS_SMALL)
+JARSIGNER=$(FIXPATH) $(JARSIGNER_CMD)
+
+# Tools adhering to a minimal and common standard of posix compliance.
+AWK := awk
+BASENAME := basename
+CAT := cat
+CD := cd
+CHMOD := chmod
+CP := cp
+CUT := cut
+DATE := date
+DIFF := diff
+DIRNAME := dirname
+FIND := find
+FIND_DELETE := -delete
+ECHO := echo
+EGREP := grep -E
+FGREP := grep -F
+GREP := grep
+GZIP := gzip
+HEAD := head
+LS := ls
+LN := ln
+MKDIR := mkdir
+MV := mv
+NAWK := nawk
+NICE := nice
+PATCH := patch
+PRINTF := printf
+RM := rm -f
+RMDIR := rmdir
+SED := sed
+SH := sh
+SORT := sort
+TAR := tar
+TAIL := tail
+TEE := tee
+TR := tr
+TOUCH := touch
+UNIQ := uniq
+WC := wc
+XARGS := xargs
+ZIPEXE := zip
+UNZIP := unzip
+EXPR := expr
+FILE := file
+HG := hg
+
+####################################################
+#
+# Misc
+#
+
+JRE_IMAGE_DIR := $(JDK_IMAGE_DIR)