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.

61 lines
1.2 KiB

SHELL:=/bin/bash
.PHONY: all
all: awsm libsledge runtime applications
.PHONY: clean
clean: awsm.clean libsledge.clean runtime.clean applications.clean
.PHONY: submodules
submodules:
git submodule update --init --recursive
.PHONY: install
install: submodules wasm_apps all
# aWsm: the WebAssembly to LLVM bitcode compiler
.PHONY: awsm
awsm:
cd awsm && cargo build --release
.PHONY: awsm.clean
awsm.clean:
cd awsm && cargo clean
# libsledge: the support library linked with LLVM bitcode emitted by aWsm when building *.so modules
.PHONY: libsledge
libsledge:
make -C libsledge dist/libsledge.a
.PHONY: libsledge.clean
libsledge.clean:
make -C libsledge clean
# sledgert: the runtime that executes *.so modules
.PHONY: runtime
runtime:
make -C runtime
.PHONY: runtime.clean
runtime.clean:
make -C runtime clean
# SLEdge Applications
.PHONY: applications
applications:
make -C applications all
.PHONY: applications.clean
applications.clean:
make -C applications clean
# Instead of having two copies of wasm_apps, just link to the awsm repo's copy
wasm_apps:
ln -sr awsm/applications/wasm_apps/ applications/
# Tests
.PHONY: test
test:
make -f test.mk all