b9959a109c84e0957b56999e8a282282879defe4
[platform/upstream/elfutils.git] / tests / run-unstrip-test.sh
1 #! /bin/sh
2 # Copyright (C) 2007-2010 Red Hat, Inc.
3 # This file is part of Red Hat elfutils.
4 #
5 # Red Hat elfutils is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by the
7 # Free Software Foundation; version 2 of the License.
8 #
9 # Red Hat elfutils is distributed in the hope that it will be useful, but
10 # WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12 # General Public License for more details.
13 #
14 # You should have received a copy of the GNU General Public License along
15 # with Red Hat elfutils; if not, write to the Free Software Foundation,
16 # Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301 USA.
17 #
18 # Red Hat elfutils is an included package of the Open Invention Network.
19 # An included package of the Open Invention Network is a package for which
20 # Open Invention Network licensees cross-license their patents.  No patent
21 # license is granted, either expressly or impliedly, by designation as an
22 # included package.  Should you wish to participate in the Open Invention
23 # Network licensing program, please visit www.openinventionnetwork.com
24 # <http://www.openinventionnetwork.com>.
25
26 . $srcdir/test-subr.sh
27
28 original=${original:-testfile12}
29 stripped=${stripped:-testfile17}
30 debugfile=${debugfile:-${stripped}.debug}
31
32 testfiles $original $stripped $debugfile
33 tempfiles testfile.unstrip testfile.inplace
34
35 # These are old reference output from run-test-strip6.sh, when
36 # strip left the .debug file with unchanged sh_size in
37 # stripped sections that shrank in the stripped file.  strip
38 # no longer does that, but unstrip must still handle it.
39
40 testrun ../src/unstrip -o testfile.unstrip $stripped $debugfile
41
42 testrun ../src/elfcmp --hash-inexact $original testfile.unstrip
43
44 # Also test modifying the file in place.
45
46 rm -f testfile.inplace
47 cp $debugfile testfile.inplace
48 chmod 644 testfile.inplace
49 testrun ../src/unstrip $stripped testfile.inplace
50
51 testrun ../src/elfcmp --hash-inexact $original testfile.inplace