Merge pull request #6309 from gilles-peskine-arm/all-sh-force-2.28
Backport 2.28: Fix all.sh --force
diff --git a/tests/scripts/all.sh b/tests/scripts/all.sh
index 4705fe8..c0e0d30 100755
--- a/tests/scripts/all.sh
+++ b/tests/scripts/all.sh
@@ -120,6 +120,9 @@
# Treat uninitialised variables as errors.
set -e -o pipefail -u
+# Enable ksh/bash extended file matching patterns
+shopt -s extglob
+
pre_check_environment () {
if [ -d library -a -d include -a -d tests ]; then :; else
echo "Must be run from mbed TLS root" >&2
@@ -294,7 +297,7 @@
-iname CTestTestfile.cmake -o \
-iname CMakeCache.txt \) -exec rm {} \+
# Recover files overwritten by in-tree CMake builds
- rm -f include/Makefile include/mbedtls/Makefile programs/*/Makefile
+ rm -f include/Makefile include/mbedtls/Makefile programs/!(fuzz)/Makefile
# Remove any artifacts from the component_test_cmake_as_subdirectory test.
rm -rf programs/test/cmake_subproject/build
@@ -303,7 +306,9 @@
# Restore files that may have been clobbered by the job
for x in $files_to_back_up; do
- cp -p "$x$backup_suffix" "$x"
+ if [[ -e "$x$backup_suffix" ]]; then
+ cp -p "$x$backup_suffix" "$x"
+ fi
done
}