99 lines
1.8 KiB
Makefile
Executable file
99 lines
1.8 KiB
Makefile
Executable file
#######################################################################
|
|
# Makefile for javascript test-suite
|
|
#######################################################################
|
|
|
|
LANGUAGE = javascript
|
|
SCRIPTSUFFIX = _runme.js
|
|
srcdir = @srcdir@
|
|
top_srcdir = @top_srcdir@
|
|
top_builddir = @top_builddir@
|
|
SWIG = $(top_builddir)/preinst_swig
|
|
|
|
ifneq (, $(ENGINE))
|
|
JSENGINE = $(ENGINE)
|
|
else
|
|
JSENGINE = "node"
|
|
endif
|
|
|
|
include $(srcdir)/../common.mk
|
|
|
|
SWIGOPT += -$(JSENGINE)
|
|
|
|
|
|
ifeq ("node",$(JSENGINE))
|
|
|
|
setup = \
|
|
if [ ! -f $(srcdir)/$*/binding.gyp ]; then \
|
|
echo "Setting up nodejs addon..."; \
|
|
sh ./setup_test.sh $*; \
|
|
$(SWIG) -c++ -javascript -node -o $*/$*_wrap.cxx ../$*.i; \
|
|
fi
|
|
|
|
nodejs_swig_and_compile = \
|
|
if [ ! -f $(srcdir)/$*/build/Makefile ]; then \
|
|
echo "Configuring node add-on..."; \
|
|
node-gyp --directory $* configure; \
|
|
fi; \
|
|
echo "Building node add-on..."; \
|
|
node-gyp --directory $* build; \
|
|
|
|
run_testcase = \
|
|
if [ -f $(srcdir)/$*$(SCRIPTSUFFIX) ]; then \
|
|
node $(srcdir)/$*$(SCRIPTSUFFIX); \
|
|
fi
|
|
|
|
%.cpptest:
|
|
$(setup)
|
|
$(nodejs_swig_and_compile)
|
|
$(run_testcase)
|
|
|
|
%.ctest:
|
|
$(setup)
|
|
$(nodejs_swig_and_compile)
|
|
$(run_testcase)
|
|
|
|
%.multicpptest:
|
|
$(setup)
|
|
$(nodejs_swig_and_compile)
|
|
$(run_testcase)
|
|
|
|
%.clean:
|
|
rm -rf $*
|
|
|
|
else
|
|
|
|
run_testcase = \
|
|
if [ -f $(srcdir)/$*$(SCRIPTSUFFIX) ]; then \
|
|
$(top_srcdir)/Tools/javascript/javascript -$(JSENGINE) $(srcdir)/$*$(SCRIPTSUFFIX); \
|
|
fi
|
|
|
|
%.cpptest:
|
|
$(setup)
|
|
+$(swig_and_compile_cpp)
|
|
$(run_testcase)
|
|
|
|
%.multicpptest:
|
|
$(setup)
|
|
+$(swig_and_compile_multi_cpp)
|
|
$(run_testcase)
|
|
|
|
%.clean:
|
|
rm $*_wrap.cxx
|
|
|
|
endif
|
|
|
|
ifeq (v8,$(ENGINE))
|
|
%.ctest:
|
|
$(setup)
|
|
+$(swig_and_compile_cpp)
|
|
$(run_testcase)
|
|
endif
|
|
|
|
ifeq (jsc,$(ENGINE))
|
|
%.ctest:
|
|
$(setup)
|
|
+$(swig_and_compile_c)
|
|
$(run_testcase)
|
|
endif
|
|
|
|
clean:
|