mirror of
https://git.savannah.gnu.org/git/gnuboot.git
synced 2025-02-05 14:34:15 +01:00
Denis 'GNUtoo' Carikli
3faff837dd
While the grub configuration file format is very different from real shell scripts, the similarities are enough to make it pass shellcheck with very few adjustements. The advantage of using shellcheck here is that we can still detect some issues such as variables that are referenced but not assigned. For instance if we add 'echo "$test"' in the beginning of the configuration file we then have: In resources/grub/config/grub.cfg line 24: echo "$test" ^---^ SC2154 (warning): test is referenced but not assigned (for output from commands, use "$(test ...)" ). Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org> Acked-by: Adrien 'neox' Bourmault <neox@gnu.org>
78 lines
2.4 KiB
Bash
Executable file
78 lines
2.4 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
#
|
|
# Various code quality tests to avoid regressions in code quality.
|
|
#
|
|
# Copyright (C) 2023,2024 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
|
#
|
|
# This program is free software: you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation, either version 3 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
report()
|
|
{
|
|
ret=$?
|
|
message="$1"
|
|
|
|
if [ ${ret} -eq 0 ] ; then
|
|
echo "[ OK ] ${message}"
|
|
else
|
|
echo "[ !! ] ${message} failed"
|
|
exit ${ret}
|
|
fi
|
|
}
|
|
|
|
run_shellcheck()
|
|
{
|
|
for path in "$@" ; do
|
|
shellcheck -x "${path}" ; report "${path}"
|
|
done
|
|
}
|
|
|
|
printf "+---------------------+\n"
|
|
printf "| Running lint tests: |\n"
|
|
printf "+---------------------+\n"
|
|
run_shellcheck \
|
|
autogen.sh \
|
|
build \
|
|
download \
|
|
modify \
|
|
update \
|
|
resources/grub/config/grub.cfg \
|
|
resources/packages/coreboot/distclean \
|
|
resources/packages/descriptors/distclean \
|
|
resources/packages/grub/distclean \
|
|
resources/packages/i945-thinkpads-install-utilities/clean \
|
|
resources/packages/i945-thinkpads-install-utilities/distclean \
|
|
resources/packages/i945-thinkpads-install-utilities/download \
|
|
resources/packages/i945-thinkpads-install-utilities/module \
|
|
resources/packages/ich9utils/distclean \
|
|
resources/packages/memtest86plus/distclean \
|
|
resources/packages/payloads/distclean \
|
|
resources/packages/rom_images/distclean \
|
|
resources/packages/roms/distclean \
|
|
resources/packages/roms/download \
|
|
resources/packages/roms/test \
|
|
resources/packages/seabios/distclean \
|
|
resources/packages/src/distclean \
|
|
resources/packages/u-boot-libre/distclean \
|
|
resources/packages/website/distclean \
|
|
resources/scripts/misc/guix.sh \
|
|
resources/scripts/tasks/distclean.sh \
|
|
tests/checkpatch \
|
|
tests/distclean \
|
|
tests/lint \
|
|
website/build.sh \
|
|
website/check.sh
|
|
|
|
printf "+---------------------+\n"
|
|
printf "| Lint tests done |\n"
|
|
printf "+---------------------+\n"
|