Merge pull request #10306 from gilles-peskine-arm/config-error-on-removed-options-mbedtls

Mechanism to error out on removed configuration options
diff --git a/scripts/code_size_compare.py b/scripts/code_size_compare.py
index 8ed5f9c..171aafe 100755
--- a/scripts/code_size_compare.py
+++ b/scripts/code_size_compare.py
@@ -190,7 +190,7 @@
         self.compiler = size_dist_info.compiler
         self.opt_level = size_dist_info.opt_level
 
-        self.make_cmd = ['make', '-j', 'lib']
+        self.make_cmd = ['make', '-f', './scripts/legacy.make', '-j', 'lib']
 
         self.host_arch = host_arch
         self.logger = logger
@@ -287,7 +287,7 @@
         """
         self.repo_path = "."
         self.git_command = "git"
-        self.make_clean = 'make clean'
+        self.make_clean = 'make -f ./scripts/legacy.make clean'
 
         self.git_rev = git_rev
         self.pre_make_cmd = pre_make_cmd
@@ -319,6 +319,10 @@
                  git_worktree_path, self.git_rev], cwd=self.repo_path,
                 stderr=subprocess.STDOUT
             )
+            subprocess.check_output(
+                [self.git_command, "submodule", "update", "--init", "--recursive"],
+                cwd=git_worktree_path, stderr=subprocess.STDOUT
+            )
 
         return git_worktree_path
 
diff --git a/scripts/footprint.sh b/scripts/footprint.sh
index 1f29451..f41c745 100755
--- a/scripts/footprint.sh
+++ b/scripts/footprint.sh
@@ -85,9 +85,9 @@
         scripts/config.py --force -f ${CRYPTO_CONFIG_H} set MBEDTLS_PSA_DRIVER_GET_ENTROPY || true
     } >/dev/null 2>&1
 
-    make clean >/dev/null
+    make -f scripts/legacy.make clean >/dev/null
     CC=arm-none-eabi-gcc AR=arm-none-eabi-ar LD=arm-none-eabi-ld \
-        CFLAGS="$ARMGCC_FLAGS" make lib >/dev/null
+        CFLAGS="$ARMGCC_FLAGS" make -f scripts/legacy.make lib >/dev/null
 
     OUT="size-${NAME}.txt"
     arm-none-eabi-size -t library/libmbed*.a > "$OUT"
diff --git a/scripts/memory.sh b/scripts/memory.sh
index d119374..ffce225 100755
--- a/scripts/memory.sh
+++ b/scripts/memory.sh
@@ -59,8 +59,8 @@
 
     printf "    Executable size... "
 
-    make clean
-    CFLAGS=$CFLAGS_EXEC make OFLAGS=-Os lib >/dev/null 2>&1
+    make -f ./scripts/legacy.make clean
+    CFLAGS=$CFLAGS_EXEC make -f ./scripts/legacy.make OFLAGS=-Os lib >/dev/null 2>&1
     cd programs
     CFLAGS=$CFLAGS_EXEC make OFLAGS=-Os ssl/$CLIENT >/dev/null
     strip ssl/$CLIENT
@@ -69,8 +69,8 @@
 
     printf "    Peak ram usage... "
 
-    make clean
-    CFLAGS=$CFLAGS_MEM make OFLAGS=-Os lib >/dev/null 2>&1
+    make -f ./scripts/legacy.make clean
+    CFLAGS=$CFLAGS_MEM make -f ./scripts/legacy.make OFLAGS=-Os lib >/dev/null 2>&1
     cd programs
     CFLAGS=$CFLAGS_MEM make OFLAGS=-Os ssl/$CLIENT >/dev/null
     cd ..
@@ -103,8 +103,8 @@
 
 printf "building server... "
 
-make clean
-make lib >/dev/null 2>&1
+make -f ./scripts/legacy.make clean
+make -f ./scripts/legacy.make lib >/dev/null 2>&1
 (cd programs && make ssl/ssl_server2) >/dev/null
 cp programs/ssl/ssl_server2 .
 
@@ -123,7 +123,7 @@
 # cleanup
 
 mv $CONFIG_BAK $CONFIG_H
-make clean
+make -f scripts/legacy.make clean
 rm ssl_server2
 
 exit $FAILED
diff --git a/tests/scripts/basic-build-test.sh b/tests/scripts/basic-build-test.sh
index 80012b9..2984226 100755
--- a/tests/scripts/basic-build-test.sh
+++ b/tests/scripts/basic-build-test.sh
@@ -71,11 +71,10 @@
 # Step 1 - Make and instrumented build for code coverage
 export CFLAGS=' --coverage -g3 -O0 '
 export LDFLAGS=' --coverage'
-make clean
+make -f scripts/legacy.make clean
 cp "$CONFIG_H" "$CONFIG_BAK"
 scripts/config.py full
-make
-
+make -f scripts/legacy.make
 
 # Step 2 - Execute the tests
 TEST_OUTPUT=out_${PPID}
@@ -119,7 +118,7 @@
 # Step 3 - Process the coverage report
 cd ..
 {
-    make lcov
+    make -f scripts/legacy.make lcov
     echo SUCCESS
 } | tee tests/cov-$TEST_OUTPUT
 
@@ -237,7 +236,7 @@
     touch "basic-build-test-$$.ok"
 } | tee coverage-summary.txt
 
-make clean
+make -f scripts/legacy.make clean
 
 if [ -f "$CONFIG_BAK" ]; then
     mv "$CONFIG_BAK" "$CONFIG_H"