git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11132 626c5289-ae23-0410-ae9c-e8d60b6d4f22
80 lines
2.1 KiB
Makefile
80 lines
2.1 KiB
Makefile
#######################################################################
|
|
# Makefile for ocaml test-suite
|
|
#######################################################################
|
|
|
|
LANGUAGE = ocaml
|
|
OCAMLC = ocamlc
|
|
VARIANT = _static
|
|
SCRIPTSUFFIX = _runme.ml
|
|
srcdir = @srcdir@
|
|
top_srcdir = @top_srcdir@
|
|
top_builddir = @top_builddir@
|
|
|
|
C_TEST_CASES =
|
|
|
|
run_testcase = \
|
|
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) -a \
|
|
-f $(top_srcdir)/Examples/test-suite/$*.list ] ; then ( \
|
|
$(COMPILETOOL) $(OCAMLC) -c $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX); \
|
|
$(COMPILETOOL) $(OCAMLC) swig.cmo -custom -g -cc '$(CXX)' -o runme `cat $(top_srcdir)/Examples/test-suite/$(*).list | sed -e 's/\(.*\)/\1_wrap.o \1.cmo/g'`&& $(RUNTOOL) ./runme) ; \
|
|
elif [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then ( \
|
|
$(COMPILETOOL) $(OCAMLC) -c $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX); \
|
|
$(COMPILETOOL) $(OCAMLC) swig.cmo -custom -g -cc '$(CXX)' -o runme $(srcdir)/$(*).cmo $(srcdir)/$(*)_runme.cmo $(srcdir)/$(*)_wrap.o && \
|
|
$(RUNTOOL) ./runme) ; \
|
|
fi ;
|
|
|
|
check_quant:
|
|
cat /dev/null > testing
|
|
cat /dev/null > success
|
|
cat /dev/null > results
|
|
$(MAKE) check
|
|
echo "Failed:" >> results
|
|
for element in `cat testing` ; do \
|
|
if grep $$element success >/dev/null 2>/dev/null ; then \
|
|
: ; \
|
|
else \
|
|
echo $$element >> results ; \
|
|
fi ; \
|
|
done
|
|
echo "Success:" >> results
|
|
cat success >> results
|
|
|
|
include $(srcdir)/../common.mk
|
|
|
|
# Overridden variables here
|
|
# none!
|
|
|
|
# Rules for the different types of tests
|
|
%.cpptest:
|
|
echo $@ >> testing
|
|
$(setup)
|
|
+$(swig_and_compile_cpp)
|
|
$(run_testcase)
|
|
if [ -f $(@:%.cpptest=%_wrap.o) ] ; then \
|
|
echo $@ >> success ; \
|
|
fi
|
|
|
|
%.ctest:
|
|
echo $@ >> testing
|
|
$(setup)
|
|
+$(swig_and_compile_c)
|
|
$(run_testcase)
|
|
if [ -f $(@:%.ctest=%_wrap.o) ] ; then \
|
|
echo $@ >> success ; \
|
|
fi
|
|
|
|
%.multicpptest:
|
|
echo $@ >> testing
|
|
+$(swig_and_compile_multi_cpp)
|
|
$(setup)
|
|
$(run_testcase)
|
|
if [ -f $(@:%.multicpptest=%_runtime_wrap.o) ] ; then \
|
|
echo $@ >> success ; \
|
|
fi
|
|
|
|
# Clean
|
|
%.clean:
|
|
@rm -f $*.ml $*.mli;
|
|
|
|
clean:
|
|
$(MAKE) -f $(top_builddir)/$(EXAMPLES)/Makefile ocaml_clean
|