CI: add more build warning checks and force them to error.

Add CMAKE_C_FLAGS warnings to highlight potential issue:
"-Wall -Wextra -Wshadow -Wunused-but-set-variable"
And force warning as error with "-Werror"

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
This commit is contained in:
Arnaud Pouliquen
2022-11-28 18:36:41 +01:00
committed by Arnaud Pouliquen
parent 3586171a46
commit 081172c53c
+12 -4
View File
@@ -28,12 +28,15 @@ build_linux(){
pwd || exit 1
ls -l || exit 1
cd libmetal || exit 1
cmake . -Bbuild || exit 1
cmake . -Bbuild \
-DCMAKE_C_FLAGS="-Werror -Wall -Wextra -Wshadow -Wunused-but-set-variable" || exit 1
cd build || exit 1
make || exit 1
export || exit 1
cd ../.. || exit 1
cmake . -Bbuild -DWITH_APPS=on -DWITH_PROXY=on -DCMAKE_INCLUDE_PATH="./libmetal/build/lib/include" -DCMAKE_LIBRARY_PATH="./libmetal/build/lib" || exit 1
cmake . -Bbuild -DCMAKE_C_FLAGS="-Werror -Wall -Wextra -Wshadow -Wunused-but-set-variable" \
-DWITH_APPS=on -DWITH_PROXY=on -DCMAKE_INCLUDE_PATH="./libmetal/build/lib/include" \
-DCMAKE_LIBRARY_PATH="./libmetal/build/lib" || exit 1
cd build || exit 1
make VERBOSE=1 all || exit 1
exit 0
@@ -43,11 +46,16 @@ build_generic(){
echo " Build for generic platform "
apt-get install -y gcc-arm-none-eabi || exit 1
cd libmetal || exit 1
cmake . -Bbuild-generic -DCMAKE_TOOLCHAIN_FILE=template-generic || exit 1
cmake . -Bbuild-generic -DCMAKE_TOOLCHAIN_FILE=template-generic \
-DCMAKE_C_FLAGS="-Werror -Wall -Wextra -Wshadow -Wunused-but-set-variable" || exit 1
cd build-generic || exit 1
make VERBOSE=1 || exit 1
cd ../../ || exit 1
cmake . -Bbuild-generic -DCMAKE_TRY_COMPILE_TARGET_TYPE="STATIC_LIBRARY" -DCMAKE_C_FLAGS="" -DCMAKE_SYSTEM_PROCESSOR="arm" -DCMAKE_C_COMPILER=arm-none-eabi-gcc -DCMAKE_INCLUDE_PATH="./libmetal/build-generic/lib/include" -DCMAKE_LIBRARY_PATH="./libmetal/build-generic/lib" || exit 1
cmake . -Bbuild-generic -DCMAKE_TRY_COMPILE_TARGET_TYPE="STATIC_LIBRARY" \
-DCMAKE_C_FLAGS="-Werror -Wall -Wextra -Wshadow -Wunused-but-set-variable" \
-DCMAKE_SYSTEM_PROCESSOR="arm" -DCMAKE_C_COMPILER=arm-none-eabi-gcc \
-DCMAKE_INCLUDE_PATH="./libmetal/build-generic/lib/include" \
-DCMAKE_LIBRARY_PATH="./libmetal/build-generic/lib" || exit 1
cd build-generic || exit 1
make VERBOSE=1 || exit 1
exit 0