diff options
Diffstat (limited to 'libgomp/testsuite/Makefile.am')
-rw-r--r-- | libgomp/testsuite/Makefile.am | 66 |
1 files changed, 63 insertions, 3 deletions
diff --git a/libgomp/testsuite/Makefile.am b/libgomp/testsuite/Makefile.am index 3e536c43ec1..2100f49e53b 100644 --- a/libgomp/testsuite/Makefile.am +++ b/libgomp/testsuite/Makefile.am @@ -1,6 +1,6 @@ ## Process this file with automake to produce Makefile.in. -AUTOMAKE_OPTIONS = foreign dejagnu +AUTOMAKE_OPTIONS = foreign # May be used by various substitution variables. gcc_version := $(shell @get_gcc_base_ver@ $(top_srcdir)/../gcc/BASE-VER) @@ -10,8 +10,7 @@ EXPECT = $(shell if test -f $(top_builddir)/../expect/expect; then \ _RUNTEST = $(shell if test -f $(top_srcdir)/../dejagnu/runtest; then \ echo $(top_srcdir)/../dejagnu/runtest; else echo runtest; fi) -RUNTEST = $(_RUNTEST) $(AM_RUNTESTFLAGS) - +RUNTESTDEFAULTFLAGS = --tool $$tool --srcdir $$srcdir # Instead of directly in ../testsuite/libgomp-test-support.exp.in, the # following variables have to be "routed through" this Makefile, for expansion @@ -24,4 +23,65 @@ libgomp-test-support.exp: libgomp-test-support.pt.exp Makefile 'set offload_additional_lib_paths "$(offload_additional_lib_paths)"' mv $@.tmp $@ +check-DEJAGNU: site.exp + srcdir='$(srcdir)'; export srcdir; \ + EXPECT=$(EXPECT); export EXPECT; \ + if $(SHELL) -c "$(_RUNTEST) --version" > /dev/null 2>&1; then \ + exit_status=0; l='$(PACKAGE)'; for tool in $$l; do \ + if $(_RUNTEST) $(AM_RUNTESTFLAGS) $(RUNTESTDEFAULTFLAGS) $(RUNTESTFLAGS); \ + then :; else exit_status=1; fi; \ + done; \ + else echo "WARNING: could not find '$(_RUNTEST)'" 1>&2; :;\ + fi; \ + exit $$exit_status +site.exp: Makefile $(EXTRA_DEJAGNU_SITE_CONFIG) + @echo 'Making a new site.exp file ...' + @echo '## these variables are automatically generated by make ##' >site.tmp + @echo '# Do not edit here. If you wish to override these values' >>site.tmp + @echo '# edit the last section' >>site.tmp + @echo 'set srcdir "$(srcdir)"' >>site.tmp + @echo "set objdir `pwd`" >>site.tmp + @echo 'set build_alias "$(build_alias)"' >>site.tmp + @echo 'set build_triplet $(build_triplet)' >>site.tmp + @echo 'set host_alias "$(host_alias)"' >>site.tmp + @echo 'set host_triplet $(host_triplet)' >>site.tmp + @echo 'set target_alias "$(target_alias)"' >>site.tmp + @echo 'set target_triplet $(target_triplet)' >>site.tmp + @list='$(EXTRA_DEJAGNU_SITE_CONFIG)'; for f in $$list; do \ + echo "## Begin content included from file $$f. Do not modify. ##" \ + && cat `test -f "$$f" || echo '$(srcdir)/'`$$f \ + && echo "## End content included from file $$f. ##" \ + || exit 1; \ + done >> site.tmp + @echo "## End of auto-generated content; you can edit from here. ##" >> site.tmp + @if test -f site.exp; then \ + sed -e '1,/^## End of auto-generated content.*##/d' site.exp >> site.tmp; \ + fi + @-rm -f site.bak + @test ! -f site.exp || mv site.exp site.bak + @mv site.tmp site.exp + +distclean-DEJAGNU: + -rm -f site.exp site.bak + -l='$(PACKAGE)'; for tool in $$l; do \ + rm -f $$tool.sum $$tool.log; \ + done +distclean-am: distclean-DEJAGNU +check-am: + @if test -n "$(filter -j%, $(MFLAGS))"; then \ + num_cpus=1; \ + if type -p getconf 2>/dev/null >/dev/null; then \ + num_cpus=`getconf _NPROCESSORS_ONLN 2>/dev/null`; \ + case "$$num_cpus" in \ + '' | 0* | *[!0-9]*) num_cpus=1;; \ + esac; \ + fi; \ + if test $$num_cpus -gt 8 && test -z "$$OMP_NUM_THREADS"; then \ + OMP_NUM_THREADS=8; export OMP_NUM_THREADS; \ + echo @@@ libgomp OMP_NUM_THREADS adjusted to 8 because of parallel make check and too many CPUs; \ + fi; \ + fi; \ + $(MAKE) $(AM_MAKEFLAGS) check-DEJAGNU all-local: libgomp-test-support.exp + +.PHONY: check-DEJAGNU distclean-DEJAGNU |