- env: IMPL=clojure
- env: IMPL=crystal
- env: IMPL=elixir
- - env: IMPL=erlang
+ - env: IMPL=erlang NO_PERF=1 # perf runs out of memory
- env: IMPL=es6
- env: IMPL=factor
- env: IMPL=forth
- env: IMPL=julia
- env: IMPL=lua
- env: IMPL=make
- - env: IMPL=mal BUILD_IMPL=js
+ - env: IMPL=mal BUILD_IMPL=js NO_PERF=1
#- env: IMPL=matlab # licensed (until port to Octave)
- env: IMPL=miniMAL BUILD_IMPL=js
- env: IMPL=nim
#- cat test.err || true; rm -f test.err
# Performance tests
- #- ./.travis_test.sh perf ${IMPL}
- #- cat perf.err || true; rm -f perf.err
+ - [ -z "${NO_PERF}" ] && ./.travis_test.sh perf ${IMPL} || true
+ - cat perf.err || true; rm -f perf.err
echo "IMPL: ${IMPL}"
echo "MAL_IMPL: ${MAL_IMPL}"
-# If NO_DOCKER is blank then launch use a docker image, otherwise
-# use the Travis image/tools directly.
-if [ -z "${NO_DOCKER}" ]; then
+# If NO_DOCKER is blank then launch use a docker image, otherwise use
+# the Travis image/tools directly.
+if [ "${NO_DOCKER}" ]; then
+ MAKE="make"
+else
impl=$(echo "${IMPL}" | tr '[:upper:]' '[:lower:]')
img_impl=$(echo "${3:-${IMPL}}" | tr '[:upper:]' '[:lower:]')
- docker run -it -u $(id -u) -v `pwd`:/mal kanaka/mal-test-${img_impl} \
- make TEST_OPTS="--soft --log-file ../${ACTION}.err" \
- MAL_IMPL=${MAL_IMPL} ${ACTION}^${IMPL}
-else
- make TEST_OPTS="--soft --log-file ../${ACTION}.err" \
- MAL_IMPL=${MAL_IMPL} ${ACTION}^${IMPL}
+ MAKE="docker run -it -u $(id -u) -v `pwd`:/mal kanaka/mal-test-${img_impl} make"
fi
+
+${MAKE} TEST_OPTS="--soft --log-file ../${ACTION}.err" \
+ MAL_IMPL=${MAL_IMPL} ${ACTION}^${IMPL}
+
# no failure so remove error log
rm ${ACTION}.err