Helper scripts running mini regression tests in JIT/Full AOT on Windows. (#9252)
commit622a1b6f55b9a9c95f02458d2a0e930a087a9891
authorJohan Lorensson <lateralusx.github@gmail.com>
Fri, 22 Jun 2018 16:23:08 +0000 (22 18:23 +0200)
committerAlexander Köplinger <alex.koeplinger@outlook.com>
Fri, 22 Jun 2018 16:23:08 +0000 (22 18:23 +0200)
treeb622dd832d0a55567f39279419b49063b790c80f
parenta49b96d72d628d719837fc07bdf95a209333ff2b
Helper scripts running mini regression tests in JIT/Full AOT on Windows. (#9252)

* Helper scripts running mini regression tests in JIT/Full AOT on Windows.

A set of helper scripts running all mini regression tests, supporting both
JIT and full AOT (including building full AOT assemblies) using local build
Visual Studio mono runtime (can be switched in setp.env.bat). Includes logic
to pick correct Visual Studio toolchain and support to setup command prompt
targeting x64 full AOT build and running tests. NOTE, the scripts are not limited
to the mini regression tests, only includes a set of predefined assemblies making
it easier to execute regression tests.

Full AOT scripts includes capabilities to build dynamic library, static linked objects
or assembler output, it also supports switches to use LLVM when building full AOT
assemblies if supported by local build mono runtime.

By default, scripts follow default build configurations used by mono BCL builds and
Visual Studio x64 Release build mono runtime.

Examples to run all JIT regression tests:

run-jit-regression.bat all

To run individual programs using JIT (doesn’t need to be a regression test):

run-jit.bat [full path to assembly]

NOTE, for regression tests there is a shortcut making them easier to locate,
so then just the assembly name can be used, not the full path is needed.

run-jit.bat basic.exe

Examples to build all regression tests using full AOT:

build-full-aot-regression-tests.bat all

Builds all regression tests in full AOT including all needed support and
BCL assemblies. All build assemblies will end up in msvc\build\fullaot\winaot
folder by default. It is possible to build individual assemblies as well using:

build-full-aot-regression-tests.bat [full path to assembly]

NOTE, for regression tests there is a shortcut making them easier to locate,
so then just the assembly name can be used, not the full path is needed.

build-full-aot-regression-tests.bat basic.exe

Examples to run all regression tests using full AOT:

run-full-aot-regression-tests.bat all

Runs all regression tests in full AOT. It is possible to run individual assemblies
as well using:

run-full-aot-regression-tests.bat [full path to assembly]

NOTE, for regression tests there is a shortcut making them easier to locate,
so then just the assembly name can be used, not the full path is needed.

run-full-aot-regression-tests.bat basic.exe

There are some more features included in the scripts as well, but above shows
basic usage. It could also be possible to reuse the scripts in Visual Studio
build targets going forward to at least run the JIT regression tests
as part of Visual Studio build.

* Fixed some review feedback.

* Switching to 1 instead of -1 in case of errors.
* Used case insensetiv compare for some if's.
* Dropped use of ECHO OFF/ON in nested scripts.
* Removed clear of PATH (was not intended).
msvc/scripts/tests/build-full-aot-regression-tests.bat [new file with mode: 0644]
msvc/scripts/tests/clang-vs2015-toolchain.bat [new file with mode: 0644]
msvc/scripts/tests/clang-vs2017-toolchain.bat [new file with mode: 0644]
msvc/scripts/tests/run-full-aot-regression-tests.bat [new file with mode: 0644]
msvc/scripts/tests/run-jit-regression.bat [new file with mode: 0644]
msvc/scripts/tests/run-jit.bat [new file with mode: 0644]
msvc/scripts/tests/setup-env.bat [new file with mode: 0644]
msvc/scripts/tests/setup-toolchain.bat [new file with mode: 0644]