diff options
Diffstat (limited to 'libstdc++-v3/testsuite/Makefile.in')
-rw-r--r-- | libstdc++-v3/testsuite/Makefile.in | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/libstdc++-v3/testsuite/Makefile.in b/libstdc++-v3/testsuite/Makefile.in index c029ced7612..468700e8f04 100644 --- a/libstdc++-v3/testsuite/Makefile.in +++ b/libstdc++-v3/testsuite/Makefile.in @@ -314,6 +314,13 @@ libgomp_flags = -B${glibcxx_builddir}/../libgomp \ atomic_flags = $(ATOMIC_FLAGS) parallel_flags = "unix/-D_GLIBCXX_PARALLEL/-fopenmp" +# Runs the testsuite in profile +libprofc++_dir = ${glibcxx_builddir}/libprofc++ +libprofc++_flags = -B${glibcxx_builddir}/libprofc++ \ + -I${glibcxx_builddir}/libprofc++ \ + -L${glibcxx_builddir}/libprofc++/.libs +profile_flags = "unix/-fprofile-stdlib" + # By adding these files here, automake will remove them for 'make clean' CLEANFILES = *.txt *.tst *.exe core* filebuf_* tmp* ostream_* *.log *.sum \ testsuite_* site.exp abi_check baseline_symbols *TEST* *.dat \ @@ -581,12 +588,25 @@ check-performance-parallel: testsuite_files_performance ${performance_script} CXXFLAGS="-D_GLIBCXX_PARALLEL -fopenmp $(atomic_flags) $(libgomp_flags)"; export CXXFLAGS; \ ${check_performance_script} ${glibcxx_srcdir} ${glibcxx_builddir}) +check-profile: site.exp + -@(if test ! -d $${libprofc++_dir}; then \ + echo "Testing profiling mode failed as libprofc++ not present."; \ + exit 1; \ + fi; \ + outputdir=profile; export outputdir; \ + if test ! -d $${outputdir}; then \ + mkdir $${outputdir}; \ + fi; \ + srcdir=`$(am__cd) $(srcdir) && pwd`; export srcdir; \ + EXPECT=$(EXPECT); export EXPECT; \ + $(MAKE) CXXFLAGS="$(atomic_flags) $(libprofc++_flags)" RUNTESTFLAGS="$(RUNTESTFLAGS) conformance.exp --outdir $${outputdir} --objdir $${outputdir} --target_board=$(profile_flags)" check-DEJAGNU; ) + .PHONY: baseline_symbols new-abi-baseline \ - check-abi check-compile check-performance check-parallel + check-abi check-compile check-performance check-parallel check-profile # To remove directories. clean-local: - rm -rf parallel + rm -rf parallel profile # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: |