You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

26 lines
613 B

CC=emcc
CFLAGS=-c -Wall -Oz
LDFLAGS=-Oz
SOURCES= \
TinyJS.cpp \
TinyJS_Functions.cpp \
TinyJS_MathFunctions.cpp \
TinyJS_Eval.cpp
OBJECTS=$(SOURCES:.cpp=.o)
all: run_tests tinyjs-eval.js
run_tests: run_tests.o $(OBJECTS)
$(CC) $(LDFLAGS) run_tests.o $(OBJECTS) -o $@
tinyjs-eval.js: TinyJS_Eval.o $(OBJECTS)
$(CC) $(LDFLAGS) TinyJS.o TinyJS_Eval.o --closure 1 -s AGGRESSIVE_VARIABLE_ELIMINATION -s MODULARIZE=1 -s EXPORTED_FUNCTIONS='["_eval"]' -s EXPORTED_RUNTIME_METHODS='["ccall", "cwrap"]' -o $@
.cpp.o:
$(CC) $(CFLAGS) $< -o $@
clean:
rm -f tinyjs-eval.js run_tests run_tests.o *.wasm $(OBJECTS)