Makefile:Create check_{px4,nxp,nuttx,linux} targets from .github/workflows

Apply the principles of third normal form for check targets.
   The list of check is not sourced from the yaml files in
   .github/workflows
This commit is contained in:
David Sidrane 2020-06-19 13:40:36 -07:00 committed by Daniel Agar
parent 76d3e2374b
commit a641982ce7
1 changed files with 16 additions and 0 deletions

View File

@ -62,6 +62,10 @@ all: px4_sitl_default
# define a space character to be able to explicitly find it in strings # define a space character to be able to explicitly find it in strings
space := $(subst ,, ) space := $(subst ,, )
define make_list
$(shell cat .github/workflows/compile_${1}.yml | sed -E 's/[[:space:]]+(.*),/check_\1/g' | grep check_${2})
endef
# Parsing # Parsing
# -------------------------------------------------------------------- # --------------------------------------------------------------------
# assume 1st argument passed is the main target, the # assume 1st argument passed is the main target, the
@ -503,3 +507,15 @@ help:
# Print a list of all config targets. # Print a list of all config targets.
list_config_targets: list_config_targets:
@for targ in $(patsubst %_default,%[_default],$(ALL_CONFIG_TARGETS)); do echo $$targ; done @for targ in $(patsubst %_default,%[_default],$(ALL_CONFIG_TARGETS)); do echo $$targ; done
check_nuttx : $(call make_list,nuttx) \
sizes
check_linux : $(call make_list,linux) \
sizes
check_px4: $(call make_list,nuttx,"px4") \
sizes
check_nxp: $(call make_list,nuttx,"nxp") \
sizes