diff options
author | Masami Hiramatsu <mhiramat@redhat.com> | 2009-12-18 10:40:13 -0500 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2009-12-18 09:26:56 -0800 |
commit | 8bee738bb1979c8bf7b42716b772522ab7d26b0c (patch) | |
tree | 234a576fc1d1f0ba8533a714839927783010382f /arch/x86/tools | |
parent | 18374d89e5fe96772102f44f535efb1198d9be08 (diff) | |
download | linux-stable-8bee738bb1979c8bf7b42716b772522ab7d26b0c.tar.gz linux-stable-8bee738bb1979c8bf7b42716b772522ab7d26b0c.tar.bz2 linux-stable-8bee738bb1979c8bf7b42716b772522ab7d26b0c.zip |
x86: Fix objdump version check in chkobjdump.awk for different formats.
Different version of objdump says its version in different way;
GNU objdump 2.16.1
or
GNU objdump version 2.19.51.0.14-1.fc11 20090722
This patch uses the first argument which starts with a number
as version string.
Changes in v2:
- Remove unneeded increment.
Signed-off-by: Masami Hiramatsu <mhiramat@redhat.com>
LKML-Reference: <20091218154012.16960.5113.stgit@dhcp-100-2-132.bos.redhat.com>
Suggested-by: H. Peter Anvin <hpa@zytor.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'arch/x86/tools')
-rw-r--r-- | arch/x86/tools/chkobjdump.awk | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/arch/x86/tools/chkobjdump.awk b/arch/x86/tools/chkobjdump.awk index 5bbb5a33f220..fd1ab80be0de 100644 --- a/arch/x86/tools/chkobjdump.awk +++ b/arch/x86/tools/chkobjdump.awk @@ -8,14 +8,24 @@ BEGIN { od_sver = 19; } -/^GNU/ { - split($3, ver, "."); +/^GNU objdump/ { + verstr = "" + for (i = 3; i <= NF; i++) + if (match($(i), "^[0-9]")) { + verstr = $(i); + break; + } + if (verstr == "") { + printf("Warning: Failed to find objdump version number.\n"); + exit 0; + } + split(verstr, ver, "."); if (ver[1] > od_ver || (ver[1] == od_ver && ver[2] >= od_sver)) { exit 1; } else { printf("Warning: objdump version %s is older than %d.%d\n", - $4, od_ver, od_sver); + verstr, od_ver, od_sver); print("Warning: Skipping posttest."); # Logic is inverted, because we just skip test without error. exit 0; |