mirror of
https://github.com/correl/rebar.git
synced 2024-12-25 11:11:19 +00:00
79 lines
1.5 KiB
Makefile
79 lines
1.5 KiB
Makefile
.PHONY: clean dialyzer_warnings xref_warnings deps test test_eunit test_inttest
|
|
|
|
REBAR=$(PWD)/rebar
|
|
RETEST=$(PWD)/deps/retest/retest
|
|
OTPVSNCMD='io:fwrite("~s",[rebar_utils:otp_release()]), halt().'
|
|
OTPVSN=$(shell erl -pa ebin/ -noshell -eval $(OTPVSNCMD))
|
|
PLT_FILENAME=~/.dialyzer_rebar_$(OTPVSN)_plt
|
|
LOG_LEVEL?=debug
|
|
RT_TARGETS?=inttest
|
|
|
|
all:
|
|
./bootstrap
|
|
|
|
clean:
|
|
@rm -rf rebar ebin/*.beam inttest/rt.work rt.work .eunit
|
|
@rm -f .rebarinfo
|
|
|
|
distclean: clean
|
|
@rm -f dialyzer_warnings
|
|
@rm -rf deps
|
|
|
|
debug:
|
|
@./bootstrap debug
|
|
|
|
check: debug xref dialyzer deps test
|
|
|
|
xref:
|
|
@./rebar xref
|
|
|
|
build_plt:
|
|
-dialyzer --build_plt --output_plt $(PLT_FILENAME) --apps \
|
|
erts \
|
|
kernel \
|
|
stdlib \
|
|
crypto \
|
|
compiler \
|
|
asn1 \
|
|
eunit \
|
|
tools \
|
|
ssl \
|
|
edoc \
|
|
reltool \
|
|
snmp \
|
|
sasl
|
|
-dialyzer --add_to_plt --plt $(PLT_FILENAME) \
|
|
--output_plt $(PLT_FILENAME) \
|
|
--apps diameter
|
|
|
|
dialyzer: dialyzer_warnings
|
|
@diff -U0 dialyzer_reference dialyzer_warnings
|
|
|
|
dialyzer_warnings:
|
|
-@dialyzer --plt $(PLT_FILENAME) -q -nn -n ebin \
|
|
-Wunmatched_returns \
|
|
-Werror_handling \
|
|
-Wrace_conditions \
|
|
> dialyzer_warnings
|
|
|
|
typer:
|
|
typer -r --plt $(PLT_FILENAME) ./src -I ./include
|
|
|
|
binary: VSN = $(shell ./rebar -V)
|
|
binary: clean all
|
|
@cp rebar ../rebar.wiki/rebar
|
|
(cd ../rebar.wiki && git commit -m "Update $(VSN)" rebar)
|
|
|
|
deps:
|
|
@REBAR_EXTRA_DEPS=1 ./rebar get-deps
|
|
$(MAKE) -C deps/retest
|
|
|
|
test: test_eunit test_inttest
|
|
|
|
test_eunit: all
|
|
@$(REBAR) eunit
|
|
|
|
test_inttest: all deps
|
|
@$(RETEST) -l $(LOG_LEVEL) $(RT_TARGETS)
|
|
|
|
travis: clean debug xref clean all deps test
|