blob: 33d16eacaedc8fee85c8b7dd250726f54f597f54 (
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
|
TARGET=libwebchat.wasm
TARGETJS=$(TARGET:.wasm=.js)
OBJS=diff.o
CXX=em++
CXXFLAGS=-I./include -O2 -std=c++20
LDFLAGS=-s WASM=1 -s EXPORTED_FUNCTIONS="['_diff_create', '_diff_apply', '_free']"
# Note: Instead of the above explicit EXPORTED_FUNCTIONS, the following causes ~7x wasm file size:
#-s LINKABLE=1 -s EXPORT_ALL=1
default: $(TARGET)
$(OBJS): include
include:
mkdir include
cp -r /usr/include/boost include/boost
$(TARGET): $(OBJS)
$(CXX) $(LDFLAGS) $(OBJS) -o $(TARGETJS)
cp $(TARGETJS) $(TARGET) ../html/
diff.o: ../diff.cpp
$(CXX) -c $< $(CXXFLAGS) -o $@
# run again in case em++ just asked to re-run (on pbuilder/buildd)
test -e $@ || $(CXX) -c $< $(CXXFLAGS) -o $@
clean:
-rm -f *.o *.js *.wasm *.html
-rm -rf include
|