From f842619fecb976493563160de086ea271425c9e6 Mon Sep 17 00:00:00 2001
From: Kaspar Schleiser <kaspar@schleiser.de>
Date: Thu, 29 Sep 2016 15:15:21 +0200
Subject: [PATCH] make: improve Makefile.dep

- calls itself recursively until all dependencies are resolved
- automatically include boards/$board/Makefile.dep
- automatically include pkg/$pkg/Makefile.dep
---
 Makefile.dep | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/Makefile.dep b/Makefile.dep
index 5519a2da32..cb23bf041f 100644
--- a/Makefile.dep
+++ b/Makefile.dep
@@ -1,3 +1,10 @@
+#
+OLD_USEMODULE := $(sort $(USEMODULE))
+OLD_USEPKG := $(sort $(USEPKG))
+
+# include board dependencies
+-include $(RIOTBOARD)/$(BOARD)/Makefile.dep
+
 # pull dependencies from drivers
 include $(RIOTBASE)/drivers/Makefile.dep
 
@@ -555,3 +562,13 @@ ifneq (,$(filter random,$(USEMODULE)))
         USEMODULE += tinymt32
     endif
 endif
+
+# include package dependencies
+-include $(USEPKG:%=$(RIOTPKG)/%/Makefile.dep)
+
+# recursively catch transitive dependencies
+USEMODULE := $(sort $(USEMODULE))
+USEPKG := $(sort $(USEPKG))
+ifneq ($(OLD_USEMODULE) $(OLD_USEPKG),$(USEMODULE) $(USEPKG))
+    include $(RIOTBASE)/Makefile.dep
+endif
-- 
GitLab