From 58b99e7f457bc056e91d2d1721cbb65fcd517afe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Wed, 28 May 2014 22:07:54 +0200 Subject: Cut erlang.mk into many small components * The build.config says what gets into the generated erlang.mk. * The default erlang.mk in the repository hasn't changed yet. * Clean targets were separated into "clean" and "distclean". * The "help" target was added to display some help message. I probably broke a couple things... --- plugins/dialyzer.mk | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 plugins/dialyzer.mk (limited to 'plugins/dialyzer.mk') diff --git a/plugins/dialyzer.mk b/plugins/dialyzer.mk new file mode 100644 index 0000000..8754919 --- /dev/null +++ b/plugins/dialyzer.mk @@ -0,0 +1,34 @@ +# Copyright (c) 2013-2014, Loïc Hoguin +# This file is part of erlang.mk and subject to the terms of the ISC License. + +.PHONY: plt distclean-plt dialyze + +# Configuration. + +DIALYZER_PLT ?= $(CURDIR)/.$(PROJECT).plt +export DIALYZER_PLT + +PLT_APPS ?= +DIALYZER_OPTS ?= -Werror_handling -Wrace_conditions \ + -Wunmatched_returns # -Wunderspecs + +# Core targets. + +distclean:: distclean-plt + +help:: + @printf "%s\n" "" \ + "Dialyzer targets:" \ + " plt Build a PLT file for this project" \ + " dialyze Analyze the project using Dialyzer" + +# Plugin-specific targets. + +plt: deps app + @dialyzer --build_plt --apps erts kernel stdlib $(PLT_APPS) $(ALL_DEPS_DIRS) + +distclean-plt: + $(gen_verbose) rm -f $(DIALYZER_PLT) + +dialyze: + @dialyzer --src src --no_native $(DIALYZER_OPTS) -- cgit v1.2.3