diff options
Diffstat (limited to 'dist/windows/compile-libraries.ps1')
-rw-r--r-- | dist/windows/compile-libraries.ps1 | 862 |
1 files changed, 0 insertions, 862 deletions
diff --git a/dist/windows/compile-libraries.ps1 b/dist/windows/compile-libraries.ps1 deleted file mode 100644 index a37b78618..000000000 --- a/dist/windows/compile-libraries.ps1 +++ /dev/null @@ -1,862 +0,0 @@ -# EMACS settings: -*- tab-width: 2; indent-tabs-mode: t -*- -# vim: tabstop=2:shiftwidth=2:noexpandtab -# kate: tab-width 2; replace-tabs off; indent-width 2; -# -# ============================================================================== -# Authors: Patrick Lehmann (ported batch file to PowerShell) -# Brian Davis (contributions to the batch file) -# Tristan Gingold (initial batch file for compilations on Windows) -# -# PowerShell Script: Script to compile VHDL libraries for GHDL -# -# Description: -# ------------------------------------ -# This is a PowerShell script (executable) which: -# - sets up a compilation environment -# - test all dependencies -# - pre processes VHDL files with GHDLFilter -# - analyses VHDL files with GHDL -# -# ============================================================================== -# Copyright (C) 2002, 2003, 2004, 2005 Tristan Gingold -# Copyright (C) 2015-2017 Patrick Lehmann -# -# GHDL is free software; you can redistribute it and/or modify it under -# the terms of the GNU General Public License as published by the Free -# Software Foundation; either version 2, or (at your option) any later -# version. -# -# GHDL is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License -# along with GHDL; see the file COPYING. If not, write to the Free -# Software Foundation, 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. -# ============================================================================== - -# .SYNOPSIS -# GHDL for Windows - Library compile script -# Use 'compile-libraries.ps1 -Help' to see the integrated help page -# -# .EXAMPLE -# C:\PS> .\compile-libraries.ps1 -Clean -# .EXAMPLE -# C:\PS> .\compile-libraries.ps1 -Compile -Verbose -# .EXAMPLE -# C:\PS> .\compile-libraries.ps1 -VHDL2008 -SuppressWarnings -# -[CmdletBinding()] -param( - # Display this help" - [switch]$Help = $false, - - # Clean up all files and directories - [switch]$Clean = $false, - - # Compile all library files - [switch]$Compile = $false, - - # Set VHDL Standard to '87 - [switch]$VHDL87 = $false, - # Set VHDL Standard to '93 - [switch]$VHDL93 = $false, - # Set VHDL Standard to '08 - [switch]$VHDL2008 = $false, - - # Skip warning messages. (Show errors only.) - [switch]$SuppressWarnings = $false, - # Halt on errors - [switch]$HaltOnError = $false, - - # Set GHDL executable - [string]$GHDL = "", - # Undocumented - [switch]$Hosted = $false -) - -# configure script here -$RelPathToRoot = "..\.." - -# --------------------------------------------- -# save parameters and working directory -$Script_ScriptDir = $PSScriptRoot -$Script_WorkingDir = Get-Location -$GHDLRootDir = Convert-Path (Resolve-Path ($PSScriptRoot + "\" + $RelPathToRoot)) - -# set default values -$EnableDebug = [bool]$PSCmdlet.MyInvocation.BoundParameters["Debug"] -$EnableVerbose = [bool]$PSCmdlet.MyInvocation.BoundParameters["Verbose"] -or $EnableDebug - -# load modules from GHDL's 'libraries' directory -Import-Module $PSScriptRoot\shared.psm1 -Verbose:$false -Debug:$false -ArgumentList "$Script_WorkingDir", $Hosted - -# Display help if no command was selected -$Help = $Help -or (-not ($Compile -or $VHDL87 -or $VHDL93 -or $VHDL2008 -or $Clean)) - -if ($Help) -{ Get-Help $MYINVOCATION.InvocationName -Detailed - Exit-CompileScript -} -if ($Compile) -{ $VHDL87 = $true - $VHDL93 = $true - $VHDL2008 = $true -} - -# configure some variables: paths, executables, directory names, ... -$VHDLLibrariesSourceDirectoryName = "libraries" -$VHDLLibrariesDestinationDirectoryName = "lib" -$BuildDirectoryName = "build" -$Backend = "mcode" - -# construct directories -$VHDLSourceLibraryDirectory = "$GHDLRootDir\$VHDLLibrariesSourceDirectoryName" -$VHDLDestinationLibraryDirectory = "$GHDLRootDir\$BuildDirectoryName\$Backend\$VHDLLibrariesDestinationDirectoryName" -# construct executables -$GHDLNewExecutable = "$GHDLRootDir\$BuildDirectoryName\$Backend\bin\ghdl.exe" - - -# Library sources -$SourceFiles = @{ - "std" = @( - "textio", "textio-body" - ); - "ieee" = @( - "std_logic_1164", "std_logic_1164-body", - "numeric_std", "numeric_std-body", - "numeric_bit", "numeric_bit-body" - ); - "math" = @( - "math_real", "math_real-body", - "math_complex", "math_complex-body" - ); - "std08" = @( - "textio", "textio-body", - "env", "env-body" - ); - "ieee2008" = @( - "std_logic_1164", "std_logic_1164-body", - "std_logic_textio", - "math_real", "math_real-body", - "math_complex", "math_complex-body", - "numeric_bit", "numeric_bit-body", - "numeric_bit_unsigned", "numeric_bit_unsigned-body", - "numeric_std", "numeric_std-body", - "numeric_std_unsigned", "numeric_std_unsigned-body", - "fixed_float_types", - "fixed_generic_pkg", "fixed_generic_pkg-body", - "fixed_pkg", - "float_generic_pkg", "float_generic_pkg-body", - "float_pkg", - "ieee_std_context", - "ieee_bit_context" - ); - "vital95" = @( - "vital_timing", "vital_timing-body", - "vital_primitives", "vital_primitives-body" - ); - "vital2000" = @( - "timing_p", "timing_b", - "prmtvs_p", "prmtvs_b", - "memory_p", "memory_b" - ); - "synopsys" = @( - "std_logic_arith", - "std_logic_unsigned", - "std_logic_signed" - ); - "synopsys8793" = @( - "std_logic_textio", - "std_logic_misc", "std_logic_misc-body" - ); - "mentor" = @( - "std_logic_arith", "std_logic_arith-body" - ) -} - -if (-not $Hosted) -{ Write-Host "================================================================================" -ForegroundColor Yellow - Write-Host "GHDL ($Backend) for Windows - Library compile script" -ForegroundColor Yellow - Write-Host "================================================================================" -ForegroundColor Yellow -} - -if ($Clean) -{ Write-Host "Removing all created files and directories..." -ForegroundColor Yellow - if (Test-Path -Path $VHDLDestinationLibraryDirectory) - { $EnableVerbose -and (Write-Host " rmdir $VHDLDestinationLibraryDirectory") | Out-Null - Remove-Item $VHDLDestinationLibraryDirectory -Force -Recurse -ErrorAction SilentlyContinue - if ($? -eq $false) - { Write-Host "[ERROR]: Cannot remove '$VHDLDestinationLibraryDirectory'." -ForegroundColor Red - Exit-CompileScript -1 - } - } - if (-not ($VHDL87 -or $VHDL93 -or $VHDL2008)) - { Exit-CompileScript } -} - -# get GHDL executable -if ($GHDL -ne "") -{ $GHDLExecutable = $GHDL } -elseif (Test-Path env:GHDL) -{ $GHDLExecutable = $env:GHDL } -elseif (Test-Path $GHDLNewExecutable -PathType Leaf) -{ $GHDLExecutable = $GHDLNewExecutable } -else -{ $GHDLExecutable = "ghdl.exe" } - -if (-not (Test-Path $GHDLExecutable -PathType Leaf)) -{ Write-Host "GHDL executable 'ghdl.exe' not found." -ForegroundColor Red - Write-Host "Use adv. options '-GHDL' to set the GHDL executable." -ForegroundColor Yellow - Exit-CompileScript -1 -} - - -$ErrorCount = 0 -if ($VHDL87 -or $VHDL93 -or $VHDL2008) -{ Write-Host "Compiling VHDL Libraries..." - Write-Host "Preparing..." - - # create lib directory if it does not exist - if (Test-Path -Path $VHDLDestinationLibraryDirectory) - { $EnableVerbose -and (Write-Host " Directory '$VHDLDestinationLibraryDirectory' already exists.") | Out-Null - - # change working directory to VHDLDestinationLibraryDirectory - $EnableVerbose -and (Write-Host " cd $VHDLDestinationLibraryDirectory") | Out-Null - Set-Location $VHDLDestinationLibraryDirectory - - $EnableVerbose -and (Write-Host " Cleaning up directory...") | Out-Null - Remove-Item ./* -Force -Recurse -ErrorAction SilentlyContinue - } - else - { $EnableVerbose -and (Write-Host " Creating directory '$VHDLDestinationLibraryDirectory'.") | Out-Null - New-Item -ItemType Directory -Path $VHDLDestinationLibraryDirectory -ErrorAction SilentlyContinue | Out-Null - if (-not $?) - { Write-Host "[ERROR]: Cannot create destination directory '$VHDLDestinationLibraryDirectory'." -ForegroundColor Red - Exit-CompileScript -1 - } - - # change working directory to VHDLDestinationLibraryDirectory - $EnableVerbose -and (Write-Host " Change working directory to $VHDLDestinationLibraryDirectory") | Out-Null - Set-Location $VHDLDestinationLibraryDirectory - } - - Write-Host - Write-Host "Start compilation..." -} -# ============================================================================ -# v87 -# ============================================================================ -if ($VHDL87) -{ $VHDLVersion = "87" - Write-Host "Compiling libraries for VHDL-$VHDLVersion" -ForegroundColor Cyan - - # ---------------------------------------------------------------------- - # v87\std - # ---------------------------------------------------------------------- - $VHDLLibrary = "std" - Write-Host " Compiling library '$VHDLLibrary'..." -ForegroundColor DarkCyan - - $LibraryDirectory = "$VHDLDestinationLibraryDirectory\$VHDLLibrary\v$VHDLVersion" - New-LibraryDirectory $LibraryDirectory # $EnableVerbose - Set-Location $LibraryDirectory - - $VHDLSourcesIndex = "std" - foreach ($SourceFile in $SourceFiles[$VHDLSourcesIndex]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - # Patch file - Get-Content "$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C --bootstrap --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } - - # ---------------------------------------------------------------------- - # v87\ieee - # ---------------------------------------------------------------------- - $VHDLLibrary = "ieee" - $VHDLFlavor = "ieee" - Write-Host " Compiling library '$VHDLLibrary'..." -ForegroundColor DarkCyan - - $LibraryDirectory = "$VHDLDestinationLibraryDirectory\$VHDLFlavor\v$VHDLVersion" - New-LibraryDirectory $LibraryDirectory # $EnableVerbose - Set-Location $LibraryDirectory - - $VHDLSourcesIndex = "ieee" - foreach ($SourceFile in $SourceFiles[$VHDLSourcesIndex]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - # Patch file - Get-Content "$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C `"-P../std`" --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } - - # ---------------------------------------------------------------------- - # v87\synopsys - # ---------------------------------------------------------------------- - $VHDLLibrary = "ieee" - $VHDLFlavor = "synopsys" - Write-Host " Compiling library '$VHDLLibrary' ($VHDLFlavor)..." -ForegroundColor DarkCyan - - $LibraryDirectory = "$VHDLDestinationLibraryDirectory\$VHDLFlavor\v$VHDLVersion" - New-LibraryDirectory $LibraryDirectory # $EnableVerbose - Set-Location $LibraryDirectory - - $VHDLSourcesIndex = "ieee" - foreach ($SourceFile in $SourceFiles[$VHDLSourcesIndex]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - # Patch file - Get-Content "$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C `"-P../std`" --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } - - foreach ($SourceFile in $SourceFiles[$VHDLFlavor] + $SourceFiles["synopsys8793"]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - Get-Content "$VHDLSourceLibraryDirectory\$VHDLFlavor\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C `"-P../std`" --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } - - $VHDLSourcesIndex = "vital95" - foreach ($SourceFile in $SourceFiles[$VHDLSourcesIndex]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - # Patch file - Get-Content "$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C `"-P../std`" --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } -} -# ============================================================================ -# v93 -# ============================================================================ -if ($VHDL93) -{ $VHDLVersion = "93" - Write-Host "Compiling libraries for VHDL-$VHDLVersion" -ForegroundColor Cyan - - # ---------------------------------------------------------------------- - # v93\std - # ---------------------------------------------------------------------- - $VHDLLibrary = "std" - Write-Host " Compiling library '$VHDLLibrary'..." -ForegroundColor DarkCyan - - $LibraryDirectory = "$VHDLDestinationLibraryDirectory\$VHDLLibrary\v$VHDLVersion" - New-LibraryDirectory $LibraryDirectory # $EnableVerbose - Set-Location $LibraryDirectory - - $VHDLSourcesIndex = "std" - foreach ($SourceFile in $SourceFiles[$VHDLSourcesIndex]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - # Patch file - Get-Content "$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C --bootstrap --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } - - # ---------------------------------------------------------------------- - # v93\ieee - # ---------------------------------------------------------------------- - $VHDLLibrary = "ieee" - $VHDLFlavor = "ieee" - Write-Host " Compiling library '$VHDLLibrary'..." -ForegroundColor DarkCyan - - $LibraryDirectory = "$VHDLDestinationLibraryDirectory\$VHDLFlavor\v$VHDLVersion" - New-LibraryDirectory $LibraryDirectory # $EnableVerbose - Set-Location $LibraryDirectory - - $VHDLSourcesIndex = "ieee" - foreach ($SourceFile in $SourceFiles[$VHDLSourcesIndex] + $SourceFiles["math"]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - # Patch file - Get-Content "$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C `"-P../std`" --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } - - $VHDLSourcesIndex = "vital2000" - foreach ($SourceFile in $SourceFiles[$VHDLSourcesIndex]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - # Patch file - Get-Content "$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C `"-P../std`" --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } - - # ---------------------------------------------------------------------- - # v93\synopsys - # ---------------------------------------------------------------------- - $VHDLLibrary = "ieee" - $VHDLFlavor = "synopsys" - Write-Host " Compiling library '$VHDLLibrary' ($VHDLFlavor)..." -ForegroundColor DarkCyan - - $LibraryDirectory = "$VHDLDestinationLibraryDirectory\$VHDLFlavor\v$VHDLVersion" - New-LibraryDirectory $LibraryDirectory # $EnableVerbose - Set-Location $LibraryDirectory - - $VHDLSourcesIndex = "ieee" - foreach ($SourceFile in $SourceFiles[$VHDLSourcesIndex] + $SourceFiles["math"]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - # Patch file - Get-Content "$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C `"-P../std`" --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } - - foreach ($SourceFile in $SourceFiles[$VHDLFlavor] + $SourceFiles["synopsys8793"]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - # Patch file - Get-Content "$VHDLSourceLibraryDirectory\$VHDLFlavor\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C `"-P../std`" --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } - - $VHDLSourcesIndex = "vital2000" - foreach ($SourceFile in $SourceFiles[$VHDLSourcesIndex]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - # Patch file - Get-Content "$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C `"-P../std`" --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } - - # ---------------------------------------------------------------------- - # v93\mentor - # ---------------------------------------------------------------------- - $VHDLLibrary = "ieee" - $VHDLFlavor = "mentor" - Write-Host " Compiling library '$VHDLLibrary' ($VHDLFlavor)..." -ForegroundColor DarkCyan - - $LibraryDirectory = "$VHDLDestinationLibraryDirectory\$VHDLFlavor\v$VHDLVersion" - New-LibraryDirectory $LibraryDirectory # $EnableVerbose - Set-Location $LibraryDirectory - - $VHDLSourcesIndex = "ieee" - foreach ($SourceFile in $SourceFiles[$VHDLSourcesIndex] + $SourceFiles["math"]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - # Patch file - Get-Content "$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C `"-P../std`" --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } - - foreach ($SourceFile in $SourceFiles[$VHDLFlavor]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - # Patch file - Get-Content "$VHDLSourceLibraryDirectory\$VHDLFlavor\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C `"-P../std`" --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } - - $VHDLSourcesIndex = "vital2000" - foreach ($SourceFile in $SourceFiles[$VHDLSourcesIndex]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - # Patch file - Get-Content "$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C `"-P../std`" --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } -} -# ============================================================================== -# v08 -# ============================================================================== -if ($VHDL2008) -{ $VHDLVersion = "08" - Write-Host "Compiling libraries for VHDL-$VHDLVersion" -ForegroundColor Cyan - - # ---------------------------------------------------------------------- - # v08\std - # ---------------------------------------------------------------------- - $VHDLLibrary = "std" - Write-Host " Compiling library '$VHDLLibrary'..." -ForegroundColor DarkCyan - - $LibraryDirectory = "$VHDLDestinationLibraryDirectory\$VHDLLibrary\v$VHDLVersion" - New-LibraryDirectory $LibraryDirectory # $EnableVerbose - Set-Location $LibraryDirectory - - $VHDLSourcesIndex = "std08" - foreach ($SourceFile in $SourceFiles[$VHDLSourcesIndex]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - # Patch file - Get-Content "$VHDLSourceLibraryDirectory\$VHDLLibrary\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C --bootstrap --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } - - # ---------------------------------------------------------------------- - # v08\ieee - # ---------------------------------------------------------------------- - $VHDLLibrary = "ieee" - $VHDLFlavor = "ieee" - Write-Host " Compiling library '$VHDLLibrary'..." -ForegroundColor DarkCyan - - $LibraryDirectory = "$VHDLDestinationLibraryDirectory\$VHDLFlavor\v$VHDLVersion" - New-LibraryDirectory $LibraryDirectory # $EnableVerbose - Set-Location $LibraryDirectory - - $VHDLSourcesIndex = "ieee2008" - foreach ($SourceFile in $SourceFiles[$VHDLSourcesIndex]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - # Patch file - Get-Content "$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C `"-P../std`" --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } - - $VHDLSourcesIndex = "vital2000" - foreach ($SourceFile in $SourceFiles[$VHDLSourcesIndex]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - # Patch file - Get-Content "$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C `"-P../std`" -frelaxed-rules --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } - - # ---------------------------------------------------------------------- - # v08\synopsys - # ---------------------------------------------------------------------- - $VHDLLibrary = "ieee" - $VHDLFlavor = "synopsys" - Write-Host " Compiling library '$VHDLLibrary' ($VHDLFlavor)..." -ForegroundColor DarkCyan - - $LibraryDirectory = "$VHDLDestinationLibraryDirectory\$VHDLFlavor\v$VHDLVersion" - New-LibraryDirectory $LibraryDirectory # $EnableVerbose - Set-Location $LibraryDirectory - - $VHDLSourcesIndex = "ieee2008" - foreach ($SourceFile in $SourceFiles[$VHDLSourcesIndex]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - # Patch file - Get-Content "$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C `"-P../std`" --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } - - foreach ($SourceFile in $SourceFiles[$VHDLFlavor]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - # Patch file - Get-Content "$VHDLSourceLibraryDirectory\$VHDLFlavor\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C `"-P../std`" --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } - - $VHDLSourcesIndex = "vital2000" - foreach ($SourceFile in $SourceFiles[$VHDLSourcesIndex]) - { Write-Host " file: v$VHDLVersion\$SourceFile.v$VHDLVersion" - $EnableVerbose -and (Write-Host " Patching file for VHDL-$VHDLVersion" ) | Out-Null - $EnableDebug -and (Write-Host " Get-Content `"$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl`" -Encoding Ascii ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Format-VHDLSourceFile -Version `"$VHDLVersion`" ``" -ForegroundColor DarkGray ) | Out-Null - $EnableDebug -and (Write-Host " | Out-File `"$SourceFile.v$VHDLVersion`" -Encoding Ascii" -ForegroundColor DarkGray ) | Out-Null - # Patch file - Get-Content "$VHDLSourceLibraryDirectory\$VHDLSourcesIndex\$SourceFile.vhdl" -Encoding Ascii ` - | Format-VHDLSourceFile -Version "$VHDLVersion" ` - | Out-File "$SourceFile.v$VHDLVersion" -Encoding Ascii - - # Analyze file - $InvokeExpr = "$GHDLExecutable -a -C `"-P../std`" -frelaxed-rules --std=$VHDLVersion --work=$VHDLLibrary $SourceFile.v$VHDLVersion 2>&1" - $EnableVerbose -and (Write-Host " Analyzing file '$SourceFile.v$VHDLVersion'" ) | Out-Null - $EnableDebug -and (Write-Host " $InvokeExpr" -ForegroundColor DarkGray ) | Out-Null - $ErrorRecordFound = Invoke-Expression $InvokeExpr | Restore-NativeCommandStream | Write-ColoredGHDLLine $SuppressWarnings " " - if (($LastExitCode -ne 0) -or -not $?) - { $ErrorCount += 1 - if ($HaltOnError) - { Exit-CompileScript -1 } - } - } - -} # $VHDL2008 - - -Write-Host "--------------------------------------------------------------------------------" -Write-Host "Compiling VHDL libraries " -NoNewline -if ($ErrorCount -gt 0) -{ Write-Host "[FAILED]" -ForegroundColor Red } -else -{ Write-Host "[SUCCESSFUL]" -ForegroundColor Green } - -Exit-CompileScript |