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
      node_js: 9
      addons:
        apt:
          sources: ['ubuntu-toolchain-r-test']
          packages: ['cmake', 'g++-5']
      before_install:
        - export ASAN_OPTIONS="symbolize=1"
      install:
        - 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 the style of a subset of Python code until the other code is updated.
        - flake8 ./scripts/
        - ./check.py --test-waterfall --only-prepare
      script:
        - cmake . -DCMAKE_C_FLAGS="$COMPILER_FLAGS" -DCMAKE_CXX_FLAGS="$COMPILER_FLAGS"
        - make -j2
        - ./check.py --test-waterfall

    - <<: *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
      node_js: 7
      language: node_js
      node_js:
      - node
      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:
        - "wget 'https://raw.githubusercontent.com/alpinelinux/alpine-chroot-install/v0.7.0/alpine-chroot-install' \
              && echo '090d323d887ef3a2fd4e752428553f22a52b87bb  alpine-chroot-install' | sha1sum -c || travis_terminate 1"
        - alpine() { /alpine/enter-chroot -u "$USER" "$@"; }
      install:
        - sudo sh alpine-chroot-install -a "$ARCH" -p 'build-base cmake git nodejs 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
