all: build clean: @cabal clean > /dev/null @rm -r elm-stuff >/dev/null 2>&1 || true install: @elm package install # Watch # ----- watch: watch-server watch-elm watch-js watch-server: @nodemon -e hs,conf --exec 'clear && make build-and-launch-server --silent' & watch-elm: @nodemon -e elm --exec 'clear && make build-elm --silent' & watch-js: @nodemon --watch src/client/js --exec 'make build-js --silent' # Build and launch # ---------------- build-and-launch-server: build-server kill-server launch-server launch-server: @./dist/build/sharedCost/sharedCost & kill-server: @pkill sharedCost || true # Build # ----- .PHONY: build build: build-server build-elm build-js build-server: @cabal build || true build-elm: @elm make src/client/elm/Main.elm --output public/javascripts/client.js || true build-js: @cp src/client/js/main.js public/javascripts/main.js || true