kernel: break the build when depmod finds missing symbols

Change-Id: I033590d2309d4e8fbff3ab6b5a73eb903d5b3be9
Signed-off-by: Jis G Jacob <studiokeys@blissroms.org>
diff --git a/build/tasks/kernel.mk b/build/tasks/kernel.mk
index aef168f..951f57c 100644
--- a/build/tasks/kernel.mk
+++ b/build/tasks/kernel.mk
@@ -364,7 +364,14 @@
     mkdir -p $(4)/lib/modules/0.0/$(3)lib/modules$(6)
     cp $(1) $(4)/lib/modules/0.0/$(3)lib/modules$(6)
     if [ -n "$(8)" ]; then cp -r $(8) $(4)/lib/modules/0.0/; fi
-    $(DEPMOD) -b $(4) 0.0
+    $(DEPMOD) -ae -F $(KERNEL_OUT)/System.map -b $(4) 0.0 2>$(4)/depmod_stderr
+    cat $(4)/depmod_stderr >&2
+    if { grep -q "needs unknown symbol" $(4)/depmod_stderr; }; then \
+      echo "ERROR: kernel module(s) need unknown symbol(s)" >&2; \
+      rm -f $(4)/depmod_stderr; \
+      exit 1; \
+    fi
+    rm -f $(4)/depmod_stderr
     if [ -n "$(8)" ]; then sed -i "/^$$(basename $(8))/d" $(4)/lib/modules/0.0/modules.dep; fi
     sed -e 's/\(.*modules.*\):/\/\1:/g' -e 's/ \([^ ]*modules[^ ]*\)/ \/\1/g' $(4)/lib/modules/0.0/modules.dep > $(2)/lib/modules$(6)/modules.dep
     cp $(4)/lib/modules/0.0/modules.softdep $(2)/lib/modules$(6)