summaryrefslogtreecommitdiff
path: root/tests/src/CLRTest.GC.targets
blob: f959aaf6e006d26d02de8b4b089967eb11d7359f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
<!--
***********************************************************************************************
CLRTest.Execute.targets

WARNING:  DO NOT MODIFY this file unless you are knowledgeable about MSBuild and have
          created a backup copy.  Incorrect changes to this file will make it
          impossible to load or build your projects from the command-line or the IDE.

This file contains the logic for generating command scripts for special GC tests.

WARNING:   When setting properties based on their current state (for example:
           <Foo Condition="'$(Foo)'==''>Bar</Foo>).  Be very careful.  Another script generation
           target might be trying to do the same thing.  It's better to avoid this by instead setting a new property.
           
           Additionally, be careful with itemgroups.  Include will propagate outside of the target too!

***********************************************************************************************
-->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <PropertyGroup>
      <!-- An exit code of 2 indicates "Skipped" for regular non-windows runs, but "Failed" in Helix -->
        <GCBashScriptExitCode Condition="'$(BuildTestsAgainstPackages)' != 'true'">2</GCBashScriptExitCode>
        <GCBashScriptExitCode Condition="'$(BuildTestsAgainstPackages)' == 'true'">0</GCBashScriptExitCode>

        <GCLongGCTestBashScript Condition="'$(IsLongRunningGCTest)' != 'true'"><![CDATA[
# Long GC script
if [ ! -z $RunningLongGCTests ]
then
    echo "Skipping execution because this is not a long-running GC test"
    exit $(GCBashScriptExitCode)
fi
        ]]></GCLongGCTestBashScript>
        <GCLongGCTestBashScript Condition="'$(IsLongRunningGCTest)' == 'true'"><![CDATA[
# Long GC script
if [ -z $RunningLongGCTests ]
then
    echo "Skipping execution because long-running GC tests are not enabled"
    exit $(GCBashScriptExitCode)
fi
        ]]></GCLongGCTestBashScript>


        <GCSimulatorTestBashScript Condition="'$(IsGCSimulatorTest)' != 'true'"><![CDATA[
# GCSimulator script
if [ ! -z $RunningGCSimulatorTests ]
then
    echo "Skipping execution because this is not a GCSimulator test"
    exit $(GCBashScriptExitCode)
fi
        ]]></GCSimulatorTestBashScript>
        <GCSimulatorTestBashScript Condition="'$(IsGCSimulatorTest)' == 'true'"><![CDATA[
# GCSimulator script
if [ -z $RunningGCSimulatorTests ]
then
    echo "Skipping execution because GCSimulator tests are not enabled"
    exit $(GCBashScriptExitCode)
fi
        ]]></GCSimulatorTestBashScript>

        <BashCLRTestPreCommands>$(BashCLRTestPreCommands);$(GCLongGCTestBashScript);$(GCSimulatorTestBashScript)</BashCLRTestPreCommands>
        <GCLongGCTestBatchScript Condition="'$(IsLongRunningGCTest)' != 'true'"><![CDATA[
REM Long GC script
if defined RunningLongGCTests (
  echo Skipping execution because this is not a long-running GC test.
  Exit /b 0
)
        ]]></GCLongGCTestBatchScript>
        <GCLongGCTestBatchScript Condition="'$(IsLongRunningGCTest)' == 'true'"><![CDATA[
REM Long GC script
if not defined RunningLongGCTests (
  echo Skipping execution because long-running GC tests are not enabled.
  Exit /b 0
)
        ]]></GCLongGCTestBatchScript>
      
      
        <GCSimulatorTestBatchScript  Condition="'$(IsGCSimulatorTest)' != 'true'"><![CDATA[
REM GCSimulator script
if defined RunningGCSimulatorTests (
  echo Skipping execution because this is not a GCSimulator test.
  Exit /b 0
)
        ]]></GCSimulatorTestBatchScript>
        <GCSimulatorTestBatchScript  Condition="'$(IsGCSimulatorTest)' == 'true'"><![CDATA[
REM GCSimulator script
if not defined RunningGCSimulatorTests (
  echo Skipping execution because GCSimulator tests are not enabled
  Exit /b 0
)
        ]]></GCSimulatorTestBatchScript >

        <CLRTestBatchPreCommands>$(CLRTestBatchPreCommands);$(GCLongGCTestBatchScript);$(GCSimulatorTestBatchScript)</CLRTestBatchPreCommands>
    </PropertyGroup>
</Project>