X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/df9d60a93be0c7ff01d43b40fd7df3ffb1eb21fc..1b677716ff09f60a60fdeeaf88e7d60642913ec5:/appveyor.yml diff --git a/appveyor.yml b/appveyor.yml index c30d82123b..4a6b36855f 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,54 +1,79 @@ -# This file is intended to automatize the testing of SimGrid on -# Windows using the appveyor.com continuous integration service +# 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 -platform: - - Win32 # This is Windows 32bits (don't activate since we dont compile properly anyway) -# - x64 # This is Windows 64bits +# scripts that are called at very beginning, before repo cloning +init: +- git config --global core.longpaths true +- git config --global core.autocrlf input environment: - BOOST_ROOT: c:\Libraries\boost - BOOST_LIBRARYDIR: c:\Libraries\boost\stage\lib - -#before_build: -#- call "C:/Program Files (x86)/Microsoft Visual Studio 12.0/Common7/Tools/vsvars32.bat" -#- cd c:\projects\simgrid -# - cmake -G "Visual Studio 12 2013" -DBOOST_ROOT="%BOOST_ROOT%" -DBOOST_LIBRARYDIR="%BOOST_LIBRARYDIR%" -DBoost_USE_STATIC_LIBS="ON" -Denable_debug=ON -Denable_documentation=OFF -Denable_coverage=OFF -Denable_tracing=ON -Denable_java=ON . -# - dir c:\projects\simgrid -# - cmake --build . # be brutal: cmake is my only friend in this windows world. - -before_build: -- ps: >- - mkdir C:\pthreads-win32 - - $source = "ftp://sourceware.org/pub/pthreads-win32/pthreads-w32-2-9-1-release.zip" - - $destination = "C:\pthreads-win32\pthreads-win32.zip" - - Invoke-WebRequest $source -OutFile $destination - - cd C:\pthreads-win32 - - 7z x C:\pthreads-win32\pthreads-win32.zip - + 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: -- '"C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\VsDevCmd"' -- C:\MinGW\msys\1.0\bin\bash -lc "echo \"C:/MinGW /mingw\" > /etc/fstab" -- C:\MinGW\msys\1.0\bin\bash -lc "printenv" -- C:\MinGW\msys\1.0\bin\bash -lc "cp /c/pthreads-win32/Pre-built.2/include/* /c/MinGW/include" -- C:\MinGW\msys\1.0\bin\bash -lc "cp /c/pthreads-win32/Pre-built.2/dll/x86/*.dll /c/MinGW/bin" -- C:\MinGW\msys\1.0\bin\bash -lc "cd /c/projects/simgrid && cmake -G \"MSYS Makefiles\" -DBOOST_ROOT=\"%BOOST_ROOT%\" -DBOOST_LIBRARYDIR=\"%BOOST_LIBRARYDIR%\" -DBoost_USE_STATIC_LIBS=ON -Denable_debug=ON -Denable_documentation=OFF -Denable_coverage=OFF -Denable_tracing=ON -Denable_java=ON ." -- C:\MinGW\msys\1.0\bin\bash -lc "cd /c/projects/simgrid && make" +- 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: +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/async/async.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/bittorrent/bittorrent.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/master_slave_bypass/bypass.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/chord/chord.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/cloud/cloud.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/cloud/migration/migration.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/commTime/commtime.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/kademlia/kademlia.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/master_slave_kill/kill.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/masterslave/masterslave.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/migration/migration.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/mutualExclusion/mutualexclusion.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/pingPong/pingpong.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/priority/priority.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/startKillTime/startKillTime.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/suspend/suspend.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/tracing/tracingPingPong.tesh -test_script: - cmd: ctest -VV +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