X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/921adbce0cb61e745c69475a6a08a6e011fecdaf..55f9b2e8251131e057eda9265a93d44cb22cabd7:/appveyor.yml diff --git a/appveyor.yml b/appveyor.yml index 894bb398c2..de0639ae65 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,50 +1,100 @@ -# 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: MinGW +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 + global: + BOOST_ROOT: c:\Libraries\boost + BOOST_LIBRARYDIR: c:\Libraries\boost\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 + matrix: + - COMPILER: MinGW-w64 +# MSCV15 is too hard for me: I fail to get the lib to link on that platf (even with c:\Libraries\boost_1_59_0) +# - COMPILER: MSVC15 +# PLATFORM: Win32 # That's actually an appveyor parameter of MSVC15, it's useless with MinGW-w64 +# - COMPILER: MSVC15 +# PLATFORM: x64 + +# When Lua will become mandatory, we will have to download it precompiled. It's Windows after all +# +#environment: +#LUA_HINT: C:/projects/simgrid +#install: +#- if [%COMPILER%]==[MinGW-w64] appveyor DownloadFile "http://sourceforge.net/projects/luabinaries/files/5.3/Windows Libraries/Dynamic/lua-5.3_Win64_dllw4_lib.zip/download" -FileName lua.zip || appveyor DownloadFile "http://sourceforge.net/projects/luabinaries/files/5.3/Windows Libraries/Dynamic/lua-5.3_Win64_dllw4_lib.zip/download" -FileName lua.zip +#- if [%COMPILER%]==[MinGW-w64] 7z x -tzip lua.zip > NULL + +# These are not used currently, because MinGW-w64 does its work +#- if [%COMPILER%]==[MinGW] set PATH=C:\MinGW\bin;%PATH% +#- if [%COMPILER%]==[MinGW] mingw-get update +#- if [%COMPILER%]==[MinGW] rename "C:\Program Files (x86)\Git\bin\sh.exe" "sh2.exe" +#- if [%COMPILER%]==[MSYS2] set PATH=C:\msys64\bin,%PATH% install: -#- ps: | -# if ($env:Compiler -eq "mingw" -AND -Not (Test-Path "C:\mingw64")) { -# # Install MinGW64 -# $file = "x86_64-4.9.2-release-win32-seh-rt_v4-rev3.7z" -# $url = "https://bintray.com/artifact/download/drewwells/generic/" -# $url += $file -# Invoke-WebRequest -UserAgent wget -Uri $url -OutFile $file -# &7z x -oC:\ $file > $null -# } -- set PATH=C:\mingw64\bin;%PATH% -- set CC=gcc +- if [%COMPILER%]==[MinGW-w64] set PATH=C:\mingw64\bin;%PATH% +- if [%COMPILER%]==[MinGW-w64] rename "C:\Program Files (x86)\Git\bin\sh.exe" "sh2.exe" +- if [%COMPILER%]==[MinGW-w64] appveyor DownloadFile "https://raw.githubusercontent.com/symengine/dependencies/5cff7d1736877336cf9fb58267111beea4fa152f/x86_64-4.9.1-release-posix-seh-rt_v3-rev1.7z" -FileName mw64.7z || appveyor DownloadFile "https://raw.githubusercontent.com/symengine/dependencies/5cff7d1736877336cf9fb58267111beea4fa152f/x86_64-4.9.1-release-posix-seh-rt_v3-rev1.7z" -FileName mw64.7z +- if [%COMPILER%]==[MinGW-w64] 7z x -oC:\ mw64.7z > NUL build_script: -#- '"C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\VsDevCmd"' -- bash -lc "echo \"C:/MinGW64 /mingw64\" > /etc/fstab" -- bash -lc "ls -lR /mingw64" -- 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=OFF -Denable_model-checking=OFF ." -- bash -lc "cd /c/projects/simgrid; echo XXX simgrid_config.h; cat include/simgrid_config.h" -- bash -lc "cd /c/projects/simgrid; echo XXX src/internal_config.h; cat src/internal_config.h" -#- C:\MinGW\msys\1.0\bin\bash -lc "cd /c/projects/simgrid; echo XXX Internal builtins; gcc -dM -E - < /dev/null" -- bash -lc "cd /c/projects/simgrid && make VERBOSE=1" +- if [%COMPILER%]==[MSVC15] if [%PLATFORM%]==[Win32] cmake -G "Visual Studio 14 2015" -Denable_lua=OFF -Denable_java=ON -Denable_smpi=OFF -Denable_mallocators=OFF . +- if [%COMPILER%]==[MSVC15] if [%PLATFORM%]==[x64] cmake -G "Visual Studio 14 2015 Win64" -Denable_lua=OFF -Denable_java=ON -Denable_smpi=OFF -Denable_mallocators=OFF . +- if not [%COMPILER%]==[MSVC15] cmake -G "MinGW Makefiles" -Denable_lua=OFF -Denable_java=ON -Denable_smpi=OFF -Denable_mallocators=OFF -Denable_lto=OFF . +- if [%COMPILER%]==[MSVC15] msbuild ALL_BUILD.vcxproj /verbosity:normal +- if not [%COMPILER%]==[MSVC15] mingw32-make 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: - cmd: ctest -VV +- 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/surfCpuModel/surf_cpu_model.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/surfPlugin/surf_plugin.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/reservationSurfPlugin/reservation_surf_plugin.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/suspend/suspend.tesh +- perl %TESH_ARGS% C:/projects/simgrid/examples/java/tracing/tracingPingPong.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/sass/libsass/blob/master/appveyor.yml <- install mingw-w64 -# https://github.com/sympy/symengine/blob/master/appveyor.yml <- use provided mingw-w64 \ No newline at end of file + +# https://github.com/behdad/harfbuzz/pull/112/files \ No newline at end of file