Scilab: simply makefiles & base on java for test-suite
This commit is contained in:
parent
c4114b2c5f
commit
8e2423ac87
2 changed files with 24 additions and 75 deletions
|
|
@ -1587,24 +1587,8 @@ define get_swig_scilab_args
|
||||||
ifdef INCLUDES
|
ifdef INCLUDES
|
||||||
SWIG_SCILAB_ARGS += -addcflag "$(INCLUDES)"
|
SWIG_SCILAB_ARGS += -addcflag "$(INCLUDES)"
|
||||||
endif
|
endif
|
||||||
ifdef OUTDIR
|
|
||||||
SWIG_SCILAB_ARGS += -outdir "$(OUTDIR)"
|
|
||||||
endif
|
|
||||||
ifdef TARGET
|
|
||||||
SWIG_SCILAB_ARGS += -o "$(TARGET)"
|
|
||||||
endif
|
|
||||||
endef
|
endef
|
||||||
|
|
||||||
# Returns the output dir
|
|
||||||
define get_output_dir
|
|
||||||
ifdef OUTDIR
|
|
||||||
OUTPUT_DIR := $(OUTDIR)
|
|
||||||
else
|
|
||||||
OUTPUT_DIR := .
|
|
||||||
endif
|
|
||||||
endef
|
|
||||||
|
|
||||||
|
|
||||||
# ----------------------------------------------------------------
|
# ----------------------------------------------------------------
|
||||||
# Build a C dynamically loadable module
|
# Build a C dynamically loadable module
|
||||||
# ----------------------------------------------------------------
|
# ----------------------------------------------------------------
|
||||||
|
|
@ -1612,9 +1596,8 @@ endef
|
||||||
scilab: $(SRCS)
|
scilab: $(SRCS)
|
||||||
$(eval $(call get_swig_scilab_args))
|
$(eval $(call get_swig_scilab_args))
|
||||||
$(SWIG) $(SWIGOPT) $(SWIG_SCILAB_ARGS) $(INTERFACEPATH)
|
$(SWIG) $(SWIGOPT) $(SWIG_SCILAB_ARGS) $(INTERFACEPATH)
|
||||||
$(eval $(call get_output_dir))
|
if [ -f builder.sce ]; then \
|
||||||
if [ -f $(OUTPUT_DIR)/builder.sce ]; then \
|
env LD_LIBRARY_PATH=.:$$LD_LIBRARY_PATH MAKEFLAGS="-j1" $(RUNTOOL) $(SCILAB) $(SCILAB_STARTOPT) -f builder.sce; \
|
||||||
env LD_LIBRARY_PATH=$(OUTPUT_DIR):$$LD_LIBRARY_PATH MAKEFLAGS="-j1" $(RUNTOOL) $(SCILAB) $(SCILAB_STARTOPT) -f $(OUTPUT_DIR)/builder.sce; \
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# ----------------------------------------------------------------
|
# ----------------------------------------------------------------
|
||||||
|
|
@ -1624,9 +1607,8 @@ scilab: $(SRCS)
|
||||||
scilab_cpp: $(SRCS)
|
scilab_cpp: $(SRCS)
|
||||||
$(eval $(call get_swig_scilab_args))
|
$(eval $(call get_swig_scilab_args))
|
||||||
$(SWIG) $(SWIGOPT) -c++ $(SWIG_SCILAB_ARGS) $(INTERFACEPATH)
|
$(SWIG) $(SWIGOPT) -c++ $(SWIG_SCILAB_ARGS) $(INTERFACEPATH)
|
||||||
$(eval $(call get_output_dir))
|
if [ -f builder.sce ]; then \
|
||||||
if [ -f $(OUTPUT_DIR)/builder.sce ]; then \
|
env LD_LIBRARY_PATH=.:$$LD_LIBRARY_PATH MAKEFLAGS="-j1" $(RUNTOOL) $(SCILAB) $(SCILAB_STARTOPT) -f builder.sce; \
|
||||||
env LD_LIBRARY_PATH=$(OUTPUT_DIR):$$LD_LIBRARY_PATH MAKEFLAGS="-j1" $(RUNTOOL) $(SCILAB) $(SCILAB_STARTOPT) -f $(OUTPUT_DIR)/builder.sce; \
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# -----------------------------------------------------------------
|
# -----------------------------------------------------------------
|
||||||
|
|
@ -1634,8 +1616,9 @@ scilab_cpp: $(SRCS)
|
||||||
# -----------------------------------------------------------------
|
# -----------------------------------------------------------------
|
||||||
|
|
||||||
scilab_run:
|
scilab_run:
|
||||||
$(eval $(call get_output_dir))
|
if [ -f $(RUNME) ]; then \
|
||||||
env LD_LIBRARY_PATH=$(OUTPUT_DIR):$$LD_LIBRARY_PATH $(RUNTOOL) $(SCILAB) $(SCILAB_STARTOPT) -f $(RUNME).sci $(RUNPIPE)
|
env LD_LIBRARY_PATH=.:$$LD_LIBRARY_PATH $(RUNTOOL) $(SCILAB) $( SCILAB_STARTOPT) -f $(RUNME).sci $(RUNPIPE); \
|
||||||
|
fi
|
||||||
|
|
||||||
# -----------------------------------------------------------------
|
# -----------------------------------------------------------------
|
||||||
# Scilab version
|
# Scilab version
|
||||||
|
|
|
||||||
|
|
@ -10,80 +10,46 @@ srcdir = $(abspath @srcdir@)
|
||||||
top_srcdir = $(abspath @top_srcdir@)
|
top_srcdir = $(abspath @top_srcdir@)
|
||||||
top_builddir = $(abspath @top_builddir@)
|
top_builddir = $(abspath @top_builddir@)
|
||||||
|
|
||||||
|
|
||||||
# Overridden variables here
|
|
||||||
# None!
|
|
||||||
# - member_funcptr_galore (C++)
|
|
||||||
# - member_pointer (C++)
|
|
||||||
# - typemap_variables (C++)
|
|
||||||
|
|
||||||
define get_output_dir
|
|
||||||
OUTDIR := $(CURDIR)/$(1).build
|
|
||||||
endef
|
|
||||||
|
|
||||||
define get_runme_script
|
|
||||||
RUNME_SCRIPT := $(srcdir)/$(SCRIPTPREFIX)$(1)$(SCRIPTSUFFIX)
|
|
||||||
endef
|
|
||||||
|
|
||||||
CPP_STD_TEST_CASES += \
|
CPP_STD_TEST_CASES += \
|
||||||
scilab_typemaps \
|
scilab_typemaps \
|
||||||
|
|
||||||
|
TEST_DIR = $*.dir
|
||||||
|
RUNME_SCRIPT = $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX)
|
||||||
|
|
||||||
include $(srcdir)/../common.mk
|
include $(srcdir)/../common.mk
|
||||||
|
|
||||||
# Override make commands to specify OUTDIR
|
|
||||||
swig_and_compile_cpp = \
|
|
||||||
$(MAKE) -f $(top_builddir)/$(EXAMPLES)/Makefile CXXSRCS="$(CXXSRCS)" \
|
|
||||||
SWIG_LIB="$(SWIG_LIB)" SWIG="$(SWIG)" \
|
|
||||||
INCLUDES="$(INCLUDES)" OUTDIR="$(OUTDIR)" \
|
|
||||||
TARGET="$(OUTDIR)/$*_wrap.cxx" INTERFACEDIR="$(INTERFACEDIR)" INTERFACE="$*.i" \
|
|
||||||
scilab_cpp
|
|
||||||
|
|
||||||
swig_and_compile_c = \
|
|
||||||
$(MAKE) -f $(top_builddir)/$(EXAMPLES)/Makefile CSRCS="$(CSRCS)" \
|
|
||||||
SWIG_LIB="$(SWIG_LIB)" SWIG="$(SWIG)" \
|
|
||||||
INCLUDES="$(INCLUDES)" OUTDIR="$(OUTDIR)" \
|
|
||||||
TARGET="$(OUTDIR)/$*_wrap.c" INTERFACEDIR="$(INTERFACEDIR)" INTERFACE="$*.i" \
|
|
||||||
scilab
|
|
||||||
|
|
||||||
swig_and_compile_multi_cpp = \
|
|
||||||
for f in `cat $(top_srcdir)/$(EXAMPLES)/$(TEST_SUITE)/$*.list` ; do \
|
|
||||||
$(MAKE) -f $(top_builddir)/$(EXAMPLES)/Makefile CXXSRCS="$(CXXSRCS)" \
|
|
||||||
SWIG_LIB="$(SWIG_LIB)" SWIG="$(SWIG)" \
|
|
||||||
INCLUDES="$(INCLUDES)" OUTDIR="$(OUTDIR)" \
|
|
||||||
TARGET="$(OUTDIR)/$*_wrap.cxx" INTERFACEDIR="$(INTERFACEDIR)" INTERFACE="$$f.i" \
|
|
||||||
scilab_cpp; \
|
|
||||||
done
|
|
||||||
|
|
||||||
# Rules for the different types of tests
|
# Rules for the different types of tests
|
||||||
%.cpptest:
|
%.cpptest:
|
||||||
$(setup)
|
$(setup)
|
||||||
$(eval $(call get_output_dir,$*))
|
+(cd $(TEST_DIR) && $(swig_and_compile_cpp))
|
||||||
mkdir -p $(OUTDIR)
|
|
||||||
+$(swig_and_compile_cpp)
|
|
||||||
$(run_testcase)
|
$(run_testcase)
|
||||||
|
|
||||||
%.ctest:
|
%.ctest:
|
||||||
$(setup)
|
$(setup)
|
||||||
$(eval $(call get_output_dir,$*))
|
+(cd $(TEST_DIR) && $(swig_and_compile_c))
|
||||||
mkdir -p $(OUTDIR)
|
|
||||||
+$(swig_and_compile_c)
|
|
||||||
$(run_testcase)
|
$(run_testcase)
|
||||||
|
|
||||||
%.multicpptest:
|
%.multicpptest:
|
||||||
$(setup)
|
$(setup)
|
||||||
$(eval $(call get_output_dir,$*))
|
+(cd $(TEST_DIR) && $(swig_and_compile_multi_cpp))
|
||||||
mkdir -p $(OUTDIR)
|
|
||||||
+$(swig_and_compile_multi_cpp)
|
|
||||||
$(run_testcase)
|
$(run_testcase)
|
||||||
|
|
||||||
|
# Makes a directory for the testcase if it does not exist
|
||||||
|
setup = \
|
||||||
|
if [ -f $(srcdir)/$(SCRIPTPREFIX)$*$(SCRIPTSUFFIX) ]; then \
|
||||||
|
echo "$(ACTION)ing testcase $* (with run test) under $(LANGUAGE)" ; \
|
||||||
|
else \
|
||||||
|
echo "$(ACTION)ing testcase $* under $(LANGUAGE)" ; \
|
||||||
|
fi; \
|
||||||
|
if [ ! -d $(TEST_DIR) ]; then \
|
||||||
|
mkdir $(TEST_DIR); \
|
||||||
|
fi
|
||||||
|
|
||||||
# Runs the testcase. A testcase is only run if
|
# Runs the testcase. A testcase is only run if
|
||||||
# a file is found which has _runme.sci appended after the testcase name.
|
# a file is found which has _runme.sci appended after the testcase name.
|
||||||
run_testcase = \
|
run_testcase = \
|
||||||
$(eval $(call get_output_dir,$*)) \
|
|
||||||
$(eval $(call get_runme_script,$*)) \
|
|
||||||
if [ -f $(RUNME_SCRIPT) ]; then ( \
|
if [ -f $(RUNME_SCRIPT) ]; then ( \
|
||||||
env LD_LIBRARY_PATH=$(OUTDIR):$$LD_LIBRARY_PATH $(RUNTOOL) $(SCILAB) $(SCILAB_STARTOPT) -f $(RUNME_SCRIPT); )\
|
env LD_LIBRARY_PATH=$(srcdir)/$(TEST_DIR):$$LD_LIBRARY_PATH $(RUNTOOL) $(SCILAB) $(SCILAB_STARTOPT) -f $(RUNME_SCRIPT); )\
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Clean: remove the generated files
|
# Clean: remove the generated files
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue