syzkaller/.travis.yml
Dmitry Vyukov a7383bfac1 Makefile: enable 386 executor build in presubmit
This hacky way to install 386 packages seems to unbreak executor build.
2019-05-07 18:01:24 +02:00

40 lines
1.4 KiB
YAML

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