# Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # 2005, 2006, 2007, 2008, 2009, 2010 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, write to the Free Software Foundation, # Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. # 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 != "" } { set sid_build [lookfor_file ${tool_root_dir} sid/main/dynamic/sid] if { $sid_build != "" } { 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 == "" } 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 == "" } { 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 }