| # Copyright (C) 1997-2016 Free Software Foundation, Inc. | |
| # | |
| # This file is part of DejaGnu. | |
| # | |
| # DejaGnu 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. | |
| # | |
| # DejaGnu 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 DejaGnu. If not, see <http://www.gnu.org/licenses/>. | |
| # find_sid -- find a usable SID simulator. | |
| # This proc is local to this file and is used to locate a SID to use. | |
| # Search the build tree, then $PATH. | |
| # | |
| # Written by Ben Elliston (bje@redhat.com). | |
| proc find_sid { target_alias } { | |
| global env | |
| global tool_root_dir | |
| set try [lookfor_file $tool_root_dir sid/bsp/$target_alias-sid] | |
| if { $try ne "" } { | |
| set sid_build [lookfor_file $tool_root_dir sid/main/dynamic/sid] | |
| if { $sid_build ne "" } { set env(SID) $sid_build } | |
| return $try | |
| } | |
| # In this case, the bsp script must be available on the PATH. | |
| # Just hope for the best! | |
| return $target_alias-sid | |
| } | |
| # find_sid_conf -- find a usable pre-generated SID config file. | |
| proc find_sid_conf { config } { | |
| global env | |
| global srcdir | |
| set try [lookfor_file $srcdir sid/bsp/pregen/$config.conf] | |
| if { $try eq "" } then { return $config.conf } else { return $try } | |
| } | |
| # find_rawsid -- find a usable SID simulator. | |
| # This proc is local to this file and is used to locate a SID to use. | |
| # Search the build tree, then $PATH. | |
| proc find_rawsid { } { | |
| global env | |
| global tool_root_dir | |
| global srcdir | |
| set try [lookfor_file $tool_root_dir sid/main/dynamic/sid] | |
| if { $try eq "" } { | |
| set try "sid" | |
| } else { | |
| # testing build tree | |
| set env(SID_LIBRARY_PATH) [join [glob $tool_root_dir/sid/component/* $srcdir/sid/component/*] ":"] | |
| # srcdir=/..../sid/component/testsuite | |
| set tcl_library $srcdir/tcl/library | |
| global host_os | |
| switch -glob -- $host_os { | |
| {cygwin*} { set tcl_library [exec cygpath -w $tcl_library] } | |
| } | |
| set env(TCL_LIBRARY) $tcl_library | |
| } | |
| return $try | |
| } |