Gabriele Contini
2019-09-10 82f9d834ad772b2f16b6524f679d14d8a7afe881
.travis.yml
@@ -1,19 +1,100 @@
language: cpp
services: docker
branches:
  only:
    - master
matrix:
   include:
   - os: linux
     dist: bionic
     name: "Ubuntu 18.04 - Travis CI VM"
     addons:
        apt:
          packages:
             - cmake
             - valgrind
             - libssl-dev
             - zlib1g-dev
             - libboost-dev
             - libboost-test-dev
             - libboost-filesystem-dev
             - libboost-iostreams-dev
             - libboost-program-options-dev
             - libboost-system-dev
             - libboost-thread-dev
             - libboost-date-time-dev
   - os: linux
     dist: xenial
     name: "Ubuntu 16.04 - Travis CI VM"
     addons:
        apt:
          packages:
             - cmake
             - valgrind
             - libssl-dev
             - zlib1g-dev
             - libboost-dev
             - libboost-test-dev
             - libboost-filesystem-dev
             - libboost-iostreams-dev
             - libboost-program-options-dev
             - libboost-system-dev
             - libboost-thread-dev
             - libboost-date-time-dev
before_install:
  - sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
  - echo "yes" | sudo add-apt-repository ppa:kalakris/cmake
  - sudo apt-get update -qq
  - sudo apt-get install cmake doxygen valgrind > /dev/null
  - if [ "$CXX" = "g++" ]; then sudo apt-get install -qq g++-4.8; fi
  - if [ "$CXX" = "g++" ]; then export CXX="g++-4.8" CC="gcc-4.8"; fi
  - if [ "$CXX" = "g++" ]; then export CXX="g++-4.8" CC="gcc-4.8"; echo "+++GCC4.8"; fi
   - os: linux
     dist: bionic
     name: "CentOS-7 Docker"
     before_script:
        - docker run --name centos7_toconfigure -v `pwd`:/root/open-license-manager centos:centos7 /bin/bash -c
            "yum -y update && yum -y install cmake boost boost-devel boost-static openssl openssl-devel gcc-c++ valgrind valgrind-devel glibc-static centos-release-scl-rh &&
              yum -y install devtoolset-3-gcc devtoolset-3-gcc-c++ && cd /root/open-license-manager && mkdir build && cd build &&
              CC=/opt/rh/devtoolset-3/root/usr/bin/gcc XX=/opt/rh/devtoolset-3/root/usr/bin/g++ cmake .."
        - docker commit centos7_toconfigure centos7_configured
     script:
        - docker run --name centos7_make -v `pwd`:/root/open-license-manager centos7_configured /bin/bash -c
            "cd /root/open-license-manager/build && make && make install && VIRT_ENV=CONTAINER make test"
   - os: windows
     name: "Widnows server 1803 - Visual Studio 15 2017 Win64 - (/MD)"
     env:
        - CACHE_NAME=boost
     cache:
         directories:
             - "/C/local/boost"
     before_script:
         - sc stop CryptSvc
         - travis_wait 30 ./windows_download_boost.bat
         - cd "/C/Users/travis/build/open-license-manager/open-license-manager"
         - mkdir build
         - cd build && cmake -G "Visual Studio 15 2017 Win64" -DBOOST_ROOT="C:/local/boost" ..
     script:
          - cmake --build . --target install --config Release
          - ctest -C Release
   - os: windows
     name: "Widnows server 1803 - Visual Studio 15 2017 Win64 - (/MT)"
     env:
        - CACHE_NAME=boost
     cache:
         directories:
             - "/C/local/boost"
     before_script:
         #- Regsvr32.exe "C:\Widnows\System32\rsaenh.dll"
         - travis_wait 30 ./windows_download_boost.bat
         - cd "/C/Users/travis/build/open-license-manager/open-license-manager"
         - mkdir build
         - cd build && cmake -G "Visual Studio 15 2017 Win64" -DBOOST_ROOT="C:/local/boost" -DSTATIC_RUNTIME=1 ..
     script:
          - cmake --build . --target install --config Release
          - ctest -C Release
env:
    - CTEST_OUTPUT_ON_FAILURE=1
before_script:
  - cd build/linux && cmake ../..
script:
  - make
    - mkdir build
    - cd build && cmake -DCMAKE_INSTALL_PREFIX=../../install ..
script:
    - make
    - make install
    - make test