Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge branch 'random_readwritestate' into 'master'
[simgrid.git] / .travis.yml
1 # NS3 is disabled because the version in ubuntu precise does not lead
2 # to the same timings (precision error?)
3 # Reenable with
4 #   cmake -Denable_ns3
5 #   apt-get libns3-dev ns3
6 #
7 #
8 dist: bionic
9 language: cpp
10 compiler:
11    - gcc
12 #  - clang
13 jdk:
14    - openjdk11
15 addons:
16   apt:
17     packages:
18     - cmake
19     - valgrind
20     - gfortran
21     - libboost-dev
22     - libboost-all-dev
23     - libdw-dev
24     - libevent-dev
25     - libunwind8-dev
26     - pybind11-dev
27   homebrew:
28     packages:
29     - python
30   coverity_scan:
31     project:
32       name: "simgrid/simgrid"
33       description: "Build submitted via Travis CI"
34     notification_email: martin.quinson@ens-rennes.fr
35     build_command_prepend: "cmake -Denable_documentation=OFF -Denable_coverage=ON -Denable_java=OFF -Denable_model-checking=OFF -Denable_lua=OFF -Denable_compile_optimizations=ON -Denable_smpi=ON -Denable_smpi_MPICH3_testsuite=OFF -Denable_compile_warnings=OFF ."
36     build_command:   "make VERBOSE=1"
37     branch_pattern: coverity
38
39 jobs:
40   include:
41     - os: linux
42       script:
43       - sudo apt-get update -qq
44       - sudo apt-get install cmake valgrind gfortran libboost-dev libboost-all-dev libdw-dev libevent-dev libunwind8-dev pybind11-dev
45       - (cmake -Denable_model-checking=ON  -Denable_documentation=OFF -Denable_coverage=ON -Denable_lua=OFF -Denable_compile_optimizations=ON -Denable_smpi=ON -Denable_smpi_MPICH3_testsuite=ON -Denable_compile_warnings=ON -DLTO_EXTRA_FLAG="auto" . || (echo XXX CMakeOutput.log; cat /home/travis/build/simgrid/simgrid/CMakeFiles/CMakeOutput.log; echo XXX CMakeError.log;cat /home/travis/build/simgrid/simgrid/CMakeFiles/CMakeError.log; exit 1))
46       - make -j$(nproc) VERBOSE=1 all && make -j$(nproc) tests && ctest -j$(nproc) --output-on-failure
47     - os: windows
48       script:
49       - mv "C:/Program Files/Git/usr/bin/sh.exe" "sh-ignored.exe"
50       - df -h
51       - du -hs /tmp || true
52       - choco install boost-msvc-12 python jdk8
53       - export CC=gcc
54       - export CXX=g++
55       - export PATH='C:\Python38':'C:\local\boost_1_58_0':$PATH
56       - export BOOST_LIBRARYDIR='C:/local/boost_1_58_0/lib64-msvc-12.0'
57       - export BOOST_INCLUDEDIR='C:/local/boost_1_58_0/include'
58       - export JAVA_HOME='C:/Program Files/Java/jdk1.8.0_211'
59       # We need pybind11. SimGrid will pick it automatically if the subdir is here
60       # - git clone --depth=1 https://github.com/pybind/pybind11.git
61       - cmake -G "MinGW Makefiles" -Denable_java=ON -Denable_msg=ON -Denable_lua=OFF -Denable_documentation=OFF -Denable_smpi=OFF -Denable_mallocators=OFF -Denable_lto=OFF .
62       - df -h
63       - du -hs /tmp || true
64       - mingw32-make.exe VERBOSE=1 java-all && ctest --output-on-failure -R java
65       # - mingw32-make.exe VERBOSE=1 python-bindings && ctest --output-on-failure -R python
66       - df -h
67       - du -hc /tmp || true
68     - os: osx
69       osx_image: xcode11.3
70       script:
71       - export LIBRARY_PATH=/usr/local/lib/gcc/9
72       - cmake -Denable_model-checking=OFF -Denable_documentation=OFF -Denable_coverage=ON -Denable_lua=OFF -Denable_compile_optimizations=ON -Denable_smpi=ON -Denable_smpi_MPICH3_testsuite=OFF -Denable_compile_warnings=ON .
73       - make -j2 VERBOSE=1 all && make -j2 tests && ctest -j2 --output-on-failure
74 notifications:
75   recipients:
76     - martin.quinson@ens-rennes.fr
77   email:
78     on_success: change
79     on_failure: always
80   irc:
81     on_success: change
82     on_failure: always
83     channels:
84       - "irc.debian.org#simgrid"
85   template:
86     - "%{repository}/%{branch} (%{commit} - %{author}): %{message}"