summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Sackman <matthew@lshift.net>2010-01-25 12:49:40 +0000
committerMatthew Sackman <matthew@lshift.net>2010-01-25 12:49:40 +0000
commitc03f54957f88e8b08abd296f016c265f9932eefb (patch)
tree7b482b57a3e34e1150e568e3cdd77b7980e1ae7a
parentd511eab3ab944bcafb2b254677cc5e07ab5aec5f (diff)
downloadrabbitmq-server-git-c03f54957f88e8b08abd296f016c265f9932eefb.tar.gz
Made the deps file depend on the includes too, and also force on use_specs when generating the deps otherwise we miss out some transitive includes
-rw-r--r--Makefile5
-rw-r--r--generate_deps3
2 files changed, 4 insertions, 4 deletions
diff --git a/Makefile b/Makefile
index dc975bb1d4..2c376069c0 100644
--- a/Makefile
+++ b/Makefile
@@ -6,10 +6,11 @@ RABBITMQ_SERVER_START_ARGS ?=
RABBITMQ_MNESIA_DIR ?= $(TMPDIR)/rabbitmq-$(RABBITMQ_NODENAME)-mnesia
RABBITMQ_LOG_BASE ?= $(TMPDIR)
+DEPS_FILE=deps.mk
SOURCE_DIR=src
EBIN_DIR=ebin
INCLUDE_DIR=include
-DEPS_FILE=deps.mk
+INCLUDES=$(wildcard $(INCLUDE_DIR)/*.hrl)
SOURCES=$(wildcard $(SOURCE_DIR)/*.erl)
BEAM_TARGETS=$(EBIN_DIR)/rabbit_framing.beam $(patsubst $(SOURCE_DIR)/%.erl, $(EBIN_DIR)/%.beam, $(SOURCES))
TARGETS=$(EBIN_DIR)/rabbit.app $(INCLUDE_DIR)/rabbit_framing.hrl $(BEAM_TARGETS)
@@ -59,7 +60,7 @@ ERL_EBIN=erl -noinput -pa $(EBIN_DIR)
all: $(DEPS_FILE) $(TARGETS)
-$(DEPS_FILE): $(SOURCES)
+$(DEPS_FILE): $(SOURCES) $(INCLUDES)
escript generate_deps $(INCLUDE_DIR) $(SOURCE_DIR) $(DEPS_FILE)
$(EBIN_DIR)/rabbit.app: $(EBIN_DIR)/rabbit_app.in $(BEAM_TARGETS) generate_app
diff --git a/generate_deps b/generate_deps
index dbac2e4238..d438660b73 100644
--- a/generate_deps
+++ b/generate_deps
@@ -51,10 +51,9 @@ write_deps(Hdl, _IncludeDir, {module, Behaviour}) ->
ok = file:write(Hdl, [" $(EBIN_DIR)/", atom_to_list(Behaviour), ".beam"]);
write_deps(Hdl, IncludeDir, {include, Include}) ->
ok = file:write(Hdl, [" ", IncludeDir, "/", Include]).
-
make_deps(Path, Deps) ->
- {ok, Forms} = epp:parse_file(Path, [], []),
+ {ok, Forms} = epp:parse_file(Path, [], [{use_specs, true}]),
Behaviours =
lists:foldl(fun (Form, Acc) -> detect_deps(Form, Acc) end,
[], Forms),