AMD64
no language set
Git
LLNL/zfp:.travis.yml@1fa8dbb
language:
  - generic

matrix:
  include:
    - os: linux
      dist: xenial
      compiler: gcc-6
      addons:
        apt:
          sources: ubuntu-toolchain-r-test
          packages:
            - gcc-6
            - g++-6
            - gfortran-6
            - libpython3.5-dev
            - python3-numpy
            - python3-pip
      env: CC='gcc-6' CXX='g++-6' FC='gfortran-6' FORTRAN_STANDARD='2003' PYTHON_VERSION='3.5' COVERAGE='ON'

    - os: linux
      dist: xenial
      compiler: clang-3.6
      addons: &clang36
        apt:
          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-trusty']
          packages:
            - clang-3.6
            - g++-7
            - gfortran-6
            - libpython3.5-dev
            - python3-numpy
            - python3-pip
      env: CC='clang-3.6' CXX='clang++-3.6' FC='gfortran-6' FORTRAN_STANDARD='2003' PYTHON_VERSION='3.5'

    - os: linux
      dist: xenial
      compiler: clang-4.0
      before_install:
        - export LD_LIBRARY_PATH=/usr/local/clang/lib:$LD_LIBRARY_PATH
      addons: &clang40
        apt:
          sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-trusty-4.0']
          packages:
            - clang-4.0
            - g++-7
            - gfortran-6
            - libpython3.5-dev
            - python3-numpy
            - python3-pip
      env: CC='clang-4.0' CXX='clang++-4.0' FC='gfortran-6' FORTRAN_STANDARD='2003' PYTHON_VERSION='3.5'

    - os: linux
      dist: xenial
      compiler: gcc-4.4
      addons:
        apt:
          sources: ubuntu-toolchain-r-test
          packages:
            - gcc-4.4
            - g++-4.4
            - gfortran-4.4
            - libpython3.5-dev
            - python3-numpy
            - python3-pip
      env: CC='gcc-4.4' CXX='g++-4.4' FC='gfortran-4.4' FORTRAN_STANDARD='2003' PYTHON_VERSION='3.5'

    - os: linux
      dist: xenial
      compiler: gcc-4.7
      addons:
        apt:
          sources: ubuntu-toolchain-r-test
          packages:
            - gcc-4.7
            - g++-4.7
            - gfortran-4.7
            - libpython3.5-dev
            - python3-numpy
            - python3-pip
      env: CC='gcc-4.7' CXX='g++-4.7' FC='gfortran-4.7' FORTRAN_STANDARD='2003' PYTHON_VERSION='3.5'

    - os: linux
      dist: xenial
      compiler: gcc-4.8
      addons:
        apt:
          sources: ubuntu-toolchain-r-test
          packages:
            - gcc-4.8
            - g++-4.8
            - gfortran-4.8
            - libpython3.5-dev
            - python3-numpy
            - python3-pip
      env: CC='gcc-4.8' CXX='g++-4.8' FC='gfortran-4.8' FORTRAN_STANDARD='2003' PYTHON_VERSION='3.5'

    - os: linux
      dist: xenial
      compiler: gcc-4.9
      addons:
        apt:
          sources: ubuntu-toolchain-r-test
          packages:
            - gcc-4.9
            - g++-4.9
            - gfortran-4.9
            - libpython3.5-dev
            - python3-numpy
            - python3-pip
      env: CC='gcc-4.9' CXX='g++-4.9' FC='gfortran-4.9' FORTRAN_STANDARD='2003' PYTHON_VERSION='3.5'

    - os: linux
      dist: trusty
      compiler: gcc-5
      addons:
        apt:
          sources: ubuntu-toolchain-r-test
          packages:
            - gcc-5
            - g++-5
            - gfortran-5
            - libpython2.7
            - python-pip
      env: CC='gcc-5' CXX='g++-5' FC='gfortran-5' FORTRAN_STANDARD='2003' PYTHON_VERSION='2.7'

    - os: linux
      dist: trusty
      compiler: gcc-6
      addons:
        apt:
          sources: ubuntu-toolchain-r-test
          packages:
            - gcc-6
            - g++-6
            - gfortran-6
            - libpython2.7
      env: CC='gcc-6' CXX='g++-6' FC='gfortran-6' FORTRAN_STANDARD='2003' PYTHON_VERSION='2.7'

    - os: linux
      dist: xenial
      compiler: gcc-6
      addons:
        apt:
          sources: ubuntu-toolchain-r-test
          packages:
            - gcc-6
            - g++-6
            - gfortran-6
            - libpython3.5-dev
            - python3-numpy
            - python3-pip
      env: CC='gcc-6' CXX='g++-6' FC='gfortran-6' FORTRAN_STANDARD='2003' PYTHON_VERSION='3.5' C_STANDARD='90'

    - os: linux
      dist: xenial
      compiler: gcc-6
      addons:
        apt:
          sources: ubuntu-toolchain-r-test
          packages:
            - gcc-6
            - g++-6
            - gfortran-6
            - libpython3.5-dev
            - python3-numpy
            - python3-pip
      env: CC='gcc-6' CXX='g++-6' FC='gfortran-6' FORTRAN_STANDARD='2003' PYTHON_VERSION='3.5' C_STANDARD='11'

    - os: linux
      dist: xenial
      compiler: gcc-6
      addons:
        apt:
          sources: ubuntu-toolchain-r-test
          packages:
            - gcc-6
            - g++-6
            - gfortran-6
            - libpython3.5-dev
            - python3-numpy
            - python3-pip
      env: CC='gcc-6' CXX='g++-6' FC='gfortran-6' FORTRAN_STANDARD='2003' PYTHON_VERSION='3.5' CXX_STANDARD='11'

    - os: linux
      dist: xenial
      compiler: gcc-6
      addons:
        apt:
          sources: ubuntu-toolchain-r-test
          packages:
            - gcc-6
            - g++-6
            - gfortran-6
            - libpython3.5
            - python3-numpy
            - python3-pip
      env: CC='gcc-6' CXX='g++-6' FC='gfortran-6' FORTRAN_STANDARD='2003' PYTHON_VERSION='3.5' CXX_STANDARD='14'

    - os: linux
      dist: xenial
      compiler: gcc-6
      addons:
        apt:
          sources: ubuntu-toolchain-r-test
          packages:
            - gcc-6
            - g++-6
            - gfortran-6
            - libpython3.5
            - python3-numpy
            - python3-pip
      env: CC='gcc-6' CXX='g++-6' FC='gfortran-6' FORTRAN_STANDARD='2008' PYTHON_VERSION='3.5'

    - os: linux
      dist: xenial
      compiler: gcc-7
      addons:
        apt:
          sources: ubuntu-toolchain-r-test
          packages:
            - gcc-7
            - g++-7
            - gfortran-7
            - libpython3.5
            - python3-numpy
            - python3-pip
      env: CC='gcc-7' CXX='g++-7' FC='gfortran-7' FORTRAN_STANDARD='2008' PYTHON_VERSION='3.5'

    - os: osx
      osx_image: xcode7.3
      compiler: gcc
      env: CC='gcc' CXX='g++' PYTHON_VERSION='3.5'

    - os: osx
      osx_image: xcode8.3
      compiler: gcc
      env: CC='gcc' CXX='g++' PYTHON_VERSION='2.7'

    - os: osx
      osx_image: xcode7.3
      compiler: clang
      env: CC='clang' CXX='clang++' PYTHON_VERSION='3.5'

    - os: osx
      osx_image: xcode8.3
      compiler: clang
      env: CC='clang' CXX='clang++' PYTHON_VERSION='2.7'

