File: AutoVMTests.gmk

package info (click to toggle)
jtreg 4.2-b05-1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 4,512 kB
  • ctags: 4,441
  • sloc: java: 25,950; xml: 730; makefile: 231; sh: 226
file content (71 lines) | stat: -rw-r--r-- 3,187 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#
# Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.  Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#

#----------------------------------------------------------------------

AUTOVM_FILES := $(shell find $(TESTDIR)/javatest/regtest/data/autovm -type f )
		
$(BUILDDIR)/autovm/tests.ok: $(AUTOVM_FILES) \
	    $(JTREG_IMAGEDIR)/lib/javatest.jar \
	    $(JTREG_IMAGEDIR)/lib/jtreg.jar \
	    $(JTREG_IMAGEDIR)/lib/jh.jar
	for ts in none agentvm othervm; do \
	    $(MKDIR) -p $(BUILDDIR)/autovm/tests/default.$$ts ; \
	    rsync --recursive --delete $(TESTDIR)/javatest/regtest/data/autovm/ $(BUILDDIR)/autovm/tests/default.$$ts/ ; \
	    if [ $$ts != none ]; then \
		echo "defaultExecMode=$$ts" >> $(BUILDDIR)/autovm/tests/default.$$ts/TEST.ROOT ; \
	    fi \
	done ; \
	for mode in none agentvm othervm ; do for ts in none agentvm othervm ; do \
	    $(J2SEJAVA) -jar $(JTREG_IMAGEDIR)/lib/jtreg.jar \
		-jdk:$(J2SEHOME) \
		-w $(BUILDDIR)/autovm/jtreg/mode.$$mode/ts.$$ts/work \
		-r $(BUILDDIR)/autovm/jtreg/mode.$$mode/ts.$$ts/report \
		`if [ $$mode != none ]; then echo "-$$mode" ; fi` \
		$(BUILDDIR)/autovm/tests/default.$$ts ; \
	done ; done ; \
	find $(BUILDDIR)/autovm/jtreg/mode.*/ts.*/work -name \*.jtr | \
	    grep -v Shell | while read file ; do \
	    	echo $$file `grep '^Mode:' $$file | sort -u` ; \
		found=`grep '^Mode:' $$file | sed -e 's/ \[.*\]$$//'` ; \
		case $$file in \
		    */work/*/othervm/* ) expect_compile=othervm ;; \
		    */mode.agentvm/* | */mode.none/ts.agentvm/* ) expect_compile=agentvm ;; \
		    */mode.none/ts.none/* | */mode.none/ts.othervm/* | */mode.othervm/* ) expect_compile=othervm ;; \
		    * ) echo "Can't match $$file" ; exit 1 ;; \
		esac ; \
		case $$file in \
		    */work/*[Oo]ther* ) expect_run=othervm ;; \
		    * ) expect_run=$$expect_compile ;; \
		esac ; \
		expect=`echo "Mode: $$expect_compile" ; echo "Mode: $$expect_run"` ; \
		if [ "$$found" != "$$expect" ]; then \
		    echo "$$file: expected: $$expect, found: $$found" ; exit 1; \
		fi \
	    done
	echo "test passed at `date`" > $@

TESTS.jtreg += $(BUILDDIR)/autovm/tests.ok