# This file automatize the testing of SimGrid on Windows using the appveyor.com continuous integration service # # Build logs: https://ci.appveyor.com/project/mquinson/simgrid os: Visual Studio 2015 version: "{build}" clone_depth: 1 # scripts that are called at very beginning, before repo cloning init: - git config --global core.longpaths true - git config --global core.autocrlf input environment: global: BOOST_ROOT: c:\Libraries\boost_1_59_0 BOOST_LIBRARYDIR: c:\Libraries\boost_1_59_0\stage\lib TESH_ARGS: C:/projects/simgrid/bin/tesh --setenv srcdir=C:/projects/simgrid/examples/java --setenv classpath=C:/projects/simgrid/examples/java;C:/projects/simgrid/teshsuite/java;C:/projects/simgrid/simgrid.jar --cd C:/projects/simgrid/examples/java install: # Strawberry perl is the one to work with gcc - choco install --limit-output strawberryperl -version 5.20.1.1 - SET PATH=C:\strawberry\c\bin;C:\strawberry\perl\site\bin;C:\strawberry\perl\bin;%PATH% - cpanm --notest --quiet Win32API::File - cpanm --notest --quiet IPC::Run # Lua #- choco install lua53 # Basic dependencies: gcc and Cmake (must be placed before Perl in the path) - SET PATH=C:\tools\mingw64\bin;%PATH% - choco install --limit-output mingw cmake - rename "C:\Program Files\Git\usr\bin\sh.exe" "sh-ignored.exe" build_script: - SET CFLAGS=-Wno-deprecated-declarations # ignore C:/Libraries/boost_1_59_0/boost/smart_ptr/shared_ptr.hpp:461:22: warning: 'template class std::auto_ptr' is deprecated [-Wdeprecated-declarations] - SET CPPFLAGS=-Wno-deprecated-declarations # ignore issues within boost - cmake -G "MinGW Makefiles" -Denable_lua=OFF -Denable_java=ON -Denable_smpi=OFF -Denable_mallocators=OFF -Denable_lto=OFF . - C:\tools\mingw64\bin\mingw32-make.exe VERBOSE=1 - cd C:/projects/simgrid/examples/java && java -classpath ".;../../simgrid.jar" masterslave.Masterslave ../platforms/platform.xml masterslave/masterslaveDeployment.xml || true # I cant use the cmake test because of the following error: # Test project C:/projects/simgrid # Start 1: mc-replay-random-bug # ^CTerminate batch job (Y/N)? # How dafuq am I supposed to press N on appveyor?? I tried closing stdin, in vain #- bash -c "cd C:/projects/simgrid; exec 0<&-; ctest --output-on-failure" < nul || true #test_script: # find examples/java -name '*tesh'|sed 's|^|- perl %TESH_ARGS% C:/projects/simgrid/|' |sort - perl %TESH_ARGS% C:/projects/simgrid/examples/java/app/bittorrent/app_bittorrent.tesh - perl %TESH_ARGS% C:/projects/simgrid/examples/java/app/centralizedmutex/app_centralizedmutex.tesh - perl %TESH_ARGS% C:/projects/simgrid/examples/java/app/masterworker/app_masterworker.tesh - perl %TESH_ARGS% C:/projects/simgrid/examples/java/app/pingpong/app_pingpong.tesh - perl %TESH_ARGS% C:/projects/simgrid/examples/java/async/dsend/async_dsend.tesh - perl %TESH_ARGS% C:/projects/simgrid/examples/java/cloud/masterworker/cloud_masterworker.tesh - perl %TESH_ARGS% C:/projects/simgrid/examples/java/cloud/migration/cloud_migration.tesh - perl %TESH_ARGS% C:/projects/simgrid/examples/java/dht/chord/dht_chord.tesh - perl %TESH_ARGS% C:/projects/simgrid/examples/java/dht/kademlia/dht_kademlia.tesh - perl %TESH_ARGS% C:/projects/simgrid/examples/java/energy/consumption/energy_consumption.tesh - perl %TESH_ARGS% C:/projects/simgrid/examples/java/energy/vm/energy_vm.tesh - perl %TESH_ARGS% C:/projects/simgrid/examples/java/io/file/io_file.tesh - perl %TESH_ARGS% C:/projects/simgrid/examples/java/io/storage/io_storage.tesh - perl %TESH_ARGS% C:/projects/simgrid/examples/java/process/kill/process_kill.tesh - perl %TESH_ARGS% C:/projects/simgrid/examples/java/process/migration/process_migration.tesh - perl %TESH_ARGS% C:/projects/simgrid/examples/java/process/startkilltime/process_startkilltime.tesh - perl %TESH_ARGS% C:/projects/simgrid/examples/java/process/suspend/process_suspend.tesh - perl %TESH_ARGS% C:/projects/simgrid/examples/java/task/priority/task_priority.tesh - perl %TESH_ARGS% C:/projects/simgrid/examples/java/trace/pingpong/trace_pingpong.tesh artifacts: - path: simgrid.jar name: jarfile # notifications: # - irc: "irc.debian.org#simgrid" # Not implemented by AppVeyor yet :( # Some source of inspiration: # https://github.com/sympy/symengine/blob/master/appveyor.yml <- MS, mingw & mingw64 # https://github.com/dartsim/dart/blob/master/appveyor.yml # https://github.com/osmcode/libosmium/blob/master/appveyor.yml # https://github.com/polysquare/cmake-unit/blob/master/appveyor.yml # https://github.com/openvswitch/ovs/blob/master/appveyor.yml # https://github.com/behdad/harfbuzz/pull/112/files