Files
GacUI/Tools/GacGen.ps1

40 lines
1.6 KiB
PowerShell

param (
[Parameter(Mandatory=$true)][String]$FileName,
[String]$MappingFileName
)
. $PSScriptRoot\StartProcess.ps1
Write-Host "Compiling GacUI Resource: $FileName ..."
Remove-Item -Path "$($FileName).log" -Recurse -ErrorAction Ignore | Out-Null
Start-Process-And-Wait (,("$PSScriptRoot\GacGen.exe", "/P32 $FileName $MappingFileName"))
Start-Process-And-Wait (,("$PSScriptRoot\GacGen.exe", "/P64 $FileName $MappingFileName"))
if (Test-Path -Path "$($FileName).log\x32\Errors.txt") {
Write-Host (Get-Content "$($FileName).log\x32\Errors.txt") -ForegroundColor Red -Separator "`r`n"
throw "Failed to compile GacUI Resource (x86): $FileName"
}
if (Test-Path -Path "$($FileName).log\x64\Errors.txt") {
Write-Host (Get-Content "$($FileName).log\x64\Errors.txt") -ForegroundColor Red -Separator "`r`n"
throw "Failed to compile GacUI Resource (x64): $FileName"
}
$output_cpp = "$($FileName).log\x32\CppOutput.txt"
if (Test-Path -Path $output_cpp) {
$output_folder = Get-Content $output_cpp
$x32_folder = "$($FileName).log\x32\Source"
$x64_folder = "$($FileName).log\x64\Source"
if (!(Test-Path -Path $output_folder)) {
New-Item $output_folder -ItemType directory | Out-Null
}
Get-ChildItem -Path $x32_folder -ErrorAction SilentlyContinue | %{
Write-Host " Merging C++ Source File: $($_.Name) ..."
Start-Process-And-Wait (,("$PSScriptRoot\CppMerge.exe", "`"$x32_folder\$($_.Name)`" `"$x64_folder\$($_.Name)`" `"$output_folder\$($_.Name)`""))
}
}
$deploy = "$($FileName).log\x32\Deploy.bat"
if (Test-Path -Path $deploy) {
Write-Host " Deploying ..."
Start-Process-And-Wait (,($env:ComSpec, "/c `"$deploy`"")) $true
}