35
36 # Make sure this variable is not lazy evaled.
37 ALL_NAMED_TESTS :=
38
39 # Hook to include the corresponding custom file, if present.
40 $(eval $(call IncludeCustomExtension, common/FindTests.gmk))
41
42 # TEST_BASEDIRS might have been set by a custom extension
43 TEST_BASEDIRS += $(TOPDIR)/test $(TOPDIR)
44
45 # JTREG_TESTROOTS might have been set by a custom extension
46 JTREG_TESTROOTS += $(addprefix $(TOPDIR)/test/, hotspot/jtreg jdk langtools nashorn jaxp)
47
48 # Extract the names of the Jtreg group files from the TEST.ROOT files. The
49 # TEST.ROOT files being properties files can be interpreted as makefiles so
50 # use include to get at the contents instead of expensive shell calls. We are
51 # looking for the "groups" property in each file.
52 JTREG_ROOT_FILES := $(addsuffix /TEST.ROOT, $(JTREG_TESTROOTS))
53 JTREG_GROUP_FILES :=
54 $(foreach root, $(JTREG_TESTROOTS), \
55 $(eval include $(root)/TEST.ROOT) \
56 $(eval $(root)_JTREG_GROUP_FILES := $$(addprefix $(root)/, $$(groups))) \
57 $(eval JTREG_GROUP_FILES += $$($(root)_JTREG_GROUP_FILES)) \
58 )
59
60 # Cache the expensive to calculate test names in a generated makefile.
61 FIND_TESTS_CACHE_FILE := $(MAKESUPPORT_OUTPUTDIR)/find-tests.gmk
62
63 # If this file is deemed outdated, it will automatically get regenerated
64 # by this rule before being included below.
65 $(FIND_TESTS_CACHE_FILE): $(JTREG_ROOT_FILES) $(JTREG_GROUP_FILES) \
66 $(TOPDIR)/test/make/TestMake.gmk
67 $(call MakeTargetDir)
68 ( $(foreach root, $(JTREG_TESTROOTS), \
69 $(PRINTF) "\n$(root)_JTREG_TEST_GROUPS := " ; \
70 $(SED) -n -e 's/^\#.*//g' -e 's/\([^ ]*\)\w*=.*/\1/gp' \
71 $($(root)_JTREG_GROUP_FILES) \
72 | $(SORT) -u | $(TR) '\n' ' ' ; \
73 ) \
74 ) > $@
75 $(PRINTF) "\nMAKE_TEST_TARGETS := " >> $@
76 $(MAKE) -s --no-print-directory $(MAKE_ARGS) \
77 SPEC=$(SPEC) -f $(TOPDIR)/test/make/TestMake.gmk print-targets \
|
35
36 # Make sure this variable is not lazy evaled.
37 ALL_NAMED_TESTS :=
38
39 # Hook to include the corresponding custom file, if present.
40 $(eval $(call IncludeCustomExtension, common/FindTests.gmk))
41
42 # TEST_BASEDIRS might have been set by a custom extension
43 TEST_BASEDIRS += $(TOPDIR)/test $(TOPDIR)
44
45 # JTREG_TESTROOTS might have been set by a custom extension
46 JTREG_TESTROOTS += $(addprefix $(TOPDIR)/test/, hotspot/jtreg jdk langtools nashorn jaxp)
47
48 # Extract the names of the Jtreg group files from the TEST.ROOT files. The
49 # TEST.ROOT files being properties files can be interpreted as makefiles so
50 # use include to get at the contents instead of expensive shell calls. We are
51 # looking for the "groups" property in each file.
52 JTREG_ROOT_FILES := $(addsuffix /TEST.ROOT, $(JTREG_TESTROOTS))
53 JTREG_GROUP_FILES :=
54 $(foreach root, $(JTREG_TESTROOTS), \
55 $(if $(wildcard $(root)/TEST.ROOT), \
56 $(eval include $(root)/TEST.ROOT) \
57 $(eval $(root)_JTREG_GROUP_FILES := $$(addprefix $(root)/, $$(groups))) \
58 $(eval JTREG_GROUP_FILES += $$($(root)_JTREG_GROUP_FILES))) \
59 )
60
61 # Cache the expensive to calculate test names in a generated makefile.
62 FIND_TESTS_CACHE_FILE := $(MAKESUPPORT_OUTPUTDIR)/find-tests.gmk
63
64 # If this file is deemed outdated, it will automatically get regenerated
65 # by this rule before being included below.
66 $(FIND_TESTS_CACHE_FILE): $(JTREG_ROOT_FILES) $(JTREG_GROUP_FILES) \
67 $(TOPDIR)/test/make/TestMake.gmk
68 $(call MakeTargetDir)
69 ( $(foreach root, $(JTREG_TESTROOTS), \
70 $(PRINTF) "\n$(root)_JTREG_TEST_GROUPS := " ; \
71 $(SED) -n -e 's/^\#.*//g' -e 's/\([^ ]*\)\w*=.*/\1/gp' \
72 $($(root)_JTREG_GROUP_FILES) \
73 | $(SORT) -u | $(TR) '\n' ' ' ; \
74 ) \
75 ) > $@
76 $(PRINTF) "\nMAKE_TEST_TARGETS := " >> $@
77 $(MAKE) -s --no-print-directory $(MAKE_ARGS) \
78 SPEC=$(SPEC) -f $(TOPDIR)/test/make/TestMake.gmk print-targets \
|