diff options
author | Edward Thomson <ethomson@edwardthomson.com> | 2018-07-14 12:22:16 +0100 |
---|---|---|
committer | Edward Thomson <ethomson@edwardthomson.com> | 2018-07-26 14:07:00 +0100 |
commit | 3b6281fac165bd910abe7e961e5e65168723a187 (patch) | |
tree | 9e38a624be330729b9b1ec0cd18d0510bec4be90 /ci | |
parent | ce798b256b071f57bfd62664626c10339b3e36f7 (diff) | |
download | libgit2-3b6281fac165bd910abe7e961e5e65168723a187.tar.gz |
ci: Windows PowerShell build script
Diffstat (limited to 'ci')
-rw-r--r-- | ci/build.ps1 | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/ci/build.ps1 b/ci/build.ps1 new file mode 100644 index 000000000..12cc4fb54 --- /dev/null +++ b/ci/build.ps1 @@ -0,0 +1,50 @@ +Set-StrictMode -Version Latest + +$ErrorActionPreference = "Stop" +$PSDefaultParameterValues['*:ErrorAction'] = 'Stop' + +if ($Env:SOURCE_DIR) { $SourceDirectory = $Env:SOURCE_DIR } else { $SourceDirectory = Split-Path (Split-Path $MyInvocation.MyCommand.Path -Parent) -Parent } +$BuildDirectory = $(Get-Location).Path + +Write-Host "Source directory: ${SourceDirectory}" +Write-Host "Build directory: ${BuildDirectory}" +Write-Host "" +Write-Host "Operating system version:" +Get-CimInstance Win32_OperatingSystem | Select-Object Caption, Version, ServicePackMajorVersion, BuildNumber, OSArchitecture | Format-List +Write-Host "PATH:" +Write-Host "${Env:PATH}" +Write-Host "" + +Write-Host "##############################################################################" +Write-Host "## Configuring build environment" +Write-Host "##############################################################################" + +cmake $SourceDirectory -DBUILD_EXAMPLES=ON ${Env:CMAKE_OPTIONS} +if ($LastExitCode -ne 0) { [Environment]::Exit($LastExitCode) } + +Write-Host "" +Write-Host "##############################################################################" +Write-Host "## Building libgit2" +Write-Host "##############################################################################" + +cmake --build . +if ($LastExitCode -ne 0) { [Environment]::Exit($LastExitCode) } + +if ($Env:SKIP_TESTS) { exit } + +Write-Host "" +Write-Host "#######################################################################" +Write-Host "## Running (offline) tests" +Write-Host "#######################################################################" + +ctest -V -R offline +if ($LastExitCode -ne 0) { [Environment]::Exit($LastExitCode) } + +Write-Host "" +Write-Host "#######################################################################" +Write-Host "## Running (online) tests" +Write-Host "#######################################################################" + +ctest -V -R online +if ($LastExitCode -ne 0) { [Environment]::Exit($LastExitCode) } + |