Home | History | Annotate | Download | only in testsuite
      1 #!/bin/sh
      2 
      3 # retain_symbols_file_test.sh -- a test case for -retain-symbols-file
      4 
      5 # Copyright (C) 2009-2016 Free Software Foundation, Inc.
      6 # Written by Craig Silverstein <csilvers (at] google.com>.
      7 
      8 # This file is part of gold.
      9 
     10 # This program is free software; you can redistribute it and/or modify
     11 # it under the terms of the GNU General Public License as published by
     12 # the Free Software Foundation; either version 3 of the License, or
     13 # (at your option) any later version.
     14 
     15 # This program is distributed in the hope that it will be useful,
     16 # but WITHOUT ANY WARRANTY; without even the implied warranty of
     17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     18 # GNU General Public License for more details.
     19 
     20 # You should have received a copy of the GNU General Public License
     21 # along with this program; if not, write to the Free Software
     22 # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
     23 # MA 02110-1301, USA.
     24 
     25 # The Makefile tries linking simple_test.o with -retain-symbols-file.
     26 # It then runs nm over the results.  We check that the output is right.
     27 
     28 check_present()
     29 {
     30     if ! grep -q "$1" retain_symbols_file_test.stdout
     31     then
     32         echo "Did not find expected symbol $1 in retain_symbols_file_test.stdout"
     33         exit 1
     34     fi
     35 }
     36 
     37 check_absent()
     38 {
     39     if grep -q "$1" retain_symbols_file_test.stdout
     40     then
     41         echo "Found unexpected symbol $1 in retain_symbols_file_test.stdout"
     42         exit 1
     43     fi
     44 }
     45 
     46 check_present 't1'
     47 check_present 't20a::get()'
     48 check_present 't18()'
     49 check_absent 't10'
     50 check_absent 't1()'
     51 check_absent 't16b::t()'
     52 
     53 exit 0
     54