diff options
author | Patrick Lehmann <Patrick.Lehmann@plc2.de> | 2021-01-16 01:17:29 +0100 |
---|---|---|
committer | tgingold <tgingold@users.noreply.github.com> | 2021-01-16 11:19:26 +0100 |
commit | c0f0539c991309d6acd7eb7b9bb6a9fb839fd3de (patch) | |
tree | 7f63e7ccce7eed49732e09b10f00fc4c43072303 /libraries | |
parent | bc11df10c58402e60df792bc2d495e6d6a62a479 (diff) | |
download | ghdl-c0f0539c991309d6acd7eb7b9bb6a9fb839fd3de.tar.gz ghdl-c0f0539c991309d6acd7eb7b9bb6a9fb839fd3de.tar.bz2 ghdl-c0f0539c991309d6acd7eb7b9bb6a9fb839fd3de.zip |
Another round of improvements.
Diffstat (limited to 'libraries')
-rwxr-xr-x | libraries/vendors/compile-altera.sh | 75 | ||||
-rwxr-xr-x | libraries/vendors/compile-intel.sh | 79 | ||||
-rwxr-xr-x | libraries/vendors/compile-lattice.sh | 66 | ||||
-rwxr-xr-x | libraries/vendors/compile-osvvm.sh | 3 | ||||
-rwxr-xr-x | libraries/vendors/compile-uvvm.sh | 64 | ||||
-rwxr-xr-x | libraries/vendors/compile-xilinx-ise.sh | 81 | ||||
-rwxr-xr-x | libraries/vendors/compile-xilinx-vivado.sh | 80 | ||||
-rwxr-xr-x | libraries/vendors/config.sh | 1 | ||||
-rw-r--r-- | libraries/vendors/ghdl.grcrules | 15 | ||||
-rw-r--r-- | libraries/vendors/ghdl.skipwarning.grcrules | 14 | ||||
-rwxr-xr-x | libraries/vendors/shared.sh | 20 |
11 files changed, 270 insertions, 228 deletions
diff --git a/libraries/vendors/compile-altera.sh b/libraries/vendors/compile-altera.sh index 33216d7cf..517d48856 100755 --- a/libraries/vendors/compile-altera.sh +++ b/libraries/vendors/compile-altera.sh @@ -55,7 +55,7 @@ COMPILE_STRATIX=0 COMPILE_NM=0 VERBOSE=0 DEBUG=0 -FILTERING=0 # TODO: 1 +FILTERING=1 SKIP_LARGE_FILES=0 SUPPRESS_WARNINGS=0 HALT_ON_ERROR=0 @@ -128,11 +128,11 @@ while [[ $# > 0 ]]; do GHDL="$2" # overwrite a potentially existing GHDL environment variable shift # skip argument ;; - --src) + --source) SrcDir="$2" shift # skip argument ;; - --out) + --output) DestDir="$2" shift # skip argument ;; @@ -162,34 +162,34 @@ if [[ $COMMAND -le 1 ]]; then echo " compile-altera.sh [<verbosity>] <common command>|<library> [<options>] [<adv. options>]" echo "" echo "Common commands:" - echo " -h --help Print this help page" - echo " -c --clean Remove all generated files" + echo " -h --help Print this help page" + echo " -c --clean Remove all generated files" echo "" echo "Libraries:" - echo " -a --all Compile all Altera simulation libraries." - echo " --altera Compile the Altera standard libraries: lpm, sgate, altera, altera_mf, altera_lnsim." - echo " --max Compile the Altera Max device libraries." - echo " --cyclone Compile the Altera Cyclone device libraries." - echo " --arria Compile the Altera Arria device libraries." - echo " --stratix Compile the Altera Stratix device libraries." - echo " --nanometer Unknown device library." + echo " -a --all Compile all Altera simulation libraries." + echo " --altera Compile the Altera standard libraries: lpm, sgate, altera, altera_mf, altera_lnsim." + echo " --max Compile the Altera Max device libraries." + echo " --cyclone Compile the Altera Cyclone device libraries." + echo " --arria Compile the Altera Arria device libraries." + echo " --stratix Compile the Altera Stratix device libraries." + echo " --nanometer Unknown device library." echo "" echo "Library compile options:" - echo " --vhdl93 Compile the libraries with VHDL-93." - echo " --vhdl2008 Compile the libraries with VHDL-2008." - echo " -S --skip-largefiles Don't compile large files. Exclude *HSSI* and *HIP* files." - echo " -H --halt-on-error Halt on error(s)." + echo " --vhdl93 Compile the libraries with VHDL-93." + echo " --vhdl2008 Compile the libraries with VHDL-2008." + echo " -S --skip-largefiles Don't compile large files. Exclude *HSSI* and *HIP* files." + echo " -H --halt-on-error Halt on error(s)." echo "" echo "Advanced options:" - echo " --ghdl <GHDL binary> Path to GHDL's executable, e.g. /usr/local/bin/ghdl" - echo " --out <dir name> Name of the output directory, e.g. uvvm_util" - echo " --src <Path to UVVM> Path to the sources." + echo " --ghdl <GHDL binary> Path to GHDL's executable, e.g. /usr/local/bin/ghdl" + echo " --output <dir name> Name of the output directory, e.g. altera" + echo " --source <Path to Quartus>Path to the sources." echo "" echo "Verbosity:" - echo " -v --verbose Print verbose messages." - echo " -d --debug Print debug messages." -# echo " -n --no-filter Disable output filtering scripts." - echo " -N --no-warnings Suppress all warnings. Show only error messages." + echo " -v --verbose Print verbose messages." + echo " -d --debug Print debug messages." +# echo " -n --no-filter Disable output filtering scripts." + echo " -N --no-warnings Suppress all warnings. Show only error messages." echo "" exit $COMMAND fi @@ -232,6 +232,11 @@ if [[ $? -ne 0 ]]; then echo 1>&2 -e "${COLORED_ERROR} While loading configurati source $ScriptDir/shared.sh if [[ $? -ne 0 ]]; then echo 1>&2 -e "${COLORED_ERROR} While loading further procedures.${ANSI_NOCOLOR}"; exit 1; fi +# <= $VHDLVersion +# <= $VHDLStandard +# <= $VHDLFlavor +GHDLSetup $VHDLStandard + # -> $SourceDirectories # -> $DestinationDirectories # -> $SrcDir @@ -245,22 +250,28 @@ SetupDirectories AlteraQuartus "Altera Quartus" CreateDestinationDirectory cd $DestinationDirectory -# -> $VHDLStandard -# <= $VHDLVersion -# <= $VHDLStandard -# <= $VHDLFlavor -GHDLSetup # Extend global GHDL Options Analyze_Parameters+=( -fexplicit - --no-vital-checks -Wbinding - -Wno-hide - -Wno-others - -Wno-parenthesis +) +if [[ $DEBUG -eq 0 ]]; then + Analyze_Parameters+=( + -Wno-hide + ) +fi +if [[ ! (VERBOSE -eq 1) && ($DEBUG -eq 1) ]]; then + Analyze_Parameters+=( + -Wno-others + -Wno-static + ) +fi +Analyze_Parameters+=( --ieee=$VHDLFlavor + --no-vital-checks --std=$VHDLStandard + -frelaxed -P$DestinationDirectory ) diff --git a/libraries/vendors/compile-intel.sh b/libraries/vendors/compile-intel.sh index fb61f10bd..b5f4ba3f6 100755 --- a/libraries/vendors/compile-intel.sh +++ b/libraries/vendors/compile-intel.sh @@ -55,7 +55,7 @@ COMPILE_STRATIX=0 COMPILE_NM=0 VERBOSE=0 DEBUG=0 -FILTERING=0 # TODO: 1 +FILTERING=1 SKIP_LARGE_FILES=0 SUPPRESS_WARNINGS=0 HALT_ON_ERROR=0 @@ -128,11 +128,11 @@ while [[ $# > 0 ]]; do GHDL="$2" # overwrite a potentially existing GHDL environment variable shift # skip argument ;; - --src) + --source) SrcDir="$2" shift # skip argument ;; - --out) + --output) DestDir="$2" shift # skip argument ;; @@ -162,34 +162,34 @@ if [[ $COMMAND -le 1 ]]; then echo " compile-intel.sh [<verbosity>] <common command>|<library> [<options>] [<adv. options>]" echo "" echo "Common commands:" - echo " -h --help Print this help page" - echo " -c --clean Remove all generated files" + echo " -h --help Print this help page" + echo " -c --clean Remove all generated files" echo "" echo "Libraries:" - echo " -a --all Compile all Intel simulation libraries." - echo " --intel Compile the Altera standard libraries: lpm, sgate, altera, altera_mf, altera_lnsim." - echo " --max Compile the Intel Max device libraries." - echo " --cyclone Compile the Intel Cyclone device libraries." - echo " --arria Compile the Intel Arria device libraries." - echo " --stratix Compile the Intel Stratix device libraries." - echo " --nanometer Unknown device library." + echo " -a --all Compile all Intel simulation libraries." + echo " --intel Compile the Altera standard libraries: lpm, sgate, altera, altera_mf, altera_lnsim." + echo " --max Compile the Intel Max device libraries." + echo " --cyclone Compile the Intel Cyclone device libraries." + echo " --arria Compile the Intel Arria device libraries." + echo " --stratix Compile the Intel Stratix device libraries." + echo " --nanometer Unknown device library." echo "" echo "Library compile options:" - echo " --vhdl93 Compile the libraries with VHDL-93." - echo " --vhdl2008 Compile the libraries with VHDL-2008." - echo " -S --skip-largefiles Don't compile large files. Exclude *HSSI* and *HIP* files." - echo " -H --halt-on-error Halt on error(s)." + echo " --vhdl93 Compile the libraries with VHDL-93." + echo " --vhdl2008 Compile the libraries with VHDL-2008." + echo " -S --skip-largefiles Don't compile large files. Exclude *HSSI* and *HIP* files." + echo " -H --halt-on-error Halt on error(s)." echo "" echo "Advanced options:" - echo " --ghdl <GHDL binary> Path to GHDL's executable, e.g. /usr/local/bin/ghdl" - echo " --out <dir name> Name of the output directory, e.g. uvvm_util" - echo " --src <Path to UVVM> Path to the sources." + echo " --ghdl <GHDL binary> Path to GHDL's executable, e.g. /usr/local/bin/ghdl" + echo " --output <dir name> Name of the output directory, e.g. intel" + echo " --source <Path to Quartus>Path to the sources." echo "" echo "Verbosity:" - echo " -v --verbose Print verbose messages." - echo " -d --debug Print debug messages." -# echo " -n --no-filter Disable output filtering scripts." - echo " -N --no-warnings Suppress all warnings. Show only error messages." + echo " -v --verbose Print verbose messages." + echo " -d --debug Print debug messages." +# echo " -n --no-filter Disable output filtering scripts." + echo " -N --no-warnings Suppress all warnings. Show only error messages." echo "" exit $COMMAND fi @@ -232,6 +232,11 @@ if [[ $? -ne 0 ]]; then echo 1>&2 -e "${COLORED_ERROR} While loading configurati source $ScriptDir/shared.sh if [[ $? -ne 0 ]]; then echo 1>&2 -e "${COLORED_ERROR} While loading further procedures.${ANSI_NOCOLOR}"; exit 1; fi +# <= $VHDLVersion +# <= $VHDLStandard +# <= $VHDLFlavor +GHDLSetup $VHDLStandard + # -> $SourceDirectories # -> $DestinationDirectories # -> $SrcDir @@ -245,26 +250,28 @@ SetupDirectories AlteraQuartus "Intel Quartus" CreateDestinationDirectory cd $DestinationDirectory -# => $SUPPRESS_WARNINGS -# <= $GRC_COMMAND -SetupGRCat - -# -> $VHDLStandard -# <= $VHDLVersion -# <= $VHDLStandard -# <= $VHDLFlavor -GHDLSetup # Extend global GHDL Options Analyze_Parameters+=( -fexplicit - --no-vital-checks -Wbinding - -Wno-hide - -Wno-others - -Wno-parenthesis +) +if [[ $DEBUG -eq 0 ]]; then + Analyze_Parameters+=( + -Wno-hide + ) +fi +if [[ ! (VERBOSE -eq 1) && ($DEBUG -eq 1) ]]; then + Analyze_Parameters+=( + -Wno-others + -Wno-static + ) +fi +Analyze_Parameters+=( --ieee=$VHDLFlavor + --no-vital-checks --std=$VHDLStandard + -frelaxed -P$DestinationDirectory ) diff --git a/libraries/vendors/compile-lattice.sh b/libraries/vendors/compile-lattice.sh index df67c0bcb..cd556b695 100755 --- a/libraries/vendors/compile-lattice.sh +++ b/libraries/vendors/compile-lattice.sh @@ -57,7 +57,7 @@ COMMAND=1 CLEAN=0 VERBOSE=0 DEBUG=0 -FILTERING=0 # TODO: 1 +FILTERING=1 SUPPRESS_WARNINGS=0 HALT_ON_ERROR=0 VHDLStandard=93 @@ -102,11 +102,11 @@ while [[ $# > 0 ]]; do GHDL="$2" # overwrite a potentially existing GHDL environment variable shift # skip argument ;; - --src) + --source) SrcDir="$2" shift # skip argument ;; - --out) + --output) DestDir="$2" shift # skip argument ;; @@ -150,30 +150,30 @@ if [[ $COMMAND -le 1 ]]; then echo " compile-lattice.sh <common command>|<library> [<options>] [<adv. options>]" echo "" echo "Common commands:" - echo " -h --help Print this help page" - echo " -c --clean Remove all generated files" + echo " -h --help Print this help page" + echo " -c --clean Remove all generated files" echo "" echo "Libraries:" - echo " -a --all Compile all Lattice simulation libraries." + echo " -a --all Compile all Lattice simulation libraries." for Device in $DeviceList; do printf " --%-19s Device primitives for '%s'.\n" "${Device,,}" "$Device" done echo "" echo "Library compile options:" - echo " --vhdl93 Compile the libraries with VHDL-93." - echo " --vhdl2008 Compile the libraries with VHDL-2008." - echo " -H --halt-on-error Halt on error(s)." + echo " --vhdl93 Compile the libraries with VHDL-93." + echo " --vhdl2008 Compile the libraries with VHDL-2008." + echo " -H --halt-on-error Halt on error(s)." echo "" echo "Advanced options:" - echo " --ghdl <GHDL binary> Path to GHDL's executable, e.g. /usr/local/bin/ghdl" - echo " --out <dir name> Name of the output directory, e.g. uvvm_util" - echo " --src <Path to UVVM> Path to the sources." + echo " --ghdl <GHDL binary> Path to GHDL's executable, e.g. /usr/local/bin/ghdl" + echo " --output <dir name> Name of the output directory, e.g. lattice" + echo " --source <Path to Diamond>Path to the sources." echo "" echo "Verbosity:" - echo " -v --verbose Print verbose messages." - echo " -d --debug Print debug messages." -# echo " -n --no-filter Disable output filtering scripts." - echo " -N --no-warnings Suppress all warnings. Show only error messages." + echo " -v --verbose Print verbose messages." + echo " -d --debug Print debug messages." +# echo " -n --no-filter Disable output filtering scripts." + echo " -N --no-warnings Suppress all warnings. Show only error messages." echo "" exit $COMMAND fi @@ -213,6 +213,11 @@ if [[ $? -ne 0 ]]; then echo 1>&2 -e "${COLORED_ERROR} While loading configurati source $ScriptDir/shared.sh if [[ $? -ne 0 ]]; then echo 1>&2 -e "${COLORED_ERROR} While loading further procedures.${ANSI_NOCOLOR}"; exit 1; fi +# <= $VHDLVersion +# <= $VHDLStandard +# <= $VHDLFlavor +GHDLSetup $VHDLStandard + # -> $SourceDirectories # -> $DestinationDirectories # -> $SrcDir @@ -228,26 +233,27 @@ CreateDestinationDirectory cd $DestinationDirectory -# => $SUPPRESS_WARNINGS -# <= $GRC_COMMAND -SetupGRCat - -# -> $VHDLStandard -# <= $VHDLVersion -# <= $VHDLStandard -# <= $VHDLFlavor -GHDLSetup - # Extend global GHDL Options Analyze_Parameters+=( -fexplicit - --no-vital-checks -Wbinding - -Wno-hide - -Wno-others - -Wno-parenthesis +) +if [[ $DEBUG -eq 0 ]]; then + Analyze_Parameters+=( + -Wno-hide + ) +fi +if [[ ! (VERBOSE -eq 1) && ($DEBUG -eq 1) ]]; then + Analyze_Parameters+=( + -Wno-others + -Wno-static + ) +fi +Analyze_Parameters+=( --ieee=$VHDLFlavor + --no-vital-checks --std=$VHDLStandard + -frelaxed -P$DestinationDirectory ) diff --git a/libraries/vendors/compile-osvvm.sh b/libraries/vendors/compile-osvvm.sh index d2f4b674d..5340e2702 100755 --- a/libraries/vendors/compile-osvvm.sh +++ b/libraries/vendors/compile-osvvm.sh @@ -3,7 +3,7 @@ # Authors: # Patrick Lehmann # -# Bash Script: Script to compile the OSVVM library for GHDL on Linux +# Bash Script: Script to compile the OSVVM library for GHDL on Linux. # # Description: # ------------------------------------ @@ -12,6 +12,7 @@ # - compiles all OSVVM packages # # ============================================================================== +# Copyright (C) 2017-2021 Patrick Lehmann - Boetzingen, Germany # Copyright (C) 2015-2016 Patrick Lehmann - Dresden, Germany # # This program is free software: you can redistribute it and/or modify diff --git a/libraries/vendors/compile-uvvm.sh b/libraries/vendors/compile-uvvm.sh index 43ec35e79..d482df8bd 100755 --- a/libraries/vendors/compile-uvvm.sh +++ b/libraries/vendors/compile-uvvm.sh @@ -3,7 +3,7 @@ # Authors: # Patrick Lehmann # -# Bash Script: Script to compile the UVVM library for GHDL on Linux +# Bash Script: Script to compile the UVVM library for GHDL on Linux. # # Description: # ------------------------------------ @@ -50,13 +50,21 @@ COMPILE_UVVM_UTILITIES=0 COMPILE_UVVM_VVC_FRAMEWORK=0 COMPILE_UVVM_VIP=0 COMPILE_UVVM_VIP_AVALON_MM=0 +COMPILE_UVVM_VIP_AVALON_ST=0 +COMPILE_UVVM_VIP_AXI=0 COMPILE_UVVM_VIP_AXILITE=0 COMPILE_UVVM_VIP_AXISTREAM=0 COMPILE_UVVM_VIP_CLOCK_GENERATOR=0 +COMPILE_UVVM_VIP_ERROR_INJECTION=0 +COMPILE_UVVM_VIP_ETHERNET=0 +COMPILE_UVVM_VIP_GMII=0 COMPILE_UVVM_VIP_GPIO=0 +COMPILE_UVVM_VIP_HVVC_TO_VVC_BRIDGE=0 COMPILE_UVVM_VIP_I2C=0 +COMPILE_UVVM_VIP_RGMII=0 COMPILE_UVVM_VIP_SBI=0 COMPILE_UVVM_VIP_SCOREBOARD=0 +COMPILE_UVVM_VIP_SPEC_COV=0 COMPILE_UVVM_VIP_SPI=0 COMPILE_UVVM_VIP_UART=0 VERBOSE=0 @@ -95,6 +103,14 @@ while [[ $# > 0 ]]; do COMMAND=3 COMPILE_UVVM_VIP_AVALON_MM=1 ;; + --uvvm-vip-avalon_st) + COMMAND=3 + COMPILE_UVVM_VIP_AVALON_ST=1 + ;; + --uvvm-vip-axi) + COMMAND=3 + COMPILE_UVVM_VIP_AXI=1 + ;; --uvvm-vip-axi_lite) COMMAND=3 COMPILE_UVVM_VIP_AXILITE=1 @@ -107,18 +123,42 @@ while [[ $# > 0 ]]; do COMMAND=3 COMPILE_UVVM_VIP_CLOCK_GENERATOR=1 ;; + --uvvm-vip-error) + COMMAND=3 + COMPILE_UVVM_VIP_ERROR_INJECTION=1 + ;; + --uvvm-vip-ethernet) + COMMAND=3 + COMPILE_UVVM_VIP_ETHERNET=1 + ;; + --uvvm-vip-gmii) + COMMAND=3 + COMPILE_UVVM_VIP_GMII=1 + ;; --uvvm-vip-gpio) COMMAND=3 COMPILE_UVVM_VIP_GPIO=1 ;; + --uvvm-vip-hvvc2vvc) + COMMAND=3 + COMPILE_UVVM_VIP_HVVC_TO_VVC_BRIDGE=1 + ;; --uvvm-vip-i2c) COMMAND=3 COMPILE_UVVM_VIP_I2C=1 ;; + --uvvm-vip-rgmii) + COMMAND=3 + COMPILE_UVVM_VIP_RGMII=1 + ;; --uvvm-vip-sbi) COMMAND=3 COMPILE_UVVM_VIP_SBI=1 ;; + --uvvm-vip-spec) + COMMAND=3 + COMPILE_UVVM_VIP_SPEC_COV=1 + ;; --uvvm-vip-spi) COMMAND=3 COMPILE_UVVM_VIP_SPI=1 @@ -202,13 +242,21 @@ if [[ $COMMAND -le 1 ]]; then echo "" echo "Verification IPs:" echo " --uvvm-vip-avalon_mm Altera/Intel Avalon Memory Mapped" - echo " --uvvm-vip-axi_lite ARM AMBA AXI4 Lite" - echo " --uvvm-vip-axi_stream ARM AMBA AXI4 Stream" + echo " --uvvm-vip-avalon_st Altera/Intel Avalon Stream" + echo " --uvvm-vip-axi ARM AMBA AXI4" + echo " --uvvm-vip-axi_lite ARM AMBA AXI4-Lite" + echo " --uvvm-vip-axi_stream ARM AMBA AXI4-Stream" echo " --uvvm-vip-clock Clock generator" + echo " --uvvm-vip-error Error injection" + echo " --uvvm-vip-ethernet Ethernet" + echo " --uvvm-vip-gmii GMII" echo " --uvvm-vip-gpio General Purpose Input/Output (GPIO)" - echo " --uvvm-vip-i2c Inter-Integrated Circuit (I²C)" + echo " --uvvm-vip-hvvc2vvc HVVC to VCC bridge" + echo " --uvvm-vip-i2c Inter-Integrated Circuit (I²C)" + echo " --uvvm-vip-rgmii RGMII" echo " --uvvm-vip-sbi Simple Bus Interface" echo " --uvvm-vip-scoreboard Scoreboard" + echo " --uvvm-vip-spec Specification Coverage" echo " --uvvm-vip-spi Serial Peripheral Interface" echo " --uvvm-vip-uart Universal Asynchronous Receiver Transmitter (UART)" echo "" @@ -239,13 +287,21 @@ if [[ $COMPILE_UVVM -eq 1 ]]; then fi if [[ $COMPILE_UVVM_VIP -eq 1 ]]; then COMPILE_UVVM_VIP_AVALON_MM=1 + COMPILE_UVVM_VIP_AVALON_ST=1 + COMPILE_UVVM_VIP_AXI=1 COMPILE_UVVM_VIP_AXILITE=1 COMPILE_UVVM_VIP_AXISTREAM=1 COMPILE_UVVM_VIP_CLOCK_GENERATOR=1 + COMPILE_UVVM_VIP_ERROR_INJECTION=1 + COMPILE_UVVM_VIP_ETHERNET=1 + COMPILE_UVVM_VIP_GMII=1 COMPILE_UVVM_VIP_GPIO=1 + COMPILE_UVVM_VIP_HVVC_TO_VVC_BRIDGE=1 COMPILE_UVVM_VIP_I2C=1 + COMPILE_UVVM_VIP_RGMII=1 COMPILE_UVVM_VIP_SBI=1 COMPILE_UVVM_VIP_SCOREBOARD=1 + COMPILE_UVVM_VIP_SPEC_COV=1 COMPILE_UVVM_VIP_SPI=1 COMPILE_UVVM_VIP_UART=1 fi diff --git a/libraries/vendors/compile-xilinx-ise.sh b/libraries/vendors/compile-xilinx-ise.sh index 3aabca7ba..2d62ea8ba 100755 --- a/libraries/vendors/compile-xilinx-ise.sh +++ b/libraries/vendors/compile-xilinx-ise.sh @@ -54,7 +54,7 @@ COMPILE_CORELIB=0 COMPILE_SECUREIP=0 VERBOSE=0 DEBUG=0 -FILTERING=0 # TODO: 1 +FILTERING=1 SKIP_LARGE_FILES=0 SUPPRESS_WARNINGS=0 CONTINUE_ON_ERROR=1 @@ -123,11 +123,11 @@ while [[ $# > 0 ]]; do GHDL="$2" # overwrite a potentially existing GHDL environment variable shift # skip argument ;; - --src) + --source) SrcDir="$2" shift # skip argument ;; - --out) + --output) DestDir="$2" shift # skip argument ;; @@ -157,33 +157,33 @@ if [[ $COMMAND -le 1 ]]; then echo " compile-xilinx-ise.sh <common command>|<library> [<options>] [<adv. options>]" echo "" echo "Common commands:" - echo " -h --help Print this help page" - echo " -c --clean Remove all generated files" + echo " -h --help Print this help page" + echo " -c --clean Remove all generated files" echo "" echo "Libraries:" - echo " -a --all Compile all Xilinx simulation libraries." - echo " --unisim Compile the unisim library." - echo " --unimacro Compile the unimacro library." - echo " --simprim Compile the simprim library." - echo " --corelib Compile the corelib library." - echo " --with-secureip Compile the secureip library." + echo " -a --all Compile all Xilinx simulation libraries." + echo " --unisim Compile the unisim library." + echo " --unimacro Compile the unimacro library." + echo " --simprim Compile the simprim library." + echo " --corelib Compile the corelib library." + echo " --with-secureip Compile the secureip library." echo "" echo "Library compile options:" - echo " --vhdl93 Compile the libraries with VHDL-93." - echo " --vhdl2008 Compile the libraries with VHDL-2008." - echo " -S --skip-largefiles Don't compile large files. Exclude *HSSI* and *HIP* files." - echo " -H --halt-on-error Halt on error(s)." + echo " --vhdl93 Compile the libraries with VHDL-93." + echo " --vhdl2008 Compile the libraries with VHDL-2008." + echo " -S --skip-largefiles Don't compile large files." + echo " -H --halt-on-error Halt on error(s)." echo "" echo "Advanced options:" - echo " --ghdl <GHDL binary> Path to GHDL's executable, e.g. /usr/local/bin/ghdl" - echo " --out <dir name> Name of the output directory, e.g. uvvm_util" - echo " --src <Path to UVVM> Path to the sources." + echo " --ghdl <GHDL binary> Path to GHDL's executable, e.g. /usr/local/bin/ghdl" + echo " --output <dir name> Name of the output directory, e.g. ise" + echo " --source <Path to ISE> Path to the sources." echo "" echo "Verbosity:" - echo " -v --verbose Print verbose messages." - echo " -d --debug Print debug messages." -# echo " -n --no-filter Disable output filtering scripts." - echo " -N --no-warnings Suppress all warnings. Show only error messages." + echo " -v --verbose Print verbose messages." + echo " -d --debug Print debug messages." +# echo " -n --no-filter Disable output filtering scripts." + echo " -N --no-warnings Suppress all warnings. Show only error messages." echo "" exit $COMMAND fi @@ -226,6 +226,11 @@ if [[ $? -ne 0 ]]; then echo 1>&2 -e "${COLORED_ERROR} While loading configurati source $ScriptDir/shared.sh if [[ $? -ne 0 ]]; then echo 1>&2 -e "${COLORED_ERROR} While loading further procedures.${ANSI_NOCOLOR}"; exit 1; fi +# <= $VHDLVersion +# <= $VHDLStandard +# <= $VHDLFlavor +GHDLSetup $VHDLStandard + # -> $SourceDirectories # -> $DestinationDirectories # -> $SrcDir @@ -241,29 +246,27 @@ CreateDestinationDirectory cd $DestinationDirectory -# -> $SUPPRESS_WARNINGS -# <= $GRC_COMMAND -SetupGRCat - - -# -> $VHDLStandard -# <= $VHDLVersion -# <= $VHDLStandard -# <= $VHDLFlavor -GHDLSetup - # Extend global GHDL Options Analyze_Parameters+=( -fexplicit - --no-vital-checks -Wbinding - -Wno-hide - -Wno-others - -Wno-parenthesis - -Wno-library - -Wno-pure +) +if [[ $DEBUG -eq 0 ]]; then + Analyze_Parameters+=( + -Wno-hide + ) +fi +if [[ ! (VERBOSE -eq 1) && ($DEBUG -eq 1) ]]; then + Analyze_Parameters+=( + -Wno-others + -Wno-static + ) +fi +Analyze_Parameters+=( --ieee=$VHDLFlavor + --no-vital-checks --std=$VHDLStandard + -frelaxed -P$DestinationDirectory ) diff --git a/libraries/vendors/compile-xilinx-vivado.sh b/libraries/vendors/compile-xilinx-vivado.sh index 279a9447f..c9ce1e2f5 100755 --- a/libraries/vendors/compile-xilinx-vivado.sh +++ b/libraries/vendors/compile-xilinx-vivado.sh @@ -53,7 +53,7 @@ COMPILE_UNIFAST=0 COMPILE_SECUREIP=0 VERBOSE=0 DEBUG=0 -FILTERING=0 # TODO: 1 +FILTERING=1 SKIP_LARGE_FILES=0 SUPPRESS_WARNINGS=0 CONTINUE_ON_ERROR=0 @@ -118,11 +118,11 @@ while [[ $# > 0 ]]; do GHDL="$2" # overwrite a potentially existing GHDL environment variable shift # skip argument ;; - --src) + --source) SrcDir="$2" shift # skip argument ;; - --out) + --output) DestDir="$2" shift # skip argument ;; @@ -152,32 +152,32 @@ if [[ $COMMAND -le 1 ]]; then echo " compile-xilinx-vivado.sh <common command>|<library> [<options>] [<adv. options>]" echo "" echo "Common commands:" - echo " -h --help Print this help page" - echo " -c --clean Remove all generated files" + echo " -h --help Print this help page" + echo " -c --clean Remove all generated files" echo "" echo "Libraries:" - echo " -a --all Compile all Xilinx simulation libraries." - echo " --unisim Compile the unisim library." - echo " --unimacro Compile the unimacro library." - echo " --unifast Compile the unifast library." - echo " --with-secureip Compile the secureip library." + echo " -a --all Compile all Xilinx simulation libraries." + echo " --unisim Compile the unisim library." + echo " --unimacro Compile the unimacro library." + echo " --unifast Compile the unifast library." + echo " --with-secureip Compile the secureip library." echo "" echo "Library compile options:" - echo " --vhdl93 Compile the libraries with VHDL-93." - echo " --vhdl2008 Compile the libraries with VHDL-2008." - echo " -S --skip-largefiles Don't compile large files. Exclude *HSSI* and *HIP* files." - echo " -H --halt-on-error Halt on error(s)." + echo " --vhdl93 Compile the libraries with VHDL-93." + echo " --vhdl2008 Compile the libraries with VHDL-2008." + echo " -S --skip-largefiles Don't compile large files." + echo " -H --halt-on-error Halt on error(s)." echo "" echo "Advanced options:" - echo " --ghdl <GHDL binary> Path to GHDL's executable, e.g. /usr/local/bin/ghdl" - echo " --out <dir name> Name of the output directory, e.g. uvvm_util" - echo " --src <Path to UVVM> Path to the sources." + echo " --ghdl <GHDL binary> Path to GHDL's executable, e.g. /usr/local/bin/ghdl" + echo " --output <dir name> Name of the output directory, e.g. vivado" + echo " --source <Path to Vivado> Path to the sources." echo "" echo "Verbosity:" - echo " -v --verbose Print verbose messages." - echo " -d --debug Print debug messages." -# echo " -n --no-filter Disable output filtering scripts." - echo " -N --no-warnings Suppress all warnings. Show only error messages." + echo " -v --verbose Print verbose messages." + echo " -d --debug Print debug messages." +# echo " -n --no-filter Disable output filtering scripts." + echo " -N --no-warnings Suppress all warnings. Show only error messages." echo "" exit $COMMAND fi @@ -219,6 +219,11 @@ if [[ $? -ne 0 ]]; then echo 1>&2 -e "${COLORED_ERROR} While loading configurati source $ScriptDir/shared.sh if [[ $? -ne 0 ]]; then echo 1>&2 -e "${COLORED_ERROR} While loading further procedures.${ANSI_NOCOLOR}"; exit 1; fi +# <= $VHDLVersion +# <= $VHDLStandard +# <= $VHDLFlavor +GHDLSetup $VHDLStandard + # -> $SourceDirectories # -> $DestinationDirectories # -> $SrcDir @@ -234,30 +239,27 @@ CreateDestinationDirectory cd $DestinationDirectory -# -> $SUPPRESS_WARNINGS -# <= $GRC_COMMAND -SetupGRCat - - -# -> $VHDLStandard -# <= $VHDLVersion -# <= $VHDLStandard -# <= $VHDLFlavor -GHDLSetup - # Extend global GHDL Options Analyze_Parameters+=( -fexplicit - - --no-vital-checks -Wbinding - -Wno-hide - -Wno-others - -Wno-parenthesis - -Wno-library - -Wno-pure +) +if [[ $DEBUG -eq 0 ]]; then + Analyze_Parameters+=( + -Wno-hide + ) +fi +if [[ ! (VERBOSE -eq 1) && ($DEBUG -eq 1) ]]; then + Analyze_Parameters+=( + -Wno-others + -Wno-static + ) +fi +Analyze_Parameters+=( --ieee=$VHDLFlavor + --no-vital-checks --std=$VHDLStandard + -frelaxed -P$DestinationDirectory ) diff --git a/libraries/vendors/config.sh b/libraries/vendors/config.sh index 035ce500f..a95f6021e 100755 --- a/libraries/vendors/config.sh +++ b/libraries/vendors/config.sh @@ -1,4 +1,3 @@ -#! /bin/bash # ============================================================================== # Authors: # Patrick Lehmann diff --git a/libraries/vendors/ghdl.grcrules b/libraries/vendors/ghdl.grcrules deleted file mode 100644 index 1bc607831..000000000 --- a/libraries/vendors/ghdl.grcrules +++ /dev/null @@ -1,15 +0,0 @@ -# color warnings -regexp=^.*?:\d+:\d+:warning: .* -colours=yellow -count=stop -========= - -# color errors -regexp=^.*?:\d+:\d+: .* -colours=red -count=stop -========= - -# skip additional message line on Linux -regexp=^ghdl: compilation error -skip=yes diff --git a/libraries/vendors/ghdl.skipwarning.grcrules b/libraries/vendors/ghdl.skipwarning.grcrules deleted file mode 100644 index 0609b0608..000000000 --- a/libraries/vendors/ghdl.skipwarning.grcrules +++ /dev/null @@ -1,14 +0,0 @@ -# skip warnings -regexp=^.*?:\d+:\d+:warning: .* -skip=yes -========= - -# color errors -regexp=^.*?:\d+:\d+: .* -colours=red -count=stop -========= - -# skip additional message line on Linux -regexp=^ghdl: compilation error -skip=yes diff --git a/libraries/vendors/shared.sh b/libraries/vendors/shared.sh index 5d234d91c..eed6379d1 100755 --- a/libraries/vendors/shared.sh +++ b/libraries/vendors/shared.sh @@ -71,7 +71,7 @@ SetupDirectories() { # source directory # ---------------------- - # If a command line argument ('--src') was passed in, use it, else use the default value + # If a command line argument ('--source') was passed in, use it, else use the default value # from config.sh if [[ ! -z "$SrcDir" ]]; then SourceDirectory=${SrcDir%/} # remove trailing slashes @@ -82,7 +82,7 @@ SetupDirectories() { fi # output directory # ---------------------- - # If a command line argument ('--out') was passed in, use it, else use the default value + # If a command line argument ('--output') was passed in, use it, else use the default value # from config.sh if [[ ! -z "$DestDir" ]]; then DestinationDirectory=${DestDir%/} # remove trailing slashes @@ -92,7 +92,7 @@ SetupDirectories() { if [[ -z $SourceDirectory || -z $DestinationDirectory ]]; then echo 1>&2 -e "${COLORED_ERROR} $Name is not configured in '$ScriptDir/config.sh'.${ANSI_NOCOLOR}" - echo 1>&2 -e " Use adv. options '--src' and '--out' or configure 'config.sh'." + echo 1>&2 -e " Use adv. options '--source' and '--output' or configure 'config.sh'." exit 1 elif [[ ! -d $SourceDirectory ]]; then echo 1>&2 -e "${COLORED_ERROR} Path '$SourceDirectory' does not exist.${ANSI_NOCOLOR}" @@ -107,20 +107,6 @@ SetupDirectories() { fi } -test $DEBUG -eq 1 && echo -e " ${ANSI_DARK_GRAY}procedure SetupGRCat( undocumented )${ANSI_NOCOLOR}" -# SetupGRCat -# -> undocumented -SetupGRCat() { - if [ -z "$(which grcat 2>/dev/null)" ]; then - # if grcat (generic colourizer) is not installed, use a dummy pipe command like 'cat' - GRC_COMMAND="cat" - elif [ $SUPPRESS_WARNINGS -eq 1 ]; then - GRC_COMMAND="grcat $ScriptDir/ghdl.skipwarning.grcrules" - else - GRC_COMMAND="grcat $ScriptDir/ghdl.grcrules" - fi -} - test $DEBUG -eq 1 && echo -e " ${ANSI_DARK_GRAY}procedure CreateDestinationDirectory( undocumented )${ANSI_NOCOLOR}" # CreateDestinationDirectory # -> undocumented |