Select Git revision
set_modelsim
-
Eric Kooistra authoredEric Kooistra authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
set_modelsim 3.18 KiB
#!/bin/bash
###############################################################################
#
# Copyright (C) 2014
# ASTRON (Netherlands Institute for Radio Astronomy) <http://www.astron.nl/>
# P.O.Box 2, 7990 AA Dwingeloo, The Netherlands
#
# This program 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 3 of the License, or
# (at your option) any later version.
#
# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
#
###############################################################################
# Purpose: Map command line argument to a tool version
# Description:
# By using command line arguments like "unb1" or "unb2" to select the tool
# version it is easier to manage combinations of tool versions.
# General tool and project settings
# - use '. <script>.sh' to have the settings apply in this shell, otherwise they get lost when <script>.sh returns
# Select target
export TOOLSET=${1:-}
echo "Make Modelsim and Altera library simulation settings for RadioHDL with tool setting: ${TOOLSET}"
# Select tool version
if [ "${TOOLSET}" = "unb1" ]; then
. ${RADIOHDL}/tools/quartus/quartus_version.sh 11.1
. ${RADIOHDL}/tools/modelsim/modelsim_version.sh 6.6c
elif [ "${TOOLSET}" = "unb2" ]; then
. ${RADIOHDL}/tools/quartus/quartus_version.sh 14.1
. ${RADIOHDL}/tools/modelsim/modelsim_version.sh 10.4
# Next line may be needed, but comment it if it yields ld.so errors
export LD_PRELOAD=/home/software/freetype2/usr/lib/libfreetype.so
elif [ "${TOOLSET}" = "unb233" ]; then
# unb233 = toolset unb2 on dop233
# however better use 'unb2' and comment the export LD_PRELOAD line when on dop233, because the generate_ip.sh scripts use fixed 'unb2'.
. ${RADIOHDL}/tools/quartus/quartus_version.sh 14.1
. ${RADIOHDL}/tools/modelsim/modelsim_version.sh 10.4
else
echo "error: unknown tool setting: ${TOOLSET} (choose 'unb1' or 'unb2')"
exit 1
fi
# Remarks:
# - No need for MODELSIM_TCL environment variable and modelsim.tcl, because these are not preferred and instead call commands.do via -do argument.
# - No need for MODELSIM environment variable to point to a specific modelsim.ini file, because RADIOHDL can use the default modelsim.ini
# - For RADIOHDL the modelsim project files are created by a Python script.
# - The paths to the IEEE libraries are defined by the MODELTECH environment variable that gets defined by Modelsim itself when it starts
# - The paths to the FPGA technology libraries are defined in the [library] section in the modelsim project files using MODEL_TECH_ALTERA_LIB
# environment variable that gets defined in quartus_version.sh. Similar paths to generic libraries are defined using their absolute path.
# - Default modelsim.ini settings can be overruled by project specific settings in the [vsim] section in the modelsim project files.