Makefile 781 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. REBAR = ./rebar3
  2. ERL_VSN = $(shell erl -eval 'erlang:display(erlang:system_info(otp_release)), halt().' -noshell)
  3. all: compile
  4. $(REBAR):
  5. @case "$(ERL_VSN)" in\
  6. "R16"*)\
  7. wget https://github.com/erlang/rebar3/releases/download/3.5.2/rebar3 \
  8. ;;\
  9. *)\
  10. wget https://s3.amazonaws.com/rebar3/rebar3 \
  11. ;;\
  12. esac
  13. chmod +x rebar3
  14. compile: src/epgsql_errcodes.erl $(REBAR)
  15. @$(REBAR) compile
  16. clean: $(REBAR)
  17. @$(REBAR) clean
  18. src/epgsql_errcodes.erl:
  19. ./generate_errcodes_src.sh > src/epgsql_errcodes.erl
  20. test: compile
  21. @$(REBAR) do ct -v
  22. dialyzer: compile
  23. @$(REBAR) dialyzer
  24. elvis: $(REBAR)
  25. @case "$(ERL_VSN)" in\
  26. "R16"*)\
  27. echo "Elvis is disabled on erl 16"\
  28. ;;\
  29. *)\
  30. $(REBAR) as lint lint\
  31. ;;\
  32. esac
  33. .PHONY: all compile clean test dialyzer elvis