ERL=erl NOISY_BUILD=yes ifeq ($(NOISY_BUILD),) ECHO_PREFIX=@ CMD_PREFIX=@ else ECHO_PREFIX=@\# CMD_PREFIX= endif all: warning $(ECHO_PREFIX) echo "[ERLC] Making all" $(CMD_PREFIX) $(ERL) -noinput +B -eval 'case make:all([$(WARNING) $(OPTIMIZE) $(DEBUG)]) of up_to_date -> halt(0); error -> halt(1) end.' warning: echo $(WARNING) WARNING="warn_obsolete_guard, warn_unused_import, warn_shadow_vars, warn_export_vars, debug_info" echo $(WARNING) optimize: all $(ECHO_PREFIX) echo "[ERLC] Making all optimized" OPTIMIZE=", native, inline" all debug: all $(ECHO_PREFIX) echo "[ERLC] Making all debug" DEBUG=", export_all" tags: $(ECHO_PREFIX) echo "[ERLC] Making tags" $(CMD_PREFIX) $(ERL) -noinput +B -eval 'case tags:dir("src/") of ok -> halt(0); error -> halt(1) end.' root_tags: $(CMD_PREFIX) $(ERL) -noinput +B -eval 'case tags:root([{outfile, "root.TAGS"}]) of ok -> halt(0); error -> halt(1) end.' $(CMD_PREFIX) cat root.TAGS >> TAGS $(CMD_PREFIX) rm root.TAGS clean: $(ECHO_PREFIX) echo "Cleaning all beams" $(CMD_PREFIX) rm -f ebin/*.beam $(CMD_PREFIX) rm TAGS