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.
131 lines
3.4 KiB
131 lines
3.4 KiB
AWSMCC=../awsm/target/release/awsm
|
|
CC=clang
|
|
|
|
# Used by aWsm when compiling the *.wasm to *.bc
|
|
AWSMFLAGS= --inline-constant-globals --runtime-globals
|
|
|
|
# Used by clang when compiling the *.so module
|
|
# --whole-archive causes the symbols in the listed static archive to be exported from the resulting *.so
|
|
# https://stackoverflow.com/questions/805555/ld-linker-question-the-whole-archive-option
|
|
CFLAGS=-O3 -flto
|
|
LDFLAGS=-shared -fPIC -Wl,--export-dynamic,--whole-archive -L../libsledge/dist/ -lsledge -Wl,--no-whole-archive
|
|
# LDFLAGS=-flto -fvisibility=hidden
|
|
|
|
# Strips out calls to assert() and disables debuglog
|
|
CFLAGS+=-DNDEBUG
|
|
|
|
dist:
|
|
mkdir -p dist
|
|
|
|
.PHONY: all
|
|
all: \
|
|
cifar10.install \
|
|
empty.install \
|
|
fibonacci.install \
|
|
gocr.install \
|
|
gps_ekf.install \
|
|
license_plate_detection.install \
|
|
resize_image.install \
|
|
scratch_storage_get.install \
|
|
scratch_storage_set.install \
|
|
scratch_storage_delete.install \
|
|
scratch_storage_upsert.install \
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
@make -C wasm_apps clean
|
|
@make -C scratch_storage clean
|
|
@rm -rf dist
|
|
@rm -rf ../runtime/bin/*.so
|
|
|
|
wasm_apps/dist/%.wasm:
|
|
make -C wasm_apps $(addprefix dist/,$(notdir $@))
|
|
|
|
../libsledge/dist/:
|
|
mkdir ../libsledge/dist
|
|
|
|
../libsledge/dist/libsledge.a: ../libsledge/dist/
|
|
make -C .. libsledge
|
|
|
|
PHONY: scratch_storage
|
|
scratch_storage:
|
|
make -C scratch_storage all
|
|
|
|
PHONY: scratch_storage.install
|
|
scratch_storage.install: \
|
|
scratch_storage_get.install \
|
|
scratch_storage_set.install \
|
|
scratch_storage_delete.install \
|
|
scratch_storage_upsert.install
|
|
|
|
scratch_storage/scratch_storage_%.wasm:
|
|
make -C scratch_storage all
|
|
|
|
dist/scratch_storage_%.bc: scratch_storage/scratch_storage_%.wasm dist
|
|
${AWSMCC} ${AWSMFLAGS} $< -o $@
|
|
|
|
dist/%.bc: ./wasm_apps/dist/%.wasm dist
|
|
${AWSMCC} ${AWSMFLAGS} $< -o $@
|
|
|
|
dist/%.ll: dist/%.bc
|
|
llvm-dis-12 $< -o $@
|
|
|
|
dist/%.wasm.so: dist/%.bc
|
|
${CC} ${CFLAGS} ${LDFLAGS} $^ -o $@
|
|
|
|
../runtime/bin/%.wasm.so: dist/%.wasm.so
|
|
cp $^ $@
|
|
|
|
.PHONY: cifar10.install
|
|
cifar10.install: ../runtime/bin/cifar10.wasm.so
|
|
|
|
# Echo?
|
|
|
|
.PHONY: empty.install
|
|
empty.install: ../runtime/bin/empty.wasm.so
|
|
|
|
.PHONY: exit.install
|
|
exit.install: ../runtime/bin/exit.wasm.so
|
|
|
|
.PHONY: fibonacci.install
|
|
fibonacci.install: ../runtime/bin/fibonacci.wasm.so
|
|
|
|
.PHONY: asc-fib.install
|
|
asc-fib.install: ../runtime/bin/asc-fib.wasm.so
|
|
|
|
.PHONY: gocr.install
|
|
gocr.install: ../runtime/bin/gocr.wasm.so
|
|
|
|
.PHONY: resize_image.install
|
|
resize_image.install: ../runtime/bin/resize_image.wasm.so
|
|
|
|
.PHONY: gps_ekf.install
|
|
gps_ekf.install: ../runtime/bin/gps_ekf.wasm.so
|
|
|
|
.PHONY: license_plate_detection.install
|
|
license_plate_detection.install: ../runtime/bin/license_plate_detection.wasm.so
|
|
|
|
.PHONY: trap_divzero.install
|
|
trap_divzero.install: ../runtime/bin/trap_divzero.wasm.so
|
|
|
|
.PHONY: stack_overflow.install
|
|
stack_overflow.install: ../runtime/bin/stack_overflow.wasm.so
|
|
|
|
.PHONY: html.install
|
|
html.install: ../runtime/bin/html.wasm.so
|
|
|
|
.PHONY: scratch_storage_get.install
|
|
scratch_storage_get.install: ../runtime/bin/scratch_storage_get.wasm.so
|
|
|
|
.PHONY: scratch_storage_set.install
|
|
scratch_storage_set.install: ../runtime/bin/scratch_storage_set.wasm.so
|
|
|
|
.PHONY: scratch_storage_delete.install
|
|
scratch_storage_delete.install: ../runtime/bin/scratch_storage_delete.wasm.so
|
|
|
|
.PHONY: scratch_storage_upsert.install
|
|
scratch_storage_upsert.install: ../runtime/bin/scratch_storage_upsert.wasm.so
|
|
|
|
.PHONY: depth_to_xyz.install
|
|
depth_to_xyz.install: ../runtime/bin/depth_to_xyz.wasm.so
|