| # Copyright © 2009 IBM Corporation |
| # 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 |
| # 2 of the License, or (at your option) any later version. |
| # This script checks the relcoations of a vmlinux for "suspicious" |
| die "$0 [path to objdump] [path to vmlinux]\n"; |
| # Have Kbuild supply the path to objdump so we handle cross compilation. |
| my $bad_relocs_count = 0; |
| open(FD, "$objdump -R $vmlinux|") or die; |
| # Only look at relcoation lines. |
| # These relocations are okay |
| next if (/R_PPC64_RELATIVE/ or /R_PPC64_NONE/ or |
| /R_PPC64_ADDR64\s+mach_/); |
| # If we see this type of relcoation it's an idication that |
| # we /may/ be using an old version of binutils. |
| print "WARNING: $bad_relocs_count bad relocations\n"; |
| print "WARNING: You need at binutils >= 2.19 to build a ". |
| "CONFIG_RELCOATABLE kernel\n"; |