binutils-gdb/gold/testsuite/script_test_10.sh
Ian Lance Taylor eb3730490e * script-sections.h (class Script_sections): Make
Sections_elements typedef public.
	* script-sections.cc (class Sort_output_sections): Add elements_
	field.  Add constructor which sets it; change all callers.
	(Sort_output_sections::is_before): New function.
	(Sort_output_sections::operator()): Call is_before.
	* configure.ac (NATIVE_OR_CROSS_LINKER): New automake
	conditional.
	* testsuite/script_test_10.sh: New test. Test script section
	order.
	* testsuite/script_test_10.t: Likewise.
	* testsuite/script_test_10.s: Likewise.
	* testsuite/Makefile.am: Wrap the cross linker tests and the
	common tests into NATIVE_OR_CROSS_LINKER.
	(check_SCRIPTS): Add script_test_10.sh.
	(check_DATA): Add script_test_10.stdout.
	(script_test_10.o, script_test_10): New targets.
	(script_test_10.stdout): New target.
	* configure, testsuite/Makefile.in: Regenerate.
2010-10-12 19:21:41 +00:00

47 lines
1.4 KiB
Bash
Executable File

#!/bin/sh
# script_test_10.sh -- test for the section order.
# Copyright 2010 Free Software Foundation, Inc.
# Written by Viktor Kutuzov <vkutuzov@accesssoftek.com>.
# This file is part of gold.
# 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, write to the Free Software
# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
# MA 02110-1301, USA.
check()
{
if ! grep -q "$2" "$1"
then
echo "Did not find expected section in $1:"
echo " $2"
echo ""
echo "Actual output below:"
cat "$1"
exit 1
fi
}
check script_test_10.stdout ".*\[ 1\] .text"
check script_test_10.stdout ".*\[ 2\] .sec0"
check script_test_10.stdout ".*\[ 3\] .sec1"
check script_test_10.stdout ".*\[ 4\] .sec2"
check script_test_10.stdout ".*\[ 5\] .secz"
check script_test_10.stdout ".*\[ 6\] .sec3"
check script_test_10.stdout ".*\[ 7\] .data"
check script_test_10.stdout ".*\[ 8\] .bss"