Reworked validation

This commit is contained in:
Vladimir Safonkin
2020-03-24 14:29:50 +03:00
parent de434649ee
commit 303d675ea2

View File

@@ -3,55 +3,44 @@
## Desc: Validate Msys2
################################################################################
if (Get-Command -Name 'gcc')
{
Write-Host "gcc is successfully installed:"
gcc --version | Write-Host
}
else
{
Write-Host "gcc is not on PATH"
exit 1
$msys2BinDir = "C:\msys64\usr\bin"
$msys2mingwDir = "C:\msys64\mingw64\bin"
$installedTools = @(
"bash",
"tar",
"make"
)
Write-Host "Check installed tools in msys2/usr/bin directory"
$installedTools | ForEach-Object {
$toolName = $_
try {
Invoke-Expression "$msys2BinDir\$_ --version"
} catch {
Write-Host "$toolName was not installed in MSYS2 bin directory"
Write-Error $_
exit 1
}
}
if (Get-Command -Name 'g++')
{
Write-Host "g++ is successfully installed:"
g++ --version | Write-Host
}
else
{
Write-Host "g++ is not on PATH"
exit 1
}
if (Get-Command -Name 'make')
{
Write-Host "make is successfully installed:"
make --version | Write-Host
}
else
{
Write-Host "make is not on PATH"
Write-Host "Check gcc in msys2/mingw64/bin directory"
try {
Invoke-Expression "$msys2mingwDir\gcc --version"
} catch {
Write-Host "gcc was not installed in MSYS2 bin directory"
Write-Error $_
exit 1
}
# Adding description of the software to Markdown
# `gcc --version` gives output like:
# gcc.exe (x86_64-posix-seh-rev0, Built by MinGW-W64 project) 5.3.0
# Copyright (C) 2015 Free Software Foundation, Inc.
# This is free software; see the source for copying conditions. There is NO
# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# $SoftwareName = "MSYS2"
# $(pacman.exe --version).Split([System.Environment]::NewLine)[1] -match "v\d+\.\d+\.\d+"
# $pacmanVersion = $matches[0]
$SoftwareName = "MinGW"
$(gcc --version).Split([System.Environment]::NewLine)[0] -match "\d+\.\d+\.\d+$"
$minGwVersion = $matches[0]
# $Description = @"
# _Pacman version:_ $pacmanVersion<br/>
# "@
$Description = @"
_Version:_ $minGwVersion<br/>
_Environment:_
* PATH: contains location of the MinGW 'bin' directory
"@
Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description
# Add-SoftwareDetailsToMarkdown -SoftwareName $SoftwareName -DescriptionMarkdown $Description