aboutsummaryrefslogtreecommitdiff
path: root/Examples/javascript/js_example.mk
blob: 6cb6eb1138c30fe5bfbfaa3f10c4605e434df551 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# Note: as a convention an example must be in a child directory of this.
# These paths are relative to such an example directory
EXAMPLES_TOP=../..
SWIG_TOP=../../..

SWIG = $(SWIG_TOP)/preinst-swig

# TODO: we could only set these only if not yet set...
JS_SCRIPT = runme.js
TARGET = example
INTERFACE = example.i

ifneq (, $(ENGINE))
	JSENGINE=$(ENGINE)
else
	JSENGINE=node
endif

SWIGOPT=-$(JSENGINE)

ifeq (node,$(JSENGINE))

build: wrapper
	$(MAKE) -f $(EXAMPLES_TOP)/Makefile CXXSRCS='$(SRCS)' SWIG='$(SWIG)' \
	SWIGOPT='$(SWIGOPT)' TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' JSENGINE='$(JSENGINE)' javascript_build_node

else

build: wrapper
	$(MAKE) -f $(EXAMPLES_TOP)/Makefile CXXSRCS='$(SRCS)' SWIG='$(SWIG)' \
	SWIGOPT='$(SWIGOPT)' TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' JSENGINE='$(JSENGINE)' javascript_build_cpp

endif

wrapper:
	$(MAKE) -f $(EXAMPLES_TOP)/Makefile CXXSRCS='$(SRCS)' SWIG='$(SWIG)' \
	SWIGOPT='$(SWIGOPT)' TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' javascript_wrapper_cpp

ifeq (node,$(JSENGINE))

check: build
	$(MAKE) -f $(EXAMPLES_TOP)/Makefile JSENGINE='$(JSENGINE)' javascript_run_node

else

check: build
	$(MAKE) -f $(EXAMPLES_TOP)/Makefile JSENGINE='$(JSENGINE)' TARGET='$(TARGET)' javascript_run

endif

clean:
	$(MAKE) -f $(EXAMPLES_TOP)/Makefile javascript_clean