Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'eng/common/build.ps1')
-rw-r--r--eng/common/build.ps1153
1 files changed, 0 insertions, 153 deletions
diff --git a/eng/common/build.ps1 b/eng/common/build.ps1
deleted file mode 100644
index 813d440d2a8..00000000000
--- a/eng/common/build.ps1
+++ /dev/null
@@ -1,153 +0,0 @@
-[CmdletBinding(PositionalBinding=$false)]
-Param(
- [string][Alias('c')]$configuration = "Debug",
- [string]$platform = $null,
- [string] $projects,
- [string][Alias('v')]$verbosity = "minimal",
- [string] $msbuildEngine = $null,
- [bool] $warnAsError = $true,
- [bool] $nodeReuse = $true,
- [switch][Alias('r')]$restore,
- [switch] $deployDeps,
- [switch][Alias('b')]$build,
- [switch] $rebuild,
- [switch] $deploy,
- [switch][Alias('t')]$test,
- [switch] $integrationTest,
- [switch] $performanceTest,
- [switch] $sign,
- [switch] $pack,
- [switch] $publish,
- [switch] $clean,
- [switch][Alias('bl')]$binaryLog,
- [switch] $ci,
- [switch] $prepareMachine,
- [switch] $help,
- [Parameter(ValueFromRemainingArguments=$true)][String[]]$properties
-)
-
-# Unset 'Platform' environment variable to avoid unwanted collision in InstallDotNetCore.targets file
-# some computer has this env var defined (e.g. Some HP)
-if($env:Platform) {
- $env:Platform=""
-}
-function Print-Usage() {
- Write-Host "Common settings:"
- Write-Host " -configuration <value> Build configuration: 'Debug' or 'Release' (short: -c)"
- Write-Host " -platform <value> Platform configuration: 'x86', 'x64' or any valid Platform value to pass to msbuild"
- Write-Host " -verbosity <value> Msbuild verbosity: q[uiet], m[inimal], n[ormal], d[etailed], and diag[nostic] (short: -v)"
- Write-Host " -binaryLog Output binary log (short: -bl)"
- Write-Host " -help Print help and exit"
- Write-Host ""
-
- Write-Host "Actions:"
- Write-Host " -restore Restore dependencies (short: -r)"
- Write-Host " -build Build solution (short: -b)"
- Write-Host " -rebuild Rebuild solution"
- Write-Host " -deploy Deploy built VSIXes"
- Write-Host " -deployDeps Deploy dependencies (e.g. VSIXes for integration tests)"
- Write-Host " -test Run all unit tests in the solution (short: -t)"
- Write-Host " -integrationTest Run all integration tests in the solution"
- Write-Host " -performanceTest Run all performance tests in the solution"
- Write-Host " -pack Package build outputs into NuGet packages and Willow components"
- Write-Host " -sign Sign build outputs"
- Write-Host " -publish Publish artifacts (e.g. symbols)"
- Write-Host " -clean Clean the solution"
- Write-Host ""
-
- Write-Host "Advanced settings:"
- Write-Host " -projects <value> Semi-colon delimited list of sln/proj's to build. Globbing is supported (*.sln)"
- Write-Host " -ci Set when running on CI server"
- Write-Host " -prepareMachine Prepare machine for CI run, clean up processes after build"
- Write-Host " -warnAsError <value> Sets warnaserror msbuild parameter ('true' or 'false')"
- Write-Host " -msbuildEngine <value> Msbuild engine to use to run build ('dotnet', 'vs', or unspecified)."
- Write-Host ""
-
- Write-Host "Command line arguments not listed above are passed thru to msbuild."
- Write-Host "The above arguments can be shortened as much as to be unambiguous (e.g. -co for configuration, -t for test, etc.)."
-}
-
-. $PSScriptRoot\tools.ps1
-
-function InitializeCustomToolset {
- if (-not $restore) {
- return
- }
-
- $script = Join-Path $EngRoot 'restore-toolset.ps1'
-
- if (Test-Path $script) {
- . $script
- }
-}
-
-function Build {
- $toolsetBuildProj = InitializeToolset
- InitializeCustomToolset
-
- $bl = if ($binaryLog) { '/bl:' + (Join-Path $LogDir 'Build.binlog') } else { '' }
- $platformArg = if ($platform) { "/p:Platform=$platform" } else { '' }
-
- if ($projects) {
- # Re-assign properties to a new variable because PowerShell doesn't let us append properties directly for unclear reasons.
- # Explicitly set the type as string[] because otherwise PowerShell would make this char[] if $properties is empty.
- [string[]] $msbuildArgs = $properties
-
- # Resolve relative project paths into full paths
- $projects = ($projects.Split(';').ForEach({Resolve-Path $_}) -join ';')
-
- $msbuildArgs += "/p:Projects=$projects"
- $properties = $msbuildArgs
- }
-
- MSBuild $toolsetBuildProj `
- $bl `
- $platformArg `
- /p:Configuration=$configuration `
- /p:RepoRoot=$RepoRoot `
- /p:Restore=$restore `
- /p:DeployDeps=$deployDeps `
- /p:Build=$build `
- /p:Rebuild=$rebuild `
- /p:Deploy=$deploy `
- /p:Test=$test `
- /p:Pack=$pack `
- /p:IntegrationTest=$integrationTest `
- /p:PerformanceTest=$performanceTest `
- /p:Sign=$sign `
- /p:Publish=$publish `
- @properties
-}
-
-try {
- if ($clean) {
- if (Test-Path $ArtifactsDir) {
- Remove-Item -Recurse -Force $ArtifactsDir
- Write-Host 'Artifacts directory deleted.'
- }
- exit 0
- }
-
- if ($help -or (($null -ne $properties) -and ($properties.Contains('/help') -or $properties.Contains('/?')))) {
- Print-Usage
- exit 0
- }
-
- if ($ci) {
- $binaryLog = $true
- $nodeReuse = $false
- }
-
- if ($restore) {
- InitializeNativeTools
- }
-
- Build
-}
-catch {
- Write-Host $_.ScriptStackTrace
- Write-PipelineTelemetryError -Category 'InitializeToolset' -Message $_
- ExitWithExitCode 1
-}
-
-ExitWithExitCode 0