-# NS3 is disabled because the version in ubuntu precise does not lead
+# NS3 is disabled because the version in ubuntu precise does not lead
# to the same timings (precision error?)
-# Reenable with
+# Reenable with
# cmake -Denable_ns3
# apt-get libns3-dev ns3
#
#
+dist: bionic
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
- packages:
- - gcc-4.7
- - g++-4.7
-# - clang
-
-# Don't install lua from Debian as we need 5.3 and don't have a backport.
-# Installing lua from the source does not make any dynamic library.
-# - curl http://www.lua.org/ftp/lua-5.3.1.tar.gz | tar xz
-# - cd lua-5.3.1
-# - if [ ${TRAVIS_OS_NAME} = 'linux' ] ; then make linux ; else make macosx ; fi
-# - make INSTALL_TOP=$TRAVIS_BUILD_DIR/LuaInstall install
-# - cd ..
-# - ls -lR $TRAVIS_BUILD_DIR/LuaInstall
+ apt:
+ packages:
+ - cmake
+ - valgrind
+ - gfortran
+ - libboost-dev
+ - libboost-all-dev
+ - libdw-dev
+ - libevent-dev
+ - libunwind8-dev
+ - pybind11-dev
+ homebrew:
+ packages:
+ - python
+ coverity_scan:
+ project:
+ 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=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
-# 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
-# branches:
-# only:
-# - master
+jobs:
+ include:
+ - os: linux
+ script:
+ - sudo apt-get update -qq
+ - sudo apt-get install cmake valgrind gfortran libboost-dev libboost-all-dev libdw-dev libevent-dev libunwind8-dev pybind11-dev
+ - (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))
+ - make -j$(nproc) VERBOSE=1 all && make -j$(nproc) tests && ctest -j$(nproc) --output-on-failure
+ - os: windows
+ script:
+ - mv "C:/Program Files/Git/usr/bin/sh.exe" "sh-ignored.exe"
+ - df -h
+ - du -hs /tmp || true
+ - choco install boost-msvc-12 python jdk8
+ - export CC=gcc
+ - export CXX=g++
+ - export PATH='C:\Python39':'C:\local\boost_1_58_0':$PATH
+ - export BOOST_LIBRARYDIR='C:/local/boost_1_58_0/lib64-msvc-12.0'
+ - export BOOST_INCLUDEDIR='C:/local/boost_1_58_0/include'
+ - export JAVA_HOME='C:/Program Files/Java/jdk1.8.0_211'
+ # We need pybind11. SimGrid will pick it automatically if the subdir is here
+ # - git clone --depth=1 https://github.com/pybind/pybind11.git
+ - 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 .
+ - df -h
+ - du -hs /tmp || true
+ - mingw32-make.exe VERBOSE=1 java-all && ctest --output-on-failure -R java
+ # - mingw32-make.exe VERBOSE=1 python-bindings && ctest --output-on-failure -R python
+ - df -h
+ - du -hc /tmp || true
+ - os: osx
+ osx_image: xcode11.4
+ script:
+ - export LIBRARY_PATH=/usr/local/lib/gcc/9
+ - 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 -Denable_lto=OFF .
+ - make -j2 VERBOSE=1 all && make -j2 tests && ctest -j2 --output-on-failure
notifications:
recipients:
- - martin.quinson@loria.fr
+ - martin.quinson@ens-rennes.fr
email:
on_success: change
on_failure: always
irc:
+ on_success: change
+ on_failure: always
channels:
- "irc.debian.org#simgrid"
template:
- "%{repository}/%{branch} (%{commit} - %{author}): %{message}"
-os:
- - linux
- - osx