Makefile revision 844
98N/A#
98N/A# Makefile to run jtreg
98N/A#
98N/A
98N/A# Get OS/ARCH specifics
98N/AOSNAME = $(shell uname -s)
98N/Aifeq ($(OSNAME), SunOS)
98N/A PLATFORM = solaris
98N/A JCT_PLATFORM = solaris
98N/A ARCH = $(shell uname -p)
98N/A ifeq ($(ARCH), i386)
98N/A ARCH=i586
98N/A endif
98N/Aendif
98N/Aifeq ($(OSNAME), Linux)
98N/A PLATFORM = linux
98N/A JCT_PLATFORM = linux
98N/A ARCH = $(shell uname -m)
98N/A ifeq ($(ARCH), i386)
98N/A ARCH=i586
98N/A endif
98N/Aendif
98N/Aifeq ($(OSNAME), Windows_NT)
98N/A PLATFORM = windows
98N/A JCT_PLATFORM = win32
98N/A ifeq ($(word 1, $(PROCESSOR_IDENTIFIER)),ia64)
98N/A ARCH=ia64
98N/A else
98N/A ifeq ($(word 1, $(PROCESSOR_IDENTIFIER)),AMD64)
98N/A ARCH=x64
210N/A else
98N/A ifeq ($(word 1, $(PROCESSOR_IDENTIFIER)),EM64T)
98N/A ARCH=x64
98N/A else
98N/A ARCH=i586
98N/A endif
98N/A endif
98N/A endif
98N/Aendif
98N/A
98N/A# Root of this test area (important to use full paths in some places)
98N/ATEST_ROOT := $(shell pwd)
98N/A
98N/A# Default bundle of all test results (passed or not)
151N/AJPRT_ARCHIVE_BUNDLE=$(TEST_ROOT)/JPRT_ARCHIVE_BUNDLE.zip
137N/A
153N/A# Default home for JTREG
210N/Aifeq ($(PLATFORM), windows)
98N/A JT_HOME = J:/svc/jct-tools3.2.2_02
179N/A JTREG_KEY_OPTION=-k:!ignore
126N/Aelse
98N/A JT_HOME = /java/svc/jct-tools3.2.2_02
98N/A JTREG_KEY_OPTION=-k:\!ignore
98N/Aendif
123N/A
98N/A# Default JTREG to run
98N/AJTREG = $(JT_HOME)/$(JCT_PLATFORM)/bin/jtreg
98N/A
98N/A# Default JDK to test
98N/AJAVA_HOME = $(TEST_ROOT)/../build/$(PLATFORM)-$(ARCH)
98N/A
98N/A# The test directories to run
98N/ADEFAULT_TESTDIRS = demo/jvmti/gctest demo/jvmti/hprof
98N/ATESTDIRS = $(DEFAULT_TESTDIRS)
98N/A
98N/A# Root of all test results
98N/AJTREG_OUTPUT_DIR = $(TEST_ROOT)/o_$(PLATFORM)-$(ARCH)
156N/A
156N/A# Export this setting and pass it in.
98N/A#JAVA_TOOL_OPTIONS = -Djava.awt.headless=true
98N/A#export JAVA_TOOL_OPTIONS
98N/A
98N/A# Default make rule
98N/Aall: clean check tests $(JPRT_ARCHIVE_BUNDLE)
98N/A @echo "Testing completed successfully"
98N/A
98N/A# Chaeck to make sure these directories exist
98N/Acheck: $(JT_HOME) $(JAVA_HOME) $(JTREG)
98N/A
98N/A# Run the tests
98N/Atests: FRC
98N/A @echo "Using export JAVA_TOOL_OPTIONS=$(JAVA_TOOL_OPTIONS)"
98N/A @rm -f -r $(JTREG_OUTPUT_DIR)
98N/A @mkdir -p $(JTREG_OUTPUT_DIR)
98N/A $(JTREG) -a -v:fail,error \
98N/A $(JTREG_KEY_OPTION) \
98N/A -r:$(JTREG_OUTPUT_DIR)/JTreport \
98N/A -w:$(JTREG_OUTPUT_DIR)/JTwork \
98N/A -jdk:$(JAVA_HOME) \
98N/A $(JAVA_TOOL_OPTIONS:%=-vmoption:%) \
98N/A $(JAVA_ARGS:%=-vmoption:%) \
$(TESTDIRS)
# Bundle up the results
$(JPRT_ARCHIVE_BUNDLE): FRC
@rm -f $@
@mkdir -p $(@D)
( cd $(JTREG_OUTPUT_DIR) && zip -q -r $@ . )
# Cleanup
clean:
rm -f -r $(JTREG_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