f15c371403
The existing kernel module logic does not detect failed kernel module builds. This is because the module build logic is a long shell chain that invokes make macros which are not intended to be used in this way. The essense of the issue is that we get a shell chain that looks like: cmd && cmd && var=value; cmd && var=value; cmd; The shell breaks this into three separate commands. The first builds the modules. The other two are the macro invocations. So the result of the command is the result of the last macro invocation, which will always succeed even if the modules fail to build. The issue is made worse by the existing build rule conflating the built kernel modules and the installed kernel modules. Fix this by reducing the built kernel module command to a single shell command and creating a separate target INSTALLED_KERNEL_MODULES. Any kernel module build failure will show up properly. The commands for INSTALLED_KERNEL_MODULES do not invoke any macros and should avoid the issue described above. Finally, this also removes the fake target no-external-modules and unifies the install logic for in-tree and out-of-tree modules. Change-Id: I3d13056e217e1e937c8c3a345032682ffc394bca |
||
---|---|---|
.. | ||
addonsu.mk | ||
apicheck.mk | ||
bacon.mk | ||
dt_image.mk | ||
generate_lineage_sdk_coverage.mk | ||
http_curl_prebuilt.sh | ||
kernel.mk |