1
0
mirror of https://github.com/taigrr/wasm-experiments synced 2025-01-18 04:03:21 -08:00
wasm-experiments/Makefile
2019-09-28 13:30:41 +01:00

89 lines
3.3 KiB
Makefile

.PHONY: hello
hello: clean
GOOS=js GOARCH=wasm go build -o ./html/test.wasm ./hello/main.go
cp $$(go env GOROOT)/misc/wasm/wasm_exec.html ./html/index.html
cp $$(go env GOROOT)/misc/wasm/wasm_exec.js ./html/wasm_exec.js
.PHONY: tinygo
tinygo: clean
docker run --rm -v $$(pwd):/go/src/github.com/johanbrandhorst/wasm-experiments tinygo/tinygo:0.8.0 /bin/bash -c "\
cd /go/src/github.com/johanbrandhorst/wasm-experiments && \
tinygo build -o ./html/test.wasm -target wasm --no-debug ./$(target)/main.go && \
cp /usr/local/tinygo/targets/wasm_exec.js ./html/wasm_exec.js\
"
cp $$(go env GOROOT)/misc/wasm/wasm_exec.html ./html/index.html
sed -i -e 's;</button>;</button>\n\t<div id=\"target\"></div>;' ./html/index.html
.PHONY: channels
channels: clean
GOOS=js GOARCH=wasm go build -o ./html/test.wasm ./channels/main.go
cp $$(go env GOROOT)/misc/wasm/wasm_exec.html ./html/index.html
cp $$(go env GOROOT)/misc/wasm/wasm_exec.js ./html/wasm_exec.js
.PHONY: js
js: clean
GOOS=js GOARCH=wasm go build -o ./html/test.wasm ./js/main.go
cp $$(go env GOROOT)/misc/wasm/wasm_exec.html ./html/index.html
cp $$(go env GOROOT)/misc/wasm/wasm_exec.js ./html/wasm_exec.js
sed -i -e 's;</button>;</button>\n\t<div id=\"target\"></div>;' ./html/index.html
.PHONY: fetch
fetch: clean
GOOS=js GOARCH=wasm go build -o ./html/test.wasm ./fetch/main.go
cp $$(go env GOROOT)/misc/wasm/wasm_exec.html ./html/index.html
cp $$(go env GOROOT)/misc/wasm/wasm_exec.js ./html/wasm_exec.js
sed -i -e 's;</button>;</button>\n\t<div id=\"target\"></div>;' ./html/index.html
.PHONY: canvas
canvas: clean
GOOS=js GOARCH=wasm go build -o ./html/test.wasm ./canvas/main.go
cp ./canvas/index.html ./html/index.html
cp ./canvas/main.go ./html/main.go
cp $$(go env GOROOT)/misc/wasm/wasm_exec.js ./html/wasm_exec.js
tinygo-canvas: clean
docker run --rm -v $$(pwd):/go/src/github.com/johanbrandhorst/wasm-experiments tinygo/tinygo:0.8.0 /bin/bash -c "\
cd /go/src/github.com/johanbrandhorst/wasm-experiments && \
tinygo build -o ./html/test.wasm -target wasm --no-debug ./canvas/main.go && \
cp /usr/local/tinygo/targets/wasm_exec.js ./html/wasm_exec.js\
"
cp ./canvas/index.html ./html/index.html
cp ./canvas/main.go ./html/main.go
.PHONY: ebiten
ebiten: clean
GOOS=js GOARCH=wasm go build -o ./html/ebiten.wasm ./ebiten/main.go
cp ./ebiten/index.html ./html/index.html
cp $$(go env GOROOT)/misc/wasm/wasm_exec.js ./html/wasm_exec.js
.PHONY: vugu
vugu: clean
go install github.com/vugu/vugu/cmd/vugugen
vugugen --skip-go-mod --skip-main ./vugu/
GOOS=js GOARCH=wasm go build -o ./html/main.wasm ./vugu/
cp ./vugu/index.html ./html/
cp $$(go env GOROOT)/misc/wasm/wasm_exec.js ./html/wasm_exec.js
.PHONY: vecty
vecty: clean
GOOS=js GOARCH=wasm go build -o ./html/test.wasm ./vecty/main.go
cp ./vecty/index.html ./html/index.html
cp $$(go env GOROOT)/misc/wasm/wasm_exec.js ./html/wasm_exec.js
.PHONY: export
export: clean
GOOS=js GOARCH=wasm go build -o ./html/test.wasm ./export/main.go
cp ./export/index.html ./html/index.html
cp $$(go env GOROOT)/misc/wasm/wasm_exec.js ./html/wasm_exec.js
.PHONY: test
test:
GOOS=js GOARCH=wasm go test -v ./test/
clean:
rm -f ./html/*
install-test:
go install github.com/agnivade/wasmbrowsertest
mv $$(go env GOPATH)/bin/wasmbrowsertest $$(go env GOPATH)/bin/go_js_wasm_exec