# 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.

# This is a list of toolchains that are supported on this board.
set_board_info target_install {sparclet-aout}

# Load the generic configuration for this board. This will define any
# routines needed by the tool to communicate with the board,.
load_generic_config "sparclet"

# It needs broken-saverestore by default.
process_multilib_options "-mbroken-saverestore"

# We only support newlib on this target. We assume that all multilib
# options have been specified before we get here.
set_board_info compiler "[find_gcc]"
set_board_info cflags "[newlib_include_flags] [libgloss_include_flags]"
set_board_info ldflags "-nostdlib [libgloss_link_flags] [newlib_link_flags] -Wl,-Ttext,0x12020000 -N"

# tsc701 linker script.
set_board_info ldscript "-Ttsc701.ld"

# The board doesn't return exit statuses and we need to indicate this.
# However, the standard GCC wrapper won't work with this target because
# it doesn't return stuff from printf ().
#set_board_info needs_status_wrapper 1

# The monitor uses a GDB stub.
set_board_info use_gdb_stub 1
# The GDB protocol used to communicate with this board.
set_board_info gdb_protocol "sparclet"
# The offset in memory that we load programs.
set_board_info gdb_load_offset "0x12020000"
# And the place in memory where we load the stub.
set_board_info gdb_stub_offset "0x12010000"
# No mathlib.
set_board_info mathlib ""
# We can't do I/O in GDB.
set_board_info gdb,noinferiorio 1
# Or pass arguments.
set_board_info noargs 1

set_board_info gcc,no_varargs 1
set_board_info gcc,no_label_values 1

# This is the old GDB prompt for the toolchain.
# Uncomment for old tests
set_board_info gdb_prompt "\\(gdb\\)"

# We always have to set a breakpoint at exit(), instead of just _exit().
set_board_info always_break_exit 1
