diff --git a/.travis.yml b/.travis.yml index 76765d98..9b8c6c92 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,7 +10,7 @@ addons: cache: directories: - - downloads + - travis_cache install: ./scripts/travis-install.sh diff --git a/scripts/travis-build.sh b/scripts/travis-build.sh index 866fb8dc..1244cb2a 100755 --- a/scripts/travis-build.sh +++ b/scripts/travis-build.sh @@ -5,8 +5,10 @@ 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 +MAIN_DIR=${PWD} +BUILD_DIR=${PWD}/travis_build +export PATH=${BUILD_DIR}/gcc-arm-none-eabi-7-2017-q4-major/bin:${PATH} +PYTHON=${BUILD_DIR}/python-env/bin/python ###################################################################### @@ -28,7 +30,7 @@ echo "travis_fold:end:check_whitespace" # Run compile tests for several different MCU types ###################################################################### -DICTDIR=${PWD}/dict +DICTDIR=${BUILD_DIR}/dict mkdir -p ${DICTDIR} for TARGET in test/configs/*.config ; do @@ -49,7 +51,7 @@ done # Verify klippy host software ###################################################################### -HOSTDIR=${PWD}/hosttest +HOSTDIR=${BUILD_DIR}/hosttest mkdir -p ${HOSTDIR} echo "travis_fold:start:klippy" diff --git a/scripts/travis-install.sh b/scripts/travis-install.sh index ce1f7f9a..fa3bb50d 100755 --- a/scripts/travis-install.sh +++ b/scripts/travis-install.sh @@ -5,7 +5,10 @@ # Stop script early on any error; check variables; be verbose set -eux -DOWNLOAD_DIR=${PWD}/downloads +MAIN_DIR=${PWD} +BUILD_DIR=${PWD}/travis_build +DOWNLOAD_DIR=${PWD}/travis_cache +mkdir -p ${BUILD_DIR} ${DOWNLOAD_DIR} ###################################################################### @@ -17,9 +20,7 @@ GCC_ARM_URL="https://developer.arm.com/-/media/Files/downloads/gnu-rm/7-2017q4/g GCC_ARM_SHA="96a029e2ae130a1210eaa69e309ea40463028eab18ba19c1086e4c2dafe69a6a gcc-arm-none-eabi-7-2017-q4-major-linux.tar.bz2" GCC_ARM_FILE="$(basename ${GCC_ARM_URL})" -mkdir -p ${DOWNLOAD_DIR} cd ${DOWNLOAD_DIR} - if [ ! -f ${GCC_ARM_FILE} ]; then wget "$GCC_ARM_URL" fi @@ -28,7 +29,7 @@ if [ "$FOUND_SHA" != "$GCC_ARM_SHA" ]; then echo "ERROR: Mismatch on gcc arm sha256" exit -1 fi -cd .. +cd ${BUILD_DIR} tar xf "${DOWNLOAD_DIR}/${GCC_ARM_FILE}" @@ -37,5 +38,6 @@ tar xf "${DOWNLOAD_DIR}/${GCC_ARM_FILE}" ###################################################################### echo "=============== Install python virtualenv" -virtualenv python-env -./python-env/bin/pip install cffi==1.6.0 pyserial==3.2.1 greenlet==0.4.10 +cd ${MAIN_DIR} +virtualenv ${BUILD_DIR}/python-env +${BUILD_DIR}/python-env/bin/pip install cffi==1.6.0 pyserial==3.2.1 greenlet==0.4.10