support/test-pkg: store lines missing from resulting configuraiton

When a build is skipped, store the lines from the config snippet, that
are missing in the resulting configuration, in a file in the build
directory, for the user to inspect.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Luca Ceresoli <luca@lucaceresoli.net>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Acked-by: Luca Ceresoli <luca@lucaceresoli.net>
Tested-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
Yann E. MORIN 2017-02-08 21:15:25 +01:00 committed by Thomas Petazzoni
parent 47d5da8bcc
commit d5c58ceec2

View File

@ -61,7 +61,7 @@ build_one() {
local url="${2}" local url="${2}"
local cfg="${3}" local cfg="${3}"
local pkg="${4}" local pkg="${4}"
local toolchain line local toolchain line skip
# Using basename(1) on a URL works nicely # Using basename(1) on a URL works nicely
toolchain="$( basename "${url}" .config )" toolchain="$( basename "${url}" .config )"
@ -94,12 +94,19 @@ build_one() {
# or not set) in the actual .config; if one of them is not, it means # or not set) in the actual .config; if one of them is not, it means
# some dependency from the toolchain or arch is not available, in # some dependency from the toolchain or arch is not available, in
# which case this config is untestable and we skip it. # which case this config is untestable and we skip it.
skip=false
while read line; do while read line; do
if ! grep "^${line}\$" "${dir}/.config" >/dev/null 2>&1; then if ! grep "^${line}\$" "${dir}/.config" >/dev/null 2>&1; then
printf ", SKIPPED\n" printf "%s\n" "${line}"
return skip=true
fi fi
done <"${cfg}" done <"${cfg}" >"${dir}/missing.config"
if ${skip}; then
printf ", SKIPPED\n"
return
fi
# Remove file, it's empty anyway.
rm -f "${dir}/missing.config"
if [ -n "${pkg}" ]; then if [ -n "${pkg}" ]; then
printf ", dirclean" printf ", dirclean"