diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 981db87259bb0..74ec0fdefd2bd 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -193,14 +193,31 @@ jobs: rm -rf .git ../apps/.git testfile=tools/ci/testlist/${{matrix.boards}}.dat echo Validating targets in $testfile - testlist=`grep -v -E "^(-|#)|^[C|c][M|m][A|a][K|k][E|e]" $testfile || true` + testlist=`grep -v -E "^(-|#)|^[C|c][M|m][A|a][K|k][E|e]" $testfile || true` + + # For every target in the .dat file for line in $testlist; do firstch=${line:0:1} if [ "X$firstch" == "X/" ]; then dir=`echo $line | cut -d',' -f1` list=`find boards$dir -name defconfig | cut -d'/' -f4,6` for config in ${list}; do - make distclean || true + + # Skip the Excluded Targets, like "-moxa:nsh" + target=${config/\//:} + if grep -e "-$target" $testfile; then + echo Skipping Excluded Target $config + continue + fi + + # Skip the CMake Targets, like "CMake,nucleo-f334r8:adc" + if grep "CMake,$target" $testfile; then + echo Skipping CMake Target $config + continue + fi + + # Validate the target + make distclean >/dev/null 2>&1 || true echo ./tools/refresh.sh --silent $config if ! ./tools/refresh.sh --silent $config; then echo Error: $config:1:1: error: $config is configured incorrectly. To fix it, run '"'tools/refresh.sh $config'"'