diff options
Diffstat (limited to 'baseboards')
-rw-r--r-- | baseboards/arm-sid.exp | 11 | ||||
-rw-r--r-- | baseboards/basic-sid.exp | 58 | ||||
-rw-r--r-- | baseboards/i386-sid.exp | 25 | ||||
-rw-r--r-- | baseboards/m32r-sid.exp | 7 | ||||
-rw-r--r-- | baseboards/m68k-sid.exp | 7 | ||||
-rw-r--r-- | baseboards/sh-sid.exp | 25 |
6 files changed, 133 insertions, 0 deletions
diff --git a/baseboards/arm-sid.exp b/baseboards/arm-sid.exp new file mode 100644 index 0000000..587f98f --- /dev/null +++ b/baseboards/arm-sid.exp @@ -0,0 +1,11 @@ +# This is a list of toolchains that are supported on this board. +set_board_info target_install {arm-elf thumb-elf} +set_board_info sim "arm-elf-sid" + +# SID does not emulate the FPU +process_multilib_options "-msoft-float" +set_board_info sim,defaultendian "-EL" + +# Load the generic configuration for this board. This will define a basic set +# of routines needed by the tool to communicate with the board. +load_generic_config "sid" diff --git a/baseboards/basic-sid.exp b/baseboards/basic-sid.exp new file mode 100644 index 0000000..290c6f4 --- /dev/null +++ b/baseboards/basic-sid.exp @@ -0,0 +1,58 @@ +# 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 +} diff --git a/baseboards/i386-sid.exp b/baseboards/i386-sid.exp new file mode 100644 index 0000000..ca0a967 --- /dev/null +++ b/baseboards/i386-sid.exp @@ -0,0 +1,25 @@ +# This is a list of toolchains that are supported on this board. +set_board_info target_install {i386-elf} + +# Load a baseboard description for SID simulators. +load_base_board_description "basic-sid" + +set_board_info sim [find_rawsid] +set_board_info sim,protocol "sid" +set_board_info ldflags "-nostdlib [libgloss_link_flags] [newlib_link_flags]" +set_board_info ldscript "-Tcygmon.ld" +set_board_info gdb,start_symbol "__start" + +if { ${tool} == "gdb" } { + set_board_info sim,options "-f [find_sid_conf i386-gdb]" +} else { + set_board_info sim,options "-f [find_sid_conf i386-gloss]" +} + +# Used by a few gcc.c-torture testcases to delimit how large the +# stack can be. +set_board_info gcc,stack_size 16384 + +# Load the generic configuration for this board. This will define a basic set +# of routines needed by the tool to communicate with the board. +load_generic_config "sid" diff --git a/baseboards/m32r-sid.exp b/baseboards/m32r-sid.exp new file mode 100644 index 0000000..b9e37c4 --- /dev/null +++ b/baseboards/m32r-sid.exp @@ -0,0 +1,7 @@ +# This is a list of toolchains that are supported on this board. +set_board_info target_install {m32r-elf} +set_board_info sim "m32r-elf-sid" + +# Load the generic configuration for this board. This will define a basic set +# of routines needed by the tool to communicate with the board. +load_generic_config "sid" diff --git a/baseboards/m68k-sid.exp b/baseboards/m68k-sid.exp new file mode 100644 index 0000000..6681b4b --- /dev/null +++ b/baseboards/m68k-sid.exp @@ -0,0 +1,7 @@ +# This is a list of toolchains that are supported on this board. +set_board_info target_install {m68k-elf} +set_board_info sim "m68k-elf-sid" + +# Load the generic configuration for this board. This will define a basic set +# of routines needed by the tool to communicate with the board. +load_generic_config "sid" diff --git a/baseboards/sh-sid.exp b/baseboards/sh-sid.exp new file mode 100644 index 0000000..e41bfe8 --- /dev/null +++ b/baseboards/sh-sid.exp @@ -0,0 +1,25 @@ +# This is a list of toolchains that are supported on this board. +set_board_info target_install {sh-elf} + +# Load a baseboard description for SID simulators. +load_base_board_description "basic-sid" + +process_multilib_options "" + +verbose "Using simulator [board_info $board sim]\n" +set_board_info sim [find_rawsid] +if { ${tool} == "gdb" } { + set_board_info sim,options "-f [find_sid_conf sh-gdb]" +} else { + set_board_info sim,options "-f [find_sid_conf sh-gloss]" +} + +# Load the generic configuration for this board. This will define a basic set +# of routines needed by the tool to communicate with the board. +load_generic_config "sid" + +# default endian: big +# set_board_info sim,defaultendian "-EB" + +# Tells the test harness to use pre-generated sid configurations. +set_board_info sim,protocol "sid" |