diff -r fd16c54261b3 -r 06bc494ca11e langtools/test/Makefile --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/langtools/test/Makefile Sat Dec 01 00:00:00 2007 +0000 @@ -0,0 +1,129 @@ +# +# Makefile to run jtreg and any other tests +# + +# Get OS/ARCH specifics +OSNAME = $(shell uname -s) +ifeq ($(OSNAME), SunOS) + PLATFORM = solaris + JT_PLATFORM = solaris + ARCH = $(shell uname -p) + ifeq ($(ARCH), i386) + ARCH=i586 + endif +endif +ifeq ($(OSNAME), Linux) + PLATFORM = linux + JT_PLATFORM = linux + ARCH = $(shell uname -m) + ifeq ($(ARCH), i386) + ARCH=i586 + endif +endif +ifeq ($(OSNAME), Windows_NT) + PLATFORM = windows + JT_PLATFORM = win32 + ifeq ($(word 1, $(PROCESSOR_IDENTIFIER)),ia64) + ARCH=ia64 + else + ifeq ($(word 1, $(PROCESSOR_IDENTIFIER)),AMD64) + ARCH=x64 + else + ifeq ($(word 1, $(PROCESSOR_IDENTIFIER)),EM64T) + ARCH=x64 + else + ARCH=i586 + endif + endif + endif +endif + +# Root of this test area (important to use full paths in some places) +TEST_ROOT := $(shell pwd) + +# Default bundle of all test results (passed or not) +JPRT_ARCHIVE_BUNDLE=$(TEST_ROOT)/JPRT_ARCHIVE_BUNDLE.zip + +# Default home for JTREG +ifeq ($(PLATFORM), windows) + SLASH_JAVA = J: +else + SLASH_JAVA = /java +endif + +# Default JTREG to run +JT_HOME = $(SLASH_JAVA)/svc/jct-tools3.2.2_02 +JTREG = $(JT_HOME)/$(JT_PLATFORM)/bin/jtreg + +# Default JDK for JTREG +ifdef JPRT_JAVA_HOME + JT_JAVA = $(JPRT_JAVA_HOME) +else + JT_JAVA = $(SLASH_JAVA)/re/jdk/1.6.0/archive/fcs/binaries/$(PLATFORM)-$(ARCH) +endif + +# Default JDK to test +TESTJAVA = $(SLASH_JAVA)/re/jdk/1.7.0/promoted/latest/binaries/$(PLATFORM)-$(ARCH) +TESTBOOTCLASSPATH = $(PRODUCT_HOME)/dist/lib/classes.jar + +# The test directories to run +DEFAULT_TESTDIRS = . +TESTDIRS = $(DEFAULT_TESTDIRS) + +# Root of all test results +TEST_OUTPUT_DIR = $(TEST_ROOT)/o_$(PLATFORM)-$(ARCH) + +# Export this setting and pass it in. +JAVA_TOOL_OPTIONS = -Djava.awt.headless=true +export JAVA_TOOL_OPTIONS + +# Default make rule +all javac javadoc javah javap apt: clean check jtreg-tests $(JPRT_ARCHIVE_BUNDLE) + @echo "Testing completed successfully" + +# for use with JPRT -testrule +all: TESTDIRS = . +javac fastjavac: TESTDIRS = tools/javac +javadoc: TESTDIRS = tools/javadoc com/sun/javadoc +javah: TESTDIRS = tools/javah +javap: TESTDIRS = tools/javap +apt: TESTDIRS = tools/apt + +fastjavac: SAMEVM = -samevm + +# Check to make sure these directories exist +check: $(JT_HOME) $(PRODUCT_HOME) $(JTREG) + +# Run the tests +jtreg-tests: FRC + ls /opt/jprt /opt/jprt/jdk* + @echo "Using export JAVA_TOOL_OPTIONS=$(JAVA_TOOL_OPTIONS)" + @rm -f -r $(TEST_OUTPUT_DIR)/JTwork $(TEST_OUTPUT_DIR)/JTreport + @mkdir -p $(TEST_OUTPUT_DIR) + JT_JAVA=$(JT_JAVA) $(JTREG) -k:\!ignore -a -v:fail,error $(SAMEVM) \ + -r:$(TEST_OUTPUT_DIR)/JTreport \ + -w:$(TEST_OUTPUT_DIR)/JTwork \ + -jdk:$(TESTJAVA) \ + -Xbootclasspath/p:$(TESTBOOTCLASSPATH) \ + -exclude:bootclasspath-exclude.jtx \ + $(JAVA_TOOL_OPTIONS:%=-vmoption:%) \ + $(JAVA_ARGS:%=-vmoption:%) \ + $(TESTDIRS) + +# Bundle up the results +$(JPRT_ARCHIVE_BUNDLE): FRC + @rm -f $@ + @mkdir -p $(@D) + ( cd $(TEST_OUTPUT_DIR) && zip -q -r $@ . ) + +# Cleanup +clean: + rm -f -r $(TEST_OUTPUT_DIR) + rm -f $(JPRT_ARCHIVE_BUNDLE) + +# Used to force a target rules to run +FRC: + +# Phony targets (e.g. these are not filenames) +.PHONY: all tests clean check +