####################################################################### # Makefile for php test-suite ####################################################################### LANGUAGE = php SCRIPTSUFFIX = _runme.php srcdir = @srcdir@ top_srcdir = @top_srcdir@ top_builddir = @top_builddir@ #CPP_TEST_CASES += \ # php_namewarn_rename \ include $(srcdir)/../common.mk # Overridden variables here TARGETPREFIX =# Should be php_ for Windows, empty otherwise makecpptests: @bash -ec 'for test in $(CPP_TEST_CASES) ; do $(MAKE) clean && $(MAKE) $${test}.cpptest; done' maketests: makecpptests makectests makectests: @bash -ec 'for test in $(C_TEST_CASES) ; do $($(MAKE)) clean && $(MAKE) $${test}.cpptest; done' runcpptests: @bash -ec 'for test in $(CPP_TEST_CASES) ; do if [ -f $${test}_runme.php ] ; then $(MAKE) clean && $(MAKE) $${test}.cpptest; fi ; done' runctests: @bash -ec 'for test in $(C_TEST_CASES) ; do if [ -f $${test}_runme.php ] ; then $(MAKE) clean && $(MAKE) $${test}.cpptest; fi; done' runtests: runcpptests runctests # write out tests without a _runme.php missingcpptests: @bash -ec 'for test in $(CPP_TEST_CASES) ; do test -f $${test}_runme.php || echo $${test}; done' missingctests: @bash -ec 'for test in $(C_TEST_CASES) ; do test -f $${test}_runme.php || echo $${test}; done' missingtests: missingcpptests missingctests # Rules for the different types of tests %.cpptest: $(setup) +$(swig_and_compile_cpp) +$(run_testcase) %.ctest: $(setup) +$(swig_and_compile_c) +$(run_testcase) %.multicpptest: $(setup) +$(swig_and_compile_multi_cpp) +$(run_testcase) # Runs the testcase. A testcase is only run if # a file is found which has _runme.php appended after the testcase name. run_testcase = \ if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then ( \ $(MAKE) -f $(top_builddir)/$(EXAMPLES)/Makefile PHPSCRIPT=$(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) RUNTOOL=$(RUNTOOL) php_run;) \ fi; # Clean: remove the generated .php file %.clean: @rm -f $*.php; clean: $(MAKE) -f $(top_builddir)/$(EXAMPLES)/Makefile php_clean