make/RunTestsPrebuiltSpec.gmk
branchhttp-client-branch
changeset 55973 4d9b002587db
parent 48078 94a38ebbc9bb
child 48406 26b47ea4c77d
child 55967 e2c47e2db0a5
equal deleted inserted replaced
55972:3fe2ae6d97a4 55973:4d9b002587db
       
     1 #
       
     2 # Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
       
     3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
       
     4 #
       
     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.
       
    10 #
       
    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).
       
    16 #
       
    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.
       
    20 #
       
    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
       
    23 # questions.
       
    24 #
       
    25 
       
    26 ################################################################################
       
    27 # Fake minimalistic spec file for RunTestsPrebuilt.gmk.
       
    28 ################################################################################
       
    29 
       
    30 define VerifyVariable
       
    31   ifeq ($$($1), )
       
    32     $$(info Error: Variable $1 is missing, needed by RunTestPrebuiltSpec.gmk)
       
    33     $$(error Cannot continue.)
       
    34   else
       
    35     ifneq ($$(findstring $$(LOG_LEVEL), debug trace), )
       
    36       $$(info Prebuilt variable $1=$$($1))
       
    37     endif
       
    38   endif
       
    39 endef
       
    40 
       
    41 # It is the responsibility of the file including us to have set these up.
       
    42 # Verify that this is correct.
       
    43 $(eval $(call VerifyVariable,SPEC))
       
    44 $(eval $(call VerifyVariable,TOPDIR))
       
    45 $(eval $(call VerifyVariable,OUTPUTDIR))
       
    46 $(eval $(call VerifyVariable,BOOT_JDK))
       
    47 $(eval $(call VerifyVariable,JT_HOME))
       
    48 $(eval $(call VerifyVariable,JDK_IMAGE_DIR))
       
    49 $(eval $(call VerifyVariable,TEST_IMAGE_DIR))
       
    50 $(eval $(call VerifyVariable,MAKE))
       
    51 $(eval $(call VerifyVariable,BASH))
       
    52 
       
    53 ################################################################################
       
    54 # The "human readable" name of this configuration
       
    55 CONF_NAME := run-test-prebuilt
       
    56 
       
    57 # Number of parallel jobs to use for compilation
       
    58 JOBS ?= $(NUM_CORES)
       
    59 TEST_JOBS ?= 0
       
    60 
       
    61 # Use hard-coded values for java flags (one size, fits all!)
       
    62 JAVA_FLAGS := -Duser.language=en -Duser.country=US
       
    63 JAVA_FLAGS_BIG:= -Xms64M -Xmx1600M -XX:ThreadStackSize=1536
       
    64 JAVA_FLAGS_SMALL:= -XX:+UseSerialGC -Xms32M -Xmx512M -XX:TieredStopAtLevel=1
       
    65 BUILD_JAVA_FLAGS := $(JAVA_FLAGS_BIG)
       
    66 
       
    67 ################################################################################
       
    68 # Hard-coded values copied from spec.gmk.in.
       
    69 X:=
       
    70 SPACE:=$(X) $(X)
       
    71 COMMA:=,
       
    72 MAKE_ARGS = $(MAKE_LOG_FLAGS) -r -R -I $(TOPDIR)/make/common SPEC=$(SPEC) \
       
    73     MAKE_LOG_FLAGS="$(MAKE_LOG_FLAGS)" LOG_LEVEL=$(LOG_LEVEL)
       
    74 BASH_ARGS := -o pipefail -e
       
    75 SHELL := $(BASH) $(BASH_ARGS)
       
    76 
       
    77 ################################################################################
       
    78 # Set some reasonable defaults for features
       
    79 DEBUG_LEVEL := release
       
    80 HOTSPOT_DEBUG_LEVEL := release
       
    81 BUILD_GTEST := true
       
    82 BUILD_FAILURE_HANDLER := true
       
    83 
       
    84 ################################################################################
       
    85 # Alias some paths (that should not really be used) to our JDK image under test.
       
    86 SUPPORT_OUTPUTDIR := $(OUTPUTDIR)/support
       
    87 BUILDTOOLS_OUTPUTDIR := $(OUTPUTDIR)/buildtools
       
    88 HOTSPOT_OUTPUTDIR := $(OUTPUTDIR)/hotspot
       
    89 JDK_OUTPUTDIR := $(OUTPUTDIR)/jdk
       
    90 IMAGES_OUTPUTDIR := $(OUTPUTDIR)/images
       
    91 BUNDLES_OUTPUTDIR := $(OUTPUTDIR)/bundles
       
    92 TESTMAKE_OUTPUTDIR := $(OUTPUTDIR)/test-make
       
    93 MAKESUPPORT_OUTPUTDIR := $(OUTPUTDIR)/make-support
       
    94 BUILDJDK_OUTPUTDIR := $(OUTPUTDIR)/buildjdk
       
    95 
       
    96 JRE_IMAGE_DIR := $(JDK_IMAGE_DIR)
       
    97 
       
    98 ################################################################################
       
    99 # Assume build platform is same as target platform
       
   100 OPENJDK_BUILD_OS := $(OPENJDK_TARGET_OS)
       
   101 OPENJDK_BUILD_OS_TYPE := $(OPENJDK_TARGET_OS_TYPE)
       
   102 OPENJDK_BUILD_OS_ENV := $(OPENJDK_TARGET_OS_ENV)
       
   103 
       
   104 OPENJDK_BUILD_CPU := $(OPENJDK_TARGET_CPU)
       
   105 OPENJDK_BUILD_CPU_ARCH := $(OPENJDK_TARGET_CPU_ARCH)
       
   106 OPENJDK_BUILD_CPU_BITS := $(OPENJDK_TARGET_CPU_BITS)
       
   107 OPENJDK_BUILD_CPU_ENDIAN := $(OPENJDK_TARGET_CPU_ENDIAN)
       
   108 
       
   109 ################################################################################
       
   110 # Java executable definitions
       
   111 JAVA_CMD := $(BOOT_JDK)/bin/java
       
   112 JAVAC_CMD := $(BOOT_JDK)/bin/javac
       
   113 JAVAH_CMD := $(BOOT_JDK)/bin/javah
       
   114 JAR_CMD := $(BOOT_JDK)/bin/jar
       
   115 JLINK_CMD := $(JDK_OUTPUTDIR)/bin/jlink
       
   116 JMOD_CMD := $(JDK_OUTPUTDIR)/bin/jmod
       
   117 JARSIGNER_CMD := $(BOOT_JDK)/bin/jarsigner
       
   118 
       
   119 JAVA := $(FIXPATH) $(JAVA_CMD) $(JAVA_FLAGS_BIG) $(JAVA_FLAGS)
       
   120 JAVA_SMALL := $(FIXPATH) $(JAVA_CMD) $(JAVA_FLAGS_SMALL) $(JAVA_FLAGS)
       
   121 JAVA_JAVAC := $(FIXPATH) $(JAVA_CMD) $(JAVA_FLAGS_SMALL) $(JAVA_FLAGS)
       
   122 JAVAC := $(FIXPATH) $(JAVAC_CMD)
       
   123 JAVAH := $(FIXPATH) $(JAVAH_CMD)
       
   124 JAR := $(FIXPATH) $(JAR_CMD)
       
   125 JLINK := $(FIXPATH) $(JLINK_CMD)
       
   126 JMOD := $(FIXPATH) $(JMOD_CMD)
       
   127 JARSIGNER := $(FIXPATH) $(JARSIGNER_CMD)
       
   128 
       
   129 BUILD_JAVA := $(JAVA)
       
   130 ################################################################################
       
   131 # Some common tools. Assume most common name and no path.
       
   132 AWK := awk
       
   133 BASENAME := basename
       
   134 CAT := cat
       
   135 CD := cd
       
   136 CHMOD := chmod
       
   137 CP := cp
       
   138 CUT := cut
       
   139 DATE := date
       
   140 DIFF := diff
       
   141 DIRNAME := dirname
       
   142 FIND := find
       
   143 FIND_DELETE := -delete
       
   144 ECHO := echo
       
   145 EGREP := grep -E
       
   146 FGREP := grep -F
       
   147 GREP := grep
       
   148 GZIP := gzip
       
   149 HEAD := head
       
   150 LS := ls
       
   151 LN := ln
       
   152 MKDIR := mkdir
       
   153 MV := mv
       
   154 NAWK := nawk
       
   155 NICE := nice
       
   156 PATCH := patch
       
   157 PRINTF := printf
       
   158 RM := rm -f
       
   159 RMDIR := rmdir
       
   160 SED := sed
       
   161 SH := sh
       
   162 SORT := sort
       
   163 TAR := tar
       
   164 TAIL := tail
       
   165 TEE := tee
       
   166 TR := tr
       
   167 TOUCH := touch
       
   168 UNIQ := uniq
       
   169 WC := wc
       
   170 XARGS := xargs
       
   171 ZIPEXE := zip
       
   172 UNZIP := unzip
       
   173 EXPR := expr
       
   174 FILE := file
       
   175 HG := hg