Makefile revision 559
299N/A# Makefile to run jtreg and other tests 943N/A# Product builds and langtools builds 299N/A# A full product build (or "control" build) creates a complete JDK image. 919N/A# To test a product build, set TESTJAVA to the path for the image. 919N/A# A langtools build just builds the langtools components of a JDK. 919N/A# To test a langtools build, set TESTJAVA to the path for a recent JDK 919N/A# build, and set TESTBOOTCLASSPATH to the compiled langtools classes -- 919N/A# JPRT may invoke this Makefile directly, as part of a langtools build, 970N/A# Root of this test area (important to use full paths in some places) # Default bundle of all test results (passed or not) (JPRT only) # Default JDK for JTREG and JCK # JT_JAVA is the version of java used to run jtreg/JCK. Since it is now # standard to execute tests in sameVM mode, it should normally be set the # same as TESTJAVA (although not necessarily so.) # PRODUCT_HOME is a JPRT variable pointing to a directory containing the output from # For langtools, this is a directory containing build and dist # For a control build, this is build/$(PRODUCT)-$(ARCH)/j2sdk-image ### In the following, -refvmoptions is an undocumented option ### The following does not work JCK 7 b30 2/6/2010. Awaiting b31. # Concurrency is the number of tests that can execute at once. # Supported for JCK, not supported for jtreg. # On an otherwise empty machine, suggest setting to (#cpus + 2) # If unset, the default is (#cpus) ### RFE: determine and use #cpus # JCK is executed using "Multi-JVM Group Mode", which is a hybrid # of otherVM and sameVM modes. New JVMs are created and reused for # a number of tests, then eventually discarded and a new one started. # This amortizes the JVM startup time. The "group size" defines # how many tests are run in a JVM before it is replaced. # If unset, the default is 100. ### The following is not supported. Awaiting RFE 6924287 ### 6924287: Jck4Jdk: Allow to configure test group size for group mode via simple command line option ### JCK_RUNTIME_OPTIONS += \ # Timeouts -- by default, increase test timeouts when running on JPRT # Assertions: some tests show failures when assertions are enabled. # Since javac is typically loaded via the bootclassloader (either via TESTJAVA # or TESTBOOTCLASSPATH), you may need -esa to enable assertions in javac. # jtreg, jck: 0: OK, 1: tests failed, 2: tests error; 3+: SERIOUS # jtdiff: 0: OK, 1: differences found; 2+: SERIOUS # Exit -- used for final "normal" exit from "make". Redefine to "true" to avoid # having make exit with non-zero return code. # Function to exit shell if exit code of preceding command is greater than or equal # to a given level. Redefine function or preceding FATAL_*_EXIT codes as needed. # The test directories to run # Root of all test results # Subdirectories for different test runs # Default make rule -- warning, may take a while @
echo "Testing completed successfully" @
echo "Testing completed successfully" @
echo "Testing completed successfully" @
echo "Testing completed successfully"# for use with JPRT -testrule # Installed location of jtreg # Version of java used to run jtreg. Should normally be the same as TESTJAVA # Version of java to be tested. # Additional options for jtreg # Directories of tests to be run # Where to write the results echo ;
echo "Summary of jtreg test failures" ; \
grep -v
'Not run' |
grep -v
'Passed' ; \
# Check to make sure these directories exist # Installed location of JCK: should include JCK-compiler, and JCK-extras # Version of java used to run JCK. Should normally be the same as TESTJAVA # Version of java to be tested. # Additional options for JCK-compiler # Directories of tests to be run # JCK_COMPILER_OUTPUT_DIR # Where to write the results echo ;
echo "Summary of JCK-compiler test failures" ; \
grep -v
'Not run' |
grep -v
'Passed' ; \
# Run JCK-runtime tests in -Xcompile mode # This is a special mode to test javac by compiling the tests in the JCK-runtime test suite # Normal JCK-runtime invocation belongs in the jdk/ repository. # Installed location of JCK: should include JCK-compiler, JCK-runtime and JCK-extras # Version of java used to run JCK. Should normally be the same as TESTJAVA # Version of java to be tested. # Additional options for JCK-runtime # Directories of tests to be run # Where to write the results echo ;
echo "Summary of JCK-runtime test failures" ; \
grep -v
'Not run' |
grep -v
'Passed' ; \
# Check to make sure these directories exist echo ;
echo "Summary of test failures" ; \
grep -v
'Not run' |
grep -v
'Passed' ; \
# Used to force a target rules to run # Phony targets (e.g. these are not filenames)