mirror of
https://github.com/Mercury-Language/mercury.git
synced 2025-12-12 20:34:19 +00:00
tools/make_java_csharp_arena_base:
tools/make_java_csharp_arena_diff:
Use xargs -P to run multiple instances of the compiler in parallel.
Allow the environment variable PARALLEL to control the number of
parallel tasks.
43 lines
971 B
Bash
Executable File
43 lines
971 B
Bash
Executable File
#!/bin/sh
|
|
# vim: ft=sh ts=4 sw=4 et
|
|
#
|
|
# This script is documented in the companion script make_java_csharp_base.
|
|
|
|
if test "${TEST_MMC}" = ""
|
|
then
|
|
echo "make_java_csharp_diff: you need to set TEST_MMC in the environment"
|
|
exit 1
|
|
fi
|
|
|
|
PARALLEL=${PARALLEL:-`nproc 2>/dev/null`}
|
|
PARALLEL=${PARALLEL:-1}
|
|
|
|
root=`/bin/pwd`
|
|
|
|
/bin/rm -fr arena.java arena.csharp > /dev/null 2>&1
|
|
cp -rp arena.base arena.java
|
|
cp -rp arena.base arena.csharp
|
|
|
|
cd ${root}/arena.java
|
|
echo === JAVA ===
|
|
echo *.m | xargs -P${PARALLEL} -n1 -t \
|
|
${TEST_MMC} --grade java --target-code-only
|
|
|
|
cd ${root}/arena.csharp
|
|
echo === CSHARP ===
|
|
echo *.m | xargs -P${PARALLEL} -n1 -t \
|
|
${TEST_MMC} --grade csharp --target-code-only
|
|
|
|
cd ${root}
|
|
diff -ur arena.base.java arena.java > DIFF.ARENA.JAVA 2>&1
|
|
diff -ur arena.base.csharp arena.csharp > DIFF.ARENA.CSHARP 2>&1
|
|
|
|
echo JAVA DIFF START
|
|
cat DIFF.ARENA.JAVA
|
|
echo JAVA DIFF END
|
|
echo CSHARP DIFF START
|
|
cat DIFF.ARENA.CSHARP
|
|
echo CSHARP DIFF END
|
|
|
|
exit 0
|