Makefile revision 6117
1N/A# Copyright (c) 1995, 2012, Oracle and/or its affiliates. All rights reserved. 1N/A# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 1N/A# This code is free software; you can redistribute it and/or modify it 1N/A# under the terms of the GNU General Public License version 2 only, as 1N/A# published by the Free Software Foundation. Oracle designates this 1N/A# particular file as subject to the "Classpath" exception as provided 1N/A# by Oracle in the LICENSE file that accompanied this code. 1N/A# This code is distributed in the hope that it will be useful, but WITHOUT 1N/A# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 1N/A# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 1N/A# version 2 for more details (a copy is included in the LICENSE file that 1N/A# accompanied this code). 1N/A# You should have received a copy of the GNU General Public License version 1N/A# 2 along with this work; if not, write to the Free Software Foundation, 1N/A# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 1N/A# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 1N/A# Makefile to run various jdk tests 1N/A# Empty these to get rid of some default rules 1N/A# Get OS name from uname 1N/A# Commands to run on paths to make mixed paths for java on windows 1N/A# Location of developer shared files 1N/A# Platform specific settings 1N/A # Check for unknown arch, try uname -p if uname -m says unknown 1N/A # Check for unknown arch, try uname -p if uname -m says unknown 1N/A # GNU Make or MKS overrides $(PROCESSOR_ARCHITECTURE) to always 1N/A # return "x86". Use the first word of $(PROCESSOR_IDENTIFIER) instead. 1N/A # These need to be different depending on MKS or CYGWIN 1N/A# Only want major and minor numbers from os version 1N/A# Name to use for x86_64 arch (historically amd64, but should change someday) 1N/A#OS_ARCH_X64_NAME:=x64 1N/A# Alternate arch names (in case this arch is known by a second name) 1N/A# PROBLEM_LISTS may use either name. 1N/A# Try and use the arch names consistently 1N/A# Default ARCH_DATA_MODEL settings 1N/A# If ARCH_DATA_MODEL is not defined, try and pick a reasonable default 1N/A# Platform directory name 1N/A# Check ARCH_DATA_MODEL, adjust OS_ARCH accordingly on solaris 1N/A# Alternate OS_ARCH name (defaults to OS_ARCH) 1N/A# Root of this test area (important to use full paths in some places) 1N/A# Root of all test results 1N/A# Expect JPRT to set PRODUCT_HOME (the product or jdk in this case to test) 1N/A # Try to use j2sdk-image if it exists 1N/A# Expect JPRT to set JPRT_PRODUCT_ARGS (e.g. -server etc.) 1N/A# Should be passed into 'java' only. 1N/A# Could include: -d64 -server -client OR any java option 1N/A# Expect JPRT to set JPRT_PRODUCT_VM_ARGS (e.g. -Xcomp etc.) 1N/A# Should be passed into anything running the vm (java, javac, javadoc, ...). 1N/A# Check JAVA_ARGS arguments based on ARCH_DATA_MODEL etc. 1N/A# Macro to run make and set the shared library permissions 1N/A# Expect JPRT to set JPRT_ARCHIVE_BUNDLE (path to zip bundle for results) 1N/A# How to create the test bundle (pass or fail, we want to create this) 1N/A# Follow command with ";$(BUNDLE_UP_AND_EXIT)", so it always gets executed. 1N/A $(ECHO) "ERROR: EXITCODE file not filled in."; \
1N/A $(ECHO) "EXIT CODE: $${testExitCode}"; \
1N/A if [ -r "$${_summary}" ] ; then \ 1N/A $(ECHO) "TEST STATS: name=$(UNIQUE_DIR) run=$${runc} pass=$${passc} fail=$${failc} excluded=$${exclc}" \ 1N/A################################################################ 1N/A# Default make rule (runs jtreg_tests) 1N/A @
$(ECHO) "Testing completed successfully" 1N/A################################################################ 1N/A# Expect JT_HOME to be set for jtreg tests. (home for jtreg) 1N/A# Expect JPRT to set TESTDIRS to the jtreg test dirs 1N/A# Agentvm settings (default is false) 1N/A# With agentvm, you cannot use -javaoptions? 1N/A# Some tests annoy me and fail frequently 1N/A# Create exclude list for this platform and arch 1N/A# Select list of directories that exist 1N/A# Running batches of tests with or without agentvm 1N/A$(ECHO) "Running tests in agentvm mode: $?" 1N/A$(ECHO) "Running tests in othervm mode: $?" 1N/A$(ECHO) "########################################################" 1N/A$(ECHO) "########################################################" 1N/A# ------------------------------------------------------------------ 1N/A# Batches of tests (somewhat arbitrary assigments to jdk_* targets) 1N/A# Stable othervm testruns (minus items from PROBLEM_LIST) 1N/A# Using samevm has problems, and doesn't help performance as much as others. 1N/A# Stable samevm testruns (minus items from PROBLEM_LIST) 1N/A# Stable othervm testruns (minus items from PROBLEM_LIST) 1N/A# Using samevm has serious problems with these tests 1N/A# Stable othervm testruns (minus items from PROBLEM_LIST) 1N/A# Using agentvm has serious problems with these tests 1N/A# Stable agentvm testruns (minus items from PROBLEM_LIST) 1N/A# Stable othervm testruns (minus items from PROBLEM_LIST) 1N/A# Using agentvm has serious problems with these tests 1N/A# Stable agentvm testruns (minus items from PROBLEM_LIST) 1N/A# Stable othervm testruns (minus items from PROBLEM_LIST) 1N/A# Using agentvm has serious problems with these tests 1N/A# Stable othervm testruns (minus items from PROBLEM_LIST) 1N/A# Using agentvm has serious problems with these tests 1N/A# Stable samevm testruns (minus items from PROBLEM_LIST) # Stable samevm testruns (minus items from PROBLEM_LIST) # Stable samevm testruns (minus items from PROBLEM_LIST) # Stable samevm testruns (minus items from PROBLEM_LIST) # Stable samevm testruns (minus items from PROBLEM_LIST) # Stable othervm testruns (minus items from PROBLEM_LIST) # Using samevm has serious problems with these tests # Stable samevm testruns (minus items from PROBLEM_LIST) # Stable othervm testruns (minus items from PROBLEM_LIST) # Using samevm has serious problems with these tests # Stable othervm testruns (minus items from PROBLEM_LIST) # Using samevm has serious problems with these tests # Stable samevm testruns (minus items from PROBLEM_LIST) # Stable othervm testruns (minus items from PROBLEM_LIST) # Using samevm has problems, and doesn't help performance as much as others. # Stable samevm testruns (minus items from PROBLEM_LIST) # Stable samevm testruns (minus items from PROBLEM_LIST) # Stable othervm testruns (minus items from PROBLEM_LIST) # Using samevm has serious problems with these tests # Stable samevm testruns (minus items from PROBLEM_LIST) # ------------------------------------------------------------------ # These are all phony targets # ------------------------------------------------------------------ # Default JTREG to run (win32 script works for everybody) # Add any extra options (agentvm etc.) # Only run automatic tests # Always turn on assertions # Report details on all failed or error tests, times too # Retain all files for failing tests # Ignore tests are not run and completely silent about it # Multiple by 4 the timeout numbers # Boost the max memory for jtreg to avoid gc thrashing |
$(SED) -e
's@^@Excluding: @'# Rule that may change execute permissions on shared library files. # Files in repositories should never have execute permissions, but there # are some tests that have pre-built shared libraries, and these windows # dll files must have execute permission. Adding execute permission # may happen automatically on windows when using certain versions of mercurial # but it cannot be guaranteed. And blindly adding execute permission might # be seen as a mercurial 'change', so we avoid adding execute permission to # repository files. But testing from a plain source tree needs the chmod a+rx. # Used on select directories and applying the chmod to all shared libraries # not just dll files. On windows, this may not work with MKS if the files # were installed with CYGWIN unzip or untar (MKS chmod may not do anything). # And with CYGWIN and sshd service, you may need CYGWIN=ntsec for this to work. ################################################################ # Expect JPRT to set JPRT_PACKTEST_HOME. ################################################################ # perftest to collect statistics # Expect JPRT to set JPRT_PACKTEST_HOME. ################################################################ # Expect JPRT to set JPRT_VMSQE_HOME. # Expect JPRT to set JPRT_RUNVMSQE_HOME. # Expect JPRT to set JPRT_TONGA3_HOME. ################################################################ # Default is to use jck 7 from /java/re # Expect JPRT to set JPRT_JCK7COMPILER_HOME. # Expect JPRT to set JPRT_JCK7RUNTIME_HOME. # Expect JPRT to set JPRT_JCK7DEVTOOLS_HOME. # The jtjck.jar utility to use to run the tests # Generic rule used to run jck tests |
$(SED) -e
's@^@Excluding: @'# Run all 3 sets of JCK7 tests ################################################################ # Phony targets (e.g. these are not filenames) ################################################################