Home | History | Annotate | Download | only in ld-sh
      1 # Expect script for VxWorks targeted SH linker tests
      2 #   Copyright (C) 2006-2016 Free Software Foundation, Inc.
      3 #
      4 # This file is part of the GNU Binutils.
      5 #
      6 # This program is free software; you can redistribute it and/or modify
      7 # it under the terms of the GNU General Public License as published by
      8 # the Free Software Foundation; either version 3 of the License, or
      9 # (at your option) any later version.
     10 #
     11 # This program is distributed in the hope that it will be useful,
     12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
     13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     14 # GNU General Public License for more details.
     15 #
     16 # You should have received a copy of the GNU General Public License
     17 # along with this program; if not, write to the Free Software
     18 # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
     19 # MA 02110-1301, USA.
     20 
     21 if { ![istarget "sh-*-vxworks"] } {
     22     return
     23 }
     24 
     25 set endians { "--big" "-EB" "" "--little" "-EL" "-le" }
     26 
     27 foreach { gas_option ld_option suffix } $endians {
     28     set vxworkstests {
     29 	{"VxWorks shared library test 1" "-shared -Tvxworks1.ld $ld_option" ""
     30 	 "$gas_option" {vxworks1-lib.s}
     31 	 {{readelf --relocs vxworks1-lib.rd}
     32 	  {objdump -dr vxworks1-lib$suffix.dd}
     33 	  {readelf --symbols vxworks1-lib.nd} {readelf -d vxworks1-lib.td}}
     34 	 "libvxworks1.so"}
     35 	{"VxWorks executable test 1 (dynamic)" \
     36 	 "tmpdir/libvxworks1.so -Tvxworks1.ld -q --force-dynamic $ld_option" ""
     37 	 "$gas_option" {vxworks1.s}
     38 	 {{readelf --relocs vxworks1.rd} {objdump -dr vxworks1$suffix.dd}}
     39 	 "vxworks1"}
     40 	{"VxWorks executable test 2 (dynamic)" \
     41 	 "-Tvxworks1.ld -q --force-dynamic $ld_option" ""
     42 	 "$gas_option" {vxworks2.s}
     43 	 {{readelf --segments vxworks2.sd}}
     44 	 "vxworks2"}
     45 	{"VxWorks executable test 2 (static)"
     46 	 "-Tvxworks1.ld $ld_option" ""
     47 	 "$gas_option" {vxworks2.s}
     48 	 {{readelf --segments vxworks2-static.sd}}
     49 	 "vxworks2"}
     50 	{"VxWorks shared library test 3" "-shared -Tvxworks1.ld $ld_option" ""
     51 	 "$gas_option" {vxworks3-lib.s}
     52 	    {{objdump -dr vxworks3-lib$suffix.dd}}
     53 	 "libvxworks3.so"}
     54 	{"VxWorks executable test 3 (dynamic)" \
     55 	 "tmpdir/libvxworks3.so -Tvxworks1.ld -q --force-dynamic $ld_option" ""
     56 	 "$gas_option" {vxworks3.s}
     57 	 {{objdump -d vxworks3$suffix.dd}}
     58 	 "vxworks3"}
     59     }
     60     run_ld_link_tests [subst $vxworkstests]
     61 }
     62 run_dump_test "vxworks1-static"
     63