Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
[appveyor] try to use a precompiled lua.
[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 - git config --global core.longpaths true
12 - git config --global core.autocrlf input
13
14 environment:
15   global:
16     BOOST_ROOT: c:\Libraries\boost_1_59_0
17     BOOST_LIBRARYDIR: c:\Libraries\boost_1_59_0\stage\lib
18     #  BOOST_ROOT: c:\Libraries\boost
19     #  BOOST_LIBRARYDIR: c:\Libraries\boost\stage\lib
20     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
21     LUA_HINT: C:/projects/simgrid
22   matrix:
23     - COMPILER: MinGW-w64
24
25 #    - COMPILER: MSVC15
26 #      PLATFORM: Win32
27 #    - COMPILER: MSVC15
28 #      PLATFORM: x64
29
30 # Having an optional Lua is too complex wrt Java dll dependencies, so disable it for now
31 #
32 #- if [%COMPILER%]==[MinGW-w64] appveyor DownloadFile "http://www.lua.org/ftp/lua-5.3.1.tar.gz" -FileName lua-5.3.1.tar.gz || appveyor DownloadFile "http://www.lua.org/ftp/lua-5.3.1.tar.gz" -FileName lua-5.3.1.tar.gz
33 #- if [%COMPILER%]==[MinGW-w64] tar xfz lua-5.3.1.tar.gz 
34 #- if [%COMPILER%]==[MinGW-w64] cd lua-5.3.1 && mingw32-make mingw && mingw32-make INSTALL_TOP=C:/mingw64 install && cd ..
35 # http://sourceforge.net/projects/luabinaries/files/5.3/Windows%20Libraries/Dynamic/lua-5.3_Win64_dllw4_lib.zip/download
36
37 install:
38 - if [%COMPILER%]==[MinGW]     set PATH=C:\MinGW\bin;%PATH%
39 - if [%COMPILER%]==[MinGW]     mingw-get update
40 - if [%COMPILER%]==[MinGW]     rename "C:\Program Files (x86)\Git\bin\sh.exe" "sh2.exe"
41 - if [%COMPILER%]==[MSYS2]     set PATH=C:\msys64\bin,%PATH%
42 - if [%COMPILER%]==[MinGW-w64] set PATH=C:\mingw64\bin;%PATH%
43 - if [%COMPILER%]==[MinGW-w64] rename "C:\Program Files (x86)\Git\bin\sh.exe" "sh2.exe"
44 - 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
45 - if [%COMPILER%]==[MinGW-w64] 7z x -oC:\ mw64.7z > NUL
46 - 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
47 - if [%COMPILER%]==[MinGW-w64] 7z x -tzip lua.zip && ls -lR
48
49 build_script:
50 - if [%COMPILER%]==[MSVC15] if [%PLATFORM%]==[Win32] cmake -G "Visual Studio 14 2015"       -Denable_lua=ON -Denable_java=ON -Denable_smpi=OFF -Denable_mallocators=OFF .
51 - if [%COMPILER%]==[MSVC15] if [%PLATFORM%]==[x64]   cmake -G "Visual Studio 14 2015 Win64" -Denable_lua=ON -Denable_java=ON -Denable_smpi=OFF -Denable_mallocators=OFF .
52 - if not [%COMPILER%]==[MSVC15]                      cmake -G "MinGW Makefiles"             -Denable_lua=ON -Denable_java=ON -Denable_smpi=OFF -Denable_mallocators=OFF -Denable_lto=OFF .
53 - if [%COMPILER%]==[MSVC15]     msbuild ALL_BUILD.vcxproj /verbosity:normal
54 - if not [%COMPILER%]==[MSVC15] mingw32-make VERBOSE=1
55 - cd C:/projects/simgrid/examples/java && java -classpath ".;../../simgrid.jar" masterslave.Masterslave ../platforms/platform.xml masterslave/masterslaveDeployment.xml || true
56
57
58 # I cant use the cmake test because of the following error:
59 #   Test project C:/projects/simgrid
60 #        Start   1: mc-replay-random-bug
61 #   ^CTerminate batch job (Y/N)?
62 # How dafuq am I supposed to press N on appveyor?? I tried closing stdin, in vain
63 #- bash -c "cd C:/projects/simgrid; exec 0<&-; ctest --output-on-failure" < nul || true
64
65 test_script:
66 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/async/async.tesh
67 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/bittorrent/bittorrent.tesh
68 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/master_slave_bypass/bypass.tesh
69 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/chord/chord.tesh
70 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/cloud/cloud.tesh
71 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/cloud/migration/migration.tesh
72 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/commTime/commtime.tesh
73 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/kademlia/kademlia.tesh
74 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/master_slave_kill/kill.tesh
75 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/masterslave/masterslave.tesh
76 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/migration/migration.tesh
77 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/mutualExclusion/mutualexclusion.tesh
78 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/pingPong/pingpong.tesh
79 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/priority/priority.tesh
80 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/startKillTime/startKillTime.tesh
81 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/surfCpuModel/surf_cpu_model.tesh
82 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/surfPlugin/surf_plugin.tesh
83 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/reservationSurfPlugin/reservation_surf_plugin.tesh
84 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/suspend/suspend.tesh
85 - perl %TESH_ARGS% C:/projects/simgrid/examples/java/tracing/tracingPingPong.tesh
86
87 artifacts:
88 - path: simgrid.jar
89   name: jarfile
90
91 # notifications:
92 # - irc: "irc.debian.org#simgrid" # Not implemented by AppVeyor yet :(
93 # Some source of inspiration:
94
95 # https://github.com/sympy/symengine/blob/master/appveyor.yml <- MS, mingw & mingw64
96
97 # https://github.com/dartsim/dart/blob/master/appveyor.yml
98 # https://github.com/osmcode/libosmium/blob/master/appveyor.yml
99 # https://github.com/polysquare/cmake-unit/blob/master/appveyor.yml
100 # https://github.com/openvswitch/ovs/blob/master/appveyor.yml
101
102 # https://github.com/behdad/harfbuzz/pull/112/files