diff options
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/travis-build.sh | 40 | ||||
-rwxr-xr-x | scripts/travis-install.sh | 33 |
2 files changed, 73 insertions, 0 deletions
diff --git a/scripts/travis-build.sh b/scripts/travis-build.sh new file mode 100755 index 00000000..d03d66bd --- /dev/null +++ b/scripts/travis-build.sh @@ -0,0 +1,40 @@ +#!/bin/bash +# Test script for travis-ci.org continuous integration. + +# Stop script early on any error; check variables; be verbose +set -eux + +# Paths to tools installed by travis-install.sh +export PATH=${PWD}/gcc-arm-none-eabi-7-2017-q4-major/bin:${PATH} +PYTHON=${PWD}/python-env/bin/python + + +###################################################################### +# Run compile tests for several different MCU types +###################################################################### + +DICTDIR=${PWD}/dict +mkdir -p ${DICTDIR} + +for TARGET in test/configs/*.config ; do + echo "=============== Test compile $TARGET" + make clean + make distclean + unset CC + cp ${TARGET} .config + make olddefconfig + make V=1 + cp out/klipper.dict ${DICTDIR}/$(basename ${TARGET} .config).dict +done + + +###################################################################### +# Verify klippy host software +###################################################################### + +HOSTDIR=${PWD}/hosttest +mkdir -p ${HOSTDIR} + +echo "=============== Test invoke klippy" +$PYTHON klippy/klippy.py config/example.cfg -i /dev/null -o ${HOSTDIR}/output -v -d ${DICTDIR}/atmega2560-16mhz.dict +$PYTHON klippy/parsedump.py ${DICTDIR}/atmega2560-16mhz.dict ${HOSTDIR}/output > ${HOSTDIR}/output-parsed diff --git a/scripts/travis-install.sh b/scripts/travis-install.sh new file mode 100755 index 00000000..759a8c01 --- /dev/null +++ b/scripts/travis-install.sh @@ -0,0 +1,33 @@ +#!/bin/bash +# Build setup script for travis-ci.org continuous integration testing. +# See travis-build.sh for the actual test steps. + +# Stop script early on any error; check variables; be verbose +set -eux + + +###################################################################### +# Install embedded arm gcc +###################################################################### + +echo "=============== Install embedded arm gcc" +GCC_ARM_URL="https://developer.arm.com/-/media/Files/downloads/gnu-rm/7-2017q4/gcc-arm-none-eabi-7-2017-q4-major-linux.tar.bz2" +GCC_ARM_SHA="96a029e2ae130a1210eaa69e309ea40463028eab18ba19c1086e4c2dafe69a6a gcc-arm-none-eabi-7-2017-q4-major-linux.tar.bz2" +GCC_ARM_FILE="$(basename ${GCC_ARM_URL})" + +wget "$GCC_ARM_URL" +FOUND_SHA=`sha256sum "$GCC_ARM_FILE"` +if [ "$FOUND_SHA" != "$GCC_ARM_SHA" ]; then + echo "ERROR: Mismatch on gcc arm sha256" + exit -1 +fi +tar xf "$GCC_ARM_FILE" + + +###################################################################### +# Create python virtualenv environment +###################################################################### + +echo "=============== Install python virtualenv" +virtualenv python-env +./python-env/bin/pip install cffi==1.6.0 pyserial==3.2.1 greenlet==0.4.10 |