diff options
author | Masami Hiramatsu <[email protected]> | 2009-12-18 10:40:13 -0500 |
---|---|---|
committer | H. Peter Anvin <[email protected]> | 2009-12-18 09:26:56 -0800 |
commit | 8bee738bb1979c8bf7b42716b772522ab7d26b0c (patch) | |
tree | 234a576fc1d1f0ba8533a714839927783010382f | |
parent | 18374d89e5fe96772102f44f535efb1198d9be08 (diff) |
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 <[email protected]>
LKML-Reference: <[email protected]>
Suggested-by: H. Peter Anvin <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Andrew Morton <[email protected]>
Signed-off-by: H. Peter Anvin <[email protected]>
-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; |