Revert "Speed up solo chez testing (#3322)"

This reverts commit 8e2c6c966a.

There is a test failure on i386 and an out of memory problem on
arm64, so I am reverting this until I get those fixed.
This commit is contained in:
Paulo Matos 2020-07-31 06:28:02 +02:00
parent 8ef22d6334
commit e01fd1a5a7

View File

@ -1,80 +1,22 @@
#!/bin/bash
# Catch INT to kill subprocesses
trap end_make INT
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
if [ -z ${MACH} ]; then
echo "Please define MACH" 1>&2
exit 1
fi
ERR=0
MATS=${MACH}/mats
SUMMARYFILE=${MACH}/summary
declare -a PIDS
# Clean and create summary file
rm -f "${SUMMARYFILE}"
touch "${SUMMARYFILE}"
end_make() {
echo "Caught Ctrl-C" 1>&2
for i in "${!PIDS[@]}"; do
local pid="${PID[$i]}"
echo "Killing pid ${pid}" 1>&2
kill ${pid}
rm -r "${MATS}"."${i}"
done
exit 1
}
runmats() {
local id=$1
local matsdest="${MATS}.${id}"
cp -r "${MATS}" "${matsdest}"
echo make allxhelp "${@:2}"
# Use -l here so we don't overload machines with less than the number
# of parallel tests we force to run
make -l$(nproc) -C "${matsdest}" allxhelp "${@:2}" 2>&1 | tee -a Make.out | grep '^matting ' &
PIDS[$id]="$!"
echo make allxhelp "$@"
make -C ${MACH}/mats allxhelp "$@" 2>&1 | tee -a Make.out | grep '^matting '
}
ARGS=("o=0"
"o=0 cp0=t"
"o=3"
"o=3 cp0=t"
"o=3 cp0=t eval=interpret")
# Split these out so that we get output every 10 minutes on Windows builds.
runmats o=0
runmats o=0 cp0=t
runmats o=3
runmats o=3 cp0=t
runmats o=3 cp0=t eval=interpret
# Run all test classes in parallel
for i in ${!ARGS[@]}; do
runmats $i ${ARGS[$i]}
done
# Wait for all jobs
for i in "${!PIDS[@]}"; do
pid="${PIDS[$i]}"
wait "${pid}"
# Append current contents to final summary file
if [ -f "${MATS}.${i}/summary" ]; then
cat "${MATS}.${i}/summary" >> "${SUMMARYFILE}"
else
echo "ERROR: No summary file for mats.${i}" 1>&2
end_make
ERR=1
fi
done
# All done - sort lines of file for comparison
sort "${SUMMARYFILE}" > "${SUMMARYFILE}.sorted"
if [[ "${ERR}" = "1" ]]; then
exit 1
if [ -f ${MACH}/mats/summary ]; then
cat ${MACH}/mats/summary
diff -q ${DIR}/summary ${MACH}/mats/summary
exit $?
else
cat "${SUMMARYFILE}"
diff -q ${DIR}/summary "${SUMMARYFILE}.sorted"
exit $?
exit 1
fi