Messages in this thread Patch in this message | | | From | Keith Owens <> | Subject | Re: [PATCH] scripts - use $OBJDUMP to get correct objdump (cross compile) | Date | Tue, 20 Sep 2005 18:28:49 +1000 |
| |
On Mon, 19 Sep 2005 22:06:45 +0100, Ben Dooks <ben-linux@fluff.org> wrote: >The scripts for `make buildcheck` are executing >objdump straight, which is wrong if the system >is using `make CROSS_COMPILE=....`. > >Change the scripts to use $OBJDUMP passed from >the Makefile's environment, so that the correct >objdump is used, and the symbols are printed >correctly
Those scripts are meant to work even when they are invoked by hand, without OBJDUMP being defined in the environment. This is the correct fix.
Signed-off-by: Keith Owens <kaos@ocs.com.au>
Index: linux/scripts/namespace.pl =================================================================== --- linux.orig/scripts/namespace.pl 2005-08-29 09:41:01.000000000 +1000 +++ linux/scripts/namespace.pl 2005-09-20 18:25:12.124090186 +1000 @@ -67,11 +67,17 @@ use strict; use File::Find; my $nm = "/usr/bin/nm -p"; -my $objdump = "/usr/bin/objdump -s -j .comment"; my $srctree = ""; my $objtree = ""; $srctree = "$ENV{'srctree'}/" if (exists($ENV{'srctree'})); $objtree = "$ENV{'objtree'}/" if (exists($ENV{'objtree'})); +my $objdump; +if (exists($ENV{'OBJDUMP'})) { + $objdump = $ENV{'OBJDUMP'}; +} else { + $objdump = 'objdump'; +} +$objdump .= ' -s -j .comment'; if ($#ARGV != -1) { print STDERR "usage: $0 takes no parameters\n"; Index: linux/scripts/reference_discarded.pl =================================================================== --- linux.orig/scripts/reference_discarded.pl 2005-09-20 16:36:32.095627904 +1000 +++ linux/scripts/reference_discarded.pl 2005-09-20 18:22:00.117517858 +1000 @@ -14,11 +14,17 @@ my $object; my $line; my $ignore; my $errorcount; +my $objdump; +if (exists($ENV{'OBJDUMP'})) { + $objdump = $ENV{'OBJDUMP'}; +} else { + $objdump = 'objdump'; +} $| = 1; # printf("Finding objects, "); -open(OBJDUMP_LIST, "find . -name '*.o' | xargs objdump -h |") || die "getting objdump list failed"; +open(OBJDUMP_LIST, "find . -name '*.o' | xargs $objdump -h |") || die "getting objdump list failed"; while (defined($line = <OBJDUMP_LIST>)) { chomp($line); if ($line =~ /:\s+file format/) { @@ -74,7 +80,7 @@ foreach $object (keys(%object)) { $errorcount = 0; foreach $object (keys(%object)) { my $from; - open(OBJDUMP, "objdump -r $object|") || die "cannot objdump -r $object"; + open(OBJDUMP, "$objdump -r $object|") || die "cannot objdump -r $object"; while (defined($line = <OBJDUMP>)) { chomp($line); if ($line =~ /RELOCATION RECORDS FOR /) { Index: linux/scripts/reference_init.pl =================================================================== --- linux.orig/scripts/reference_init.pl 2005-09-20 16:36:32.095627904 +1000 +++ linux/scripts/reference_init.pl 2005-09-20 18:24:14.060854489 +1000 @@ -22,11 +22,17 @@ my %object; my $object; my $line; my $ignore; +my $objdump; +if (exists($ENV{'OBJDUMP'})) { + $objdump = $ENV{'OBJDUMP'}; +} else { + $objdump = 'objdump'; +} $| = 1; printf("Finding objects, "); -open(OBJDUMP_LIST, "find . -name '*.o' | xargs objdump -h |") || die "getting objdump list failed"; +open(OBJDUMP_LIST, "find . -name '*.o' | xargs $objdump -h |") || die "getting objdump list failed"; while (defined($line = <OBJDUMP_LIST>)) { chomp($line); if ($line =~ /:\s+file format/) { @@ -81,7 +87,7 @@ printf("ignoring %d conglomerate(s)\n", printf("Scanning objects\n"); foreach $object (sort(keys(%object))) { my $from; - open(OBJDUMP, "objdump -r $object|") || die "cannot objdump -r $object"; + open(OBJDUMP, "$objdump -r $object|") || die "cannot objdump -r $object"; while (defined($line = <OBJDUMP>)) { chomp($line); if ($line =~ /RELOCATION RECORDS FOR /) { - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |