sudo: false
dist: trusty
language: cpp

stages:
  - name: test
  - name: build
    # Don't run build stage for pull requests and other branches than master
    # to save time and resources.
    if: type != pull_request AND (branch = master OR tag IS present)

jobs:
  include:
    # Build with clang and run tests on the host system (Ubuntu).
    - &test-ubuntu
      stage: test
      compiler: clang
      python: 2.7
      addons:
        apt:
          sources: ['ubuntu-toolchain-r-test']
          packages: ['cmake', 'g++-5']
      before_install:
        - export ASAN_OPTIONS="symbolize=1"
      install:
        - nvm install 10
        - nvm use 10
        - pip install --user flake8==3.4.1
        # get jsvu in order to get more js engines
        - npm install jsvu -g
        - export PATH="${HOME}/.jsvu:${PATH}"
        - jsvu --os=linux64 --engines=spidermonkey
      before_script:
        - ./check.py --test-waterfall --only-prepare
      script:
        - set -o errexit
        - flake8
        - BUILD_SUBDIR=${BUILD_SUBDIR:-.}
        - mkdir -p ${BUILD_SUBDIR} && cd ${BUILD_SUBDIR}
        - cmake ${TRAVIS_BUILD_DIR} -DCMAKE_C_FLAGS="$COMPILER_FLAGS" -DCMAKE_CXX_FLAGS="$COMPILER_FLAGS" -DCMAKE_INSTALL_PREFIX=install
        - make -j2 install
        - cd ${TRAVIS_BUILD_DIR}
        - ./check.py --test-waterfall --binaryen-bin=${BUILD_SUBDIR}/install/bin

    - <<: *test-ubuntu
      env: |
        BUILD_SUBDIR=out

    - <<: *test-ubuntu
      env: |
        COMPILER_FLAGS="-fsanitize=undefined -fno-sanitize-recover=all -fsanitize-blacklist=$(pwd)/ubsan.blacklist"

    # FIXME we currently must disable LSAN entirely, see #1351
    #- <<: *test-ubuntu
    #  env: |
    #    COMPILER_FLAGS="-fsanitize=address"

    - <<: *test-ubuntu
      env: |
        COMPILER_FLAGS="-fsanitize=thread"

    # Build with gcc 5 and run tests on the host system (Ubuntu).
    - <<: *test-ubuntu
      compiler: gcc
      env: |
        CC="gcc-5"
        CXX="g++-5"

    # Build the .js outputs using emcc
    - &test-emcc
      stage: test
      compiler: clang
      python: 2.7
      language: node_js
      sudo: required
      services:
        - docker
      before_install:
        - docker run -dit --name emscripten -v $(pwd):/src trzeci/emscripten:sdk-incoming-64bit bash
      script:
        # run binaryen.js and wasm.js tests before and after building, so we see if the bundled
        # version is good too
        - docker exec -it emscripten bash ./travis-emcc-tests.sh

    # Build with gcc 6.3 and run tests on Alpine Linux (inside chroot).
    # Note: Alpine uses musl libc.
    - &test-alpine
      stage: test
      sudo: true
      language: minimal
      compiler: gcc
      env: ARCH=x86_64
      before_install:
        - docker run -w /src -dit --name alpine -v $(pwd):/src node:10-alpine
        - alpine() { docker exec -it alpine "$@"; }
      install:
        - alpine apk update
        - alpine apk add build-base cmake git python2
      before_script:
        - alpine ./check.py --test-waterfall --only-prepare
      script:
        - alpine cmake .
        - alpine make -j2
        - alpine ./check.py --test-waterfall

    # Build statically linked release binaries with gcc 6.3 on Alpine Linux
    # (inside chroot). If building a tagged commit, then deploy release tarball
    # to GitHub Releases.
    - &build-alpine
      <<: *test-alpine
      stage: build
      env: ARCH=x86_64
      # Don't run before_script inherited from *test-alpine.
      before_script: skip
      script:
        - alpine cmake -DCMAKE_BUILD_TYPE=Release
                       -DCMAKE_VERBOSE_MAKEFILE=ON
                       -DCMAKE_CXX_FLAGS="-static -no-pie"
                       -DCMAKE_C_FLAGS="-static -no-pie" .
        - alpine make -j2
        - alpine find bin/ -type f -perm -u=x -exec strip {} +
        - alpine ls -lh bin/
        # Check if the built executables are really statically linked.
        - if [ -n "$(find bin/ -type f -perm -u=x -exec file {} + | grep -Fvw 'statically linked')" ]; then
              file bin/*; false;
          fi
      before_deploy:
        - PKGNAME="binaryen-$TRAVIS_TAG-$ARCH-linux"
        - mv bin binaryen-$TRAVIS_TAG
        - tar -czf $PKGNAME.tar.gz binaryen-$TRAVIS_TAG
        - sha256sum $PKGNAME.tar.gz > $PKGNAME.tar.gz.sha256
      deploy:
        provider: releases
        api_key:
          secure: "cu6CD5BaycXdCylvcs+Fho5+OVTkh9mZwH8RTnNpXo9hAQzLJDFgcNBHeXHEHtcp4IWf/YZSMu48UKnpU9sP5iF0AS4rtuEBJk5gOKkgB8GWnuIOePFkfANAZMN+EncuUwhAdN56iOAESXqnlHYgmJjyRVCHOxiezuWTOYui4lxoIAdxvOMJc3E9yfzUq4Epm2GDszSDN7ObmRIJpVgDXD9Sze1Xv4IkbIwc0biCmduGGLp3ow2KM+RZ4tOF0c8P0ki49vOFHr6n2Vmqg0QCiVNd4JJBRBCGn6Tzip2jsTQewnUUvpYCZafLeRV//v//voNA6ZUz91yXR23GIhkfdlyuqnz3/7l335Sa749M1lpYfSRWvwg9mJEqP66mxqTrWzj1xSItr9T+p0WhSmRN/4UEJPuItYPSma6kfv+H7qhLa3ZYKECH8hHW79grYmUWtiX0vQVIgnctJGgboPNLfG/1mNtmCI241wK0S3zvL2okdZH8/PqxfllYHMBTUp9lUrop8eoLKPgHZPm6+V20dgTUgOuGTZzTWwQ7Uk/Pg8JMUgkre5y0eo6pP3z0vDW1NNFNhouJ5oGkAeK/HAznr8Q0zWWF1vGFhoyC8ok/IJ7yKxK9scJVPBDe4oox6tr1zlsxzNEYE0/mY3JjuWV0z8RgjrIAbRe8IpGTkYz5VOM="
        file: binaryen-$TRAVIS_TAG-*.tar.gz*
        file_glob: true
        skip_cleanup: true
        on:
          tags: true

    # Build binaries for other architectures using QEMU user-mode emulation.
    # Note: We don't run tests for these architectures, because some fail under
    #       QEMU/binfmt and it takes too long time (hits time limit on Travis).
    # Note: We had to remove ppc64le, because it takes more than 50 minutes
    #       (Travis limit) to build. :(
    - <<: *build-alpine
      env: ARCH=x86

    - <<: *build-alpine
      env: ARCH=aarch64

    - <<: *build-alpine
      env: ARCH=armhf

notifications:
  email: false
