Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Cosmetics.
[simgrid.git] / .travis.yml
index c66dfc9..4368a85 100644 (file)
@@ -5,28 +5,36 @@
 #   apt-get libns3-dev ns3
 #
 #
+dist: xenial
 language: cpp
 compiler:
    - gcc
-#  - clang # boost 1.48 raises an error on clang:
-#            /usr/include/boost/signals2/detail/auto_buffer.hpp:565:57: error:
-#              reference to non-static member function must be called
-#                        std::uninitialized_fill( buffer_, buffer_ + size, init_value );
-#                                                                    ^~~~
-#
+#  - clang 
+jdk:
+   - openjdk11
 addons:
-  apt: # Get recent versions of the compiler, even on Ubuntu Precise
-    sources:
-    - ubuntu-toolchain-r-test
+  apt:
+    update: true
+    allow_unauthenticated: yes
+    packages:
+    - cmake
+    - valgrind
+    - gfortran
+    - libboost-dev
+    - libboost-all-dev
+    - libdw-dev
+    - libevent-dev
+    - libunwind8-dev
+#    - pybind11-dev # Not available in Xenial
+  homebrew:
     packages:
-    - gcc-4.7
-    - g++-4.7
+    - python
   coverity_scan:
     project:
-      name: "mquinson/simgrid"
+      name: "simgrid/simgrid"
       description: "Build submitted via Travis CI"
     notification_email: martin.quinson@ens-rennes.fr
-    build_command_prepend: "cmake -Denable_documentation=OFF -Denable_coverage=OFF -Denable_java=OFF -Denable_model-checking=OFF -Denable_lua=OFF -Denable_compile_optimizations=OFF -Denable_smpi=ON -Denable_smpi_MPICH3_testsuite=OFF -Denable_compile_warnings=OFF ."
+    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 ."
     build_command:   "make VERBOSE=1"
     branch_pattern: coverity
 
@@ -39,20 +47,12 @@ addons:
 #   - cd ..
 #   - ls -lR $TRAVIS_BUILD_DIR/LuaInstall
 
-# Install libboost-chrono1.48-dev to get boost 1.48 on Ubuntu Precise. What we really want is libboost-dev libboost-all-dev
-# Still need sudo for update-alternatives
-before_install:
-   - if [ ${TRAVIS_OS_NAME} = 'linux' ] ; then sudo add-apt-repository --yes ppa:kubuntu-ppa/backports ; fi # cmake higher than 2.8.7
-   - if [ ${TRAVIS_OS_NAME} = 'linux' ] ; then sudo apt-get update  -qq ; fi
-   - if [ ${TRAVIS_OS_NAME} = 'linux' ] ; then sudo apt-get install -y cmake valgrind default-jdk gfortran libboost-chrono1.48-dev ; fi
-   - if [ ${TRAVIS_OS_NAME} = 'linux' ] ; then sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.7 50 ; fi
-   - if [ ${TRAVIS_OS_NAME} = 'linux' ] ; then sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.7 50 ; fi
 script:
-   - cmake -Denable_documentation=OFF -Denable_coverage=OFF -Denable_java=ON -Denable_model-checking=OFF -Denable_lua=OFF -Denable_compile_optimizations=OFF -Denable_smpi=ON -Denable_smpi_MPICH3_testsuite=OFF -Denable_compile_warnings=ON . && make VERBOSE=1 && ctest --output-on-failure --timeout 100
-   - ./tools/internal/travis-sonarqube.sh
-# branches:
-#   only:
-#      - master
+   - if [[ "$TRAVIS_OS_NAME" == "osx"   ]]; then cmake -Denable_model-checking=OFF -Denable_documentation=OFF -Denable_coverage=ON -Denable_java=ON -Denable_lua=OFF -Denable_compile_optimizations=ON -Denable_smpi=ON -Denable_smpi_MPICH3_testsuite=OFF -Denable_compile_warnings=ON .; fi
+   - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then cmake -Denable_model-checking=ON  -Denable_documentation=OFF -Denable_coverage=ON -Denable_java=ON -Denable_lua=OFF -Denable_compile_optimizations=ON -Denable_smpi=ON -Denable_smpi_MPICH3_testsuite=ON -Denable_compile_warnings=ON . || (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) ; fi
+   # run make and ctest in the sonar wrapper on master/linux; run it directly in PR or OSX
+   # - if [[ -e Makefile ]] && [[ "$TRAVIS_OS_NAME" == "linux" ]] && [[ "${TRAVIS_PULL_REQUEST}" == "false" ]]; then ./tools/internal/travis-sonarqube.sh make -j2 VERBOSE=1; else make -j2 VERBOSE=1 && ctest -j2 --output-on-failure ; fi
+   - make -j2 VERBOSE=1 all tests && ctest -j2 --output-on-failure
 notifications:
   recipients:
     - martin.quinson@ens-rennes.fr
@@ -60,6 +60,8 @@ notifications:
     on_success: change
     on_failure: always
   irc:
+    on_success: change
+    on_failure: always
     channels:
       - "irc.debian.org#simgrid"
   template: