parent
779bf5c518
commit
b5388531ea
@ -1,24 +1,25 @@
|
||||
CC=g++
|
||||
CFLAGS=-c -g -Wall -rdynamic -D_DEBUG
|
||||
LDFLAGS=-g -rdynamic
|
||||
CC=emcc
|
||||
CFLAGS=-c -Wall -Oz
|
||||
LDFLAGS=-Oz
|
||||
|
||||
SOURCES= \
|
||||
TinyJS.cpp \
|
||||
TinyJS_Functions.cpp \
|
||||
TinyJS_MathFunctions.cpp
|
||||
TinyJS_MathFunctions.cpp \
|
||||
TinyJS_Eval.cpp
|
||||
|
||||
OBJECTS=$(SOURCES:.cpp=.o)
|
||||
|
||||
all: run_tests Script
|
||||
all: run_tests tinyjs-eval.js
|
||||
|
||||
run_tests: run_tests.o $(OBJECTS)
|
||||
$(CC) $(LDFLAGS) run_tests.o $(OBJECTS) -o $@
|
||||
|
||||
Script: Script.o $(OBJECTS)
|
||||
$(CC) $(LDFLAGS) Script.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 run_tests Script run_tests.o Script.o $(OBJECTS)
|
||||
rm -f tinyjs-eval.js run_tests run_tests.o *.wasm $(OBJECTS)
|
||||
|
@ -0,0 +1,14 @@
|
||||
#include "TinyJS.h"
|
||||
|
||||
extern "C" {
|
||||
const char* eval(char* js_code) {
|
||||
|
||||
CTinyJS *js = new CTinyJS();
|
||||
|
||||
const std::string json = js->evaluate(js_code);
|
||||
const char* cstr = json.c_str();
|
||||
|
||||
delete js;
|
||||
return cstr;
|
||||
}
|
||||
}
|
Loading…
Reference in new issue