Add build of TestApp & TestLibrary when component is Foundation

Signed-off-by: FrancisANDRE <zosrothko@orange.fr>
This commit is contained in:
FrancisANDRE 2015-12-12 19:47:53 +01:00
parent f161423c25
commit 7c432c1227

View File

@ -201,9 +201,9 @@ function Process-Input
} }
function Build-MSBuild([string] $vsProject) function Build-MSBuild([string] $vsProject, [string] $vsTestAppProject, [string] $vsTestLibraryProject)
{ {
Write-Host "Build-MSBuild ==> $vsProject" Write-Host "Build-MSBuild ==> $vsProject, $vsTestAppProject, $vsTestLibraryProject"
[string]$flags = '/clp:NoSummary /nologo /v:minimal' [string]$flags = '/clp:NoSummary /nologo /v:minimal'
if ($linkmode -eq 'all') if ($linkmode -eq 'all')
@ -220,6 +220,14 @@ function Build-MSBuild([string] $vsProject)
$projectConfig = "$cfg" $projectConfig = "$cfg"
$projectConfig += "_$mode" $projectConfig += "_$mode"
Invoke-Expression "msbuild $vsProject $flags /t:$action /p:Configuration=$projectConfig /p:Platform=$platform /p:useenv=true" Invoke-Expression "msbuild $vsProject $flags /t:$action /p:Configuration=$projectConfig /p:Platform=$platform /p:useenv=true"
if ($vsTestAppProject -ne '')
{
Invoke-Expression "msbuild $vsTestAppProject $flags /t:$action /p:Configuration=$projectConfig /p:Platform=$platform /p:useenv=true"
}
if ($vsTestLibraryProject -ne '')
{
Invoke-Expression "msbuild $vsTestLibraryProject $flags /t:$action /p:Configuration=$projectConfig /p:Platform=$platform /p:useenv=true"
}
} }
} }
else #config else #config
@ -227,6 +235,14 @@ function Build-MSBuild([string] $vsProject)
$projectConfig = "$config" $projectConfig = "$config"
$projectConfig += "_$mode" $projectConfig += "_$mode"
Invoke-Expression "msbuild $vsProject $flags /t:$action /p:Configuration=$projectConfig /p:Platform=$platform /p:useenv=true" Invoke-Expression "msbuild $vsProject $flags /t:$action /p:Configuration=$projectConfig /p:Platform=$platform /p:useenv=true"
if ($vsTestAppProject -ne '')
{
Invoke-Expression "msbuild $vsTestAppProject $flags /t:$action /p:Configuration=$projectConfig /p:Platform=$platform /p:useenv=true"
}
if ($vsTestLibraryProject -ne '')
{
Invoke-Expression "msbuild $vsTestLibraryProject $flags /t:$action /p:Configuration=$projectConfig /p:Platform=$platform /p:useenv=true"
}
} }
} }
} }
@ -240,6 +256,14 @@ function Build-MSBuild([string] $vsProject)
$projectConfig = "$cfg" $projectConfig = "$cfg"
$projectConfig += "_$linkmode" $projectConfig += "_$linkmode"
Invoke-Expression "msbuild $vsProject $flags /t:$action /p:Configuration=$projectConfig /p:Platform=$platform /p:useenv=true" Invoke-Expression "msbuild $vsProject $flags /t:$action /p:Configuration=$projectConfig /p:Platform=$platform /p:useenv=true"
if ($vsTestAppProject -ne '')
{
Invoke-Expression "msbuild $vsTestAppProject $flags /t:$action /p:Configuration=$projectConfig /p:Platform=$platform /p:useenv=true"
}
if ($vsTestLibraryProject -ne '')
{
Invoke-Expression "msbuild $vsTestLibraryProject $flags /t:$action /p:Configuration=$projectConfig /p:Platform=$platform /p:useenv=true"
}
} }
} }
else #config else #config
@ -247,6 +271,14 @@ function Build-MSBuild([string] $vsProject)
$projectConfig = "$config" $projectConfig = "$config"
$projectConfig += "_$linkmode" $projectConfig += "_$linkmode"
Invoke-Expression "msbuild $vsProject $flags /t:$action /p:Configuration=$projectConfig /p:Platform=$platform /p:useenv=true" Invoke-Expression "msbuild $vsProject $flags /t:$action /p:Configuration=$projectConfig /p:Platform=$platform /p:useenv=true"
if ($vsTestAppProject -ne '')
{
Invoke-Expression "msbuild $vsTestAppProject $flags /t:$action /p:Configuration=$projectConfig /p:Platform=$platform /p:useenv=true"
}
if ($vsTestLibraryProject -ne '')
{
Invoke-Expression "msbuild $vsTestLibraryProject $flags /t:$action /p:Configuration=$projectConfig /p:Platform=$platform /p:useenv=true"
}
} }
} }
} }
@ -341,7 +373,7 @@ function Build
if ($omitArray -NotContains $component) if ($omitArray -NotContains $component)
{ {
$vsProject = "$poco_base\$componentDir\$componentName$($platformName)$($suffix).$($extension)" $vsProject = "$poco_base\$componentDir\$componentName$($platformName)$($suffix).$($extension)"
if (!(Test-Path -Path $vsProject)) # when VS project name is not same as directory name if (!(Test-Path -Path $vsProject)) # when VS project name is not same as directory name
{ {
@ -370,13 +402,20 @@ function Build
if ($tests) if ($tests)
{ {
$vsTestProject = "$poco_base\$componentDir\testsuite\TestSuite$($platformName)$($suffix).$($extension)" $vsTestProject = "$poco_base\$componentDir\testsuite\TestSuite$($platformName)$($suffix).$($extension)"
$vsTestAppProject = ''
$vsTestLibraryProject = ''
if ($componentDir -eq "Foundation")
{
$vsTestAppProject = "$poco_base\$componentDir\testsuite\TestApp$($platformName)$($suffix).$($extension)"
$vsTestLibraryProject = "$poco_base\$componentDir\testsuite\TestLibrary$($platformName)$($suffix).$($extension)"
}
Write-Host "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++" Write-Host "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
Write-Host "| Building $vsTestProject" Write-Host "| Building $vsTestProject"
Write-Host "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++" Write-Host "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
if ($tool -eq 'devenv') { Build-Devenv $vsTestProject } if ($tool -eq 'devenv') { Build-Devenv $vsTestProject }
elseif ($tool -eq 'msbuild') { Build-MSBuild $vsTestProject } elseif ($tool -eq 'msbuild') { Build-MSBuild $vsTestProject $vsTestAppProject $vsTestLibraryProject}
else{ Write-Host "Tool not supported: $tool" } else{ Write-Host "Tool not supported: $tool" }
} }