Check debug targets of submodules
This adds another job to the softload
stage, which ensures that the debug
target builds successfully.
Since some makefiles don't define such a target, we filter based on the
results of make -n debug
first, to ensure that the only failures reported
are those generated by tools invoked by make
.
Some worked examples:
Pipeline for a project with no softload
stage at all (because it's type EXP
in ModuleDB):
https://gitlab.riscosopen.org/bavison/SyncLib/-/pipelines/4155
Pipeline for a project with a softload
stage but where the makefile doesn't define a debug
target (counts as success):
https://gitlab.riscosopen.org/bavison/ConfigLib/-/pipelines/4167
Pipeline for a project with a debug
target which builds successfully:
https://gitlab.riscosopen.org/bavison/SDIODriver/-/pipelines/4169
Pipeline for a project with a debug
target which fails (in this case because a dependency hasn't been merged yet):
https://gitlab.riscosopen.org/bavison/SDIODriver/-/pipelines/4165