Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
try harder to close stdin on appveyor tests
[simgrid.git] / appveyor.yml
1 # This file is intended to automatize the testing of SimGrid on
2 # Windows using the appveyor.com continuous integration service
3
4 os: Visual Studio 2015
5 version: "{build}"
6 clone_depth: 1
7
8 # scripts that are called at very beginning, before repo cloning
9 init:
10 - cmake --version
11 - msbuild /version
12 - git config --global core.longpaths true
13 - git config --global core.autocrlf input
14
15 environment:
16   global:
17     BOOST_ROOT: c:\Libraries\boost_1_59_0
18     BOOST_LIBRARYDIR: c:\Libraries\boost_1_59_0\stage\lib
19     #  BOOST_ROOT: c:\Libraries\boost
20     #  BOOST_LIBRARYDIR: c:\Libraries\boost\stage\lib
21
22   matrix:
23     - COMPILER: MinGW-w64
24
25 #    - COMPILER: MSVC15
26 #      PLATFORM: Win32
27 #    - COMPILER: MSVC15
28 #      PLATFORM: x64
29       
30 install:
31 - if [%COMPILER%]==[MinGW]     set PATH=C:\MinGW\bin;%PATH%
32 - if [%COMPILER%]==[MinGW]     mingw-get update
33 - if [%COMPILER%]==[MinGW]     rename "C:\Program Files (x86)\Git\bin\sh.exe" "sh2.exe"
34 - if [%COMPILER%]==[MinGW-w64] set PATH=C:\mingw64\bin;%PATH%
35 - if [%COMPILER%]==[MinGW-w64] rename "C:\Program Files (x86)\Git\bin\sh.exe" "sh2.exe"
36 - 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
37 - if [%COMPILER%]==[MinGW-w64] 7z x -oC:\ mw64.7z > NUL
38 - if [%COMPILER%]==[MSYS2]     set PATH=C:\msys64\bin,%PATH%
39
40 build_script:
41 - if [%COMPILER%]==[MSVC15] if [%PLATFORM%]==[Win32] cmake -G "Visual Studio 14 2015"       -Denable_java=ON -Denable_smpi=OFF -Denable_mallocators=OFF .
42 - if [%COMPILER%]==[MSVC15] if [%PLATFORM%]==[x64]   cmake -G "Visual Studio 14 2015 Win64" -Denable_java=ON -Denable_smpi=OFF -Denable_mallocators=OFF .
43 - if not [%COMPILER%]==[MSVC15]                      cmake -G "MinGW Makefiles"             -Denable_java=ON -Denable_smpi=OFF -Denable_mallocators=OFF -Denable_lto=OFF .
44 - if [%COMPILER%]==[MSVC15]     msbuild ALL_BUILD.vcxproj /verbosity:normal
45 - if not [%COMPILER%]==[MSVC15] mingw32-make VERBOSE=1
46 - cd C:/projects/simgrid/examples/java && java -classpath ".;../../simgrid.jar" masterslave.Masterslave ../platforms/platform.xml masterslave/masterslaveDeployment.xml || true
47
48
49 # Using bash explicitely and closing STDIN is an attempt to avoid this error:
50 #   Test project C:/projects/simgrid
51 #        Start   1: mc-replay-random-bug
52 #   ^CTerminate batch job (Y/N)?
53 # How dafuq am I supposed to press N on appveyor??
54 test_script:
55 - bash -c "cd C:/projects/simgrid; exec 0<&-; ctest --output-on-failure" < nul || true
56
57 artifacts:
58 - path: simgrid.jar
59   name: jarfile
60
61 # notifications:
62 # - irc: "irc.debian.org#simgrid" # Not implemented by AppVeyor yet :(
63 # Some source of inspiration:
64
65 # https://github.com/sympy/symengine/blob/master/appveyor.yml <- MS, mingw & mingw64
66
67 # https://github.com/dartsim/dart/blob/master/appveyor.yml
68 # https://github.com/osmcode/libosmium/blob/master/appveyor.yml
69 # https://github.com/polysquare/cmake-unit/blob/master/appveyor.yml
70 # https://github.com/openvswitch/ovs/blob/master/appveyor.yml
71
72 # https://github.com/behdad/harfbuzz/pull/112/files