travis: use cache

* travis: cache clang-format installation

* travis: indent

* travis: use user paths for caching

* travis: cache go build results

* travis: use system clang-format

* travis: remove custom libstdc++ installation

Fixes #1252
This commit is contained in:
Denis Efremov 2019-06-25 14:55:46 +03:00 committed by Dmitry Vyukov
parent 82c13b6b49
commit 0a8d1a965a
2 changed files with 6 additions and 12 deletions

View File

@ -5,24 +5,18 @@ go:
- "1.11"
- "1.12"
cache:
directories:
- $HOME/.cache/go-build
- $HOME/gopath/pkg/mod
before_install:
- echo $PATH
- export PATH=`echo $PATH | sed -e 's/:\/usr\/local\/clang-[0-9].[0-9].[0-9]\/bin//'`
# xenial packages are broken and do no allow to cross-compile for both 386 and arm.
# 386 requires gcc-multilib installed and arm requires gcc-arm-linux-gnueabi,
# but these packages are conflicting. This is a hacky way to install 386 headers.
- sudo dpkg --add-architecture i386
- sudo apt-get update
- sudo apt-get install -y -q linux-libc-dev:i386 lib32gcc-5-dev lib32stdc++-5-dev
- wget http://security.ubuntu.com/ubuntu/pool/main/g/gcc-5/libstdc++6_5.4.0-6ubuntu1~16.04.10_amd64.deb
- mkdir ./libc
- dpkg-deb -x ./libstdc++6_5.4.0-6ubuntu1~16.04.10_amd64.deb ./libc
- export LD_LIBRARY_PATH=`pwd`/libc/usr/lib/x86_64-linux-gnu/
- wget http://releases.llvm.org/6.0.1/clang+llvm-6.0.1-x86_64-linux-gnu-ubuntu-14.04.tar.xz
- tar -xf ./clang+llvm-6.0.1-x86_64-linux-gnu-ubuntu-14.04.tar.xz
- sudo cp clang+llvm-6.0.1-x86_64-linux-gnu-ubuntu-14.04/bin/clang-format /usr/local/bin/
- which clang-format
- clang-format --version
install: true

View File

@ -332,7 +332,7 @@ install_prerequisites:
sudo apt-get install -y -q g++-aarch64-linux-gnu || true
sudo apt-get install -y -q g++-powerpc64le-linux-gnu || true
sudo apt-get install -y -q g++-arm-linux-gnueabi || true
sudo apt-get install -y -q ragel
sudo apt-get install -y -q ragel clang-format
go get -u golang.org/x/tools/cmd/goyacc
go get -u github.com/golangci/golangci-lint/cmd/golangci-lint