language: go dist: xenial go: - "1.11" - "1.12" 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 script: - make install_prerequisites - make presubmit after_success: - bash <(curl -s https://codecov.io/bash) # If the build fails because some code in not formatted, it's nice to see the diffs after formatting. after_failure: - git diff --name-only - git diff