script:
  - if [ "$TRAVIS_OS_NAME" == "osx" ]; then pyenv root; fi
  - |
    if [ "$TRAVIS_OS_NAME" = "osx" ] && [ "$PYTHON_VERSION" = "2.7" ]; then
        pyenv install 2.7.12;
        export PYTHON_INCLUDE_DIR=$(pyenv root)/versions/2.7.12/include/python2.7;
        export PYTHON_LIBRARY=$(pyenv root)/versions/2.7.12/lib/libpython2.7.dylib;
        export PYTHON_EXECUTABLE=$(pyenv root)/versions/2.7.12/bin/python2.7;
    fi
  - |
    if [ "$TRAVIS_OS_NAME" = "osx" ] && [ "$PYTHON_VERSION" = "3.5" ]; then
        pyenv install 3.5.0;
        export PYTHON_INCLUDE_DIR=$(pyenv root)/versions/3.5.0/include/python3.5m;
        export PYTHON_LIBRARY=$(pyenv root)/versions/3.5.0/lib/libpython3.5m.a;
        export PYTHON_EXECUTABLE=$(pyenv root)/versions/3.5.0/bin/python3.5m;
    fi
  - |
    if [ "$TRAVIS_OS_NAME" == "osx" ]; then
        $PYTHON_EXECUTABLE -m pip install --upgrade 'pip<21';
        $PYTHON_EXECUTABLE -m pip install -r ${TRAVIS_BUILD_DIR}/python/requirements.txt;
    fi

  - |
    if [ "$TRAVIS_OS_NAME" = "linux" ]; then
        export PYTHON_EXECUTABLE=/usr/bin/python$PYTHON_VERSION;
        source /etc/lsb-release;
    fi
  - |
    if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$PYTHON_VERSION" = "2.7" ]; then
        export PYTHON_INCLUDE_DIR=/usr/include/python2.7;
        export PYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython2.7.so;
    fi
  - |
    if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$PYTHON_VERSION" = "3.5" ]; then
        export PYTHON_INCLUDE_DIR=/usr/include/python3.5m;
        export PYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.5m.so;
        sudo $PYTHON_EXECUTABLE -m pip install --upgrade 'pip<21';
        sudo $PYTHON_EXECUTABLE -m pip install --upgrade cython;
    fi
  - |
    if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$DISTRIB_CODENAME" = "trusty" ] && [ "$PYTHON_VERSION" = "2.7" ]; then
        sudo $PYTHON_EXECUTABLE -m pip install --upgrade 'pip<21';
        sudo $PYTHON_EXECUTABLE -m pip install -r ${TRAVIS_BUILD_DIR}/python/requirements.txt;
    fi
  - |
    if [ "$TRAVIS_OS_NAME" = "linux" ] && [ "$DISTRIB_CODENAME" = "trusty" ] && [ "$PYTHON_VERSION" = "3.5" ]; then
        echo "Python 3.5 not supported on Ubuntu Trusty";
        exit 1;
    fi

  - printenv | grep PYTHON
  - ./travis.sh

after_success:
  - if [[ -n "${COVERAGE}" ]]; then bash <(curl -s https://codecov.io/bash); fi
Build Config
{
  "os": [
    "linux"
  ],
  "dist": "trusty",
  "sudo": false,
  "cache": {
    "pip": true
  },
  "python": [
    "3.6"
  ],
  "script": [
    "make fmt",
    "make lint",
    "git diff --exit-code",
    "make test",
    "make docker-build",
    "make docker-login docker-push"
  ],
  "install": [
    "make deps"
  ],
  "language": "python",
  "services": [
    "docker",
    "redis-server"
  ]
}