diff mbox

[5/6] kbuild: Use single pass kallsyms

Message ID 20140208160143.GF12219@tassilo.jf.intel.com (mailing list archive)
State New, archived
Headers show

Commit Message

Andi Kleen Feb. 8, 2014, 4:01 p.m. UTC
> diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh
> index 4c5435f420a6..06469556c580 100644
> --- a/scripts/link-vmlinux.sh
> +++ b/scripts/link-vmlinux.sh
> @@ -213,7 +213,7 @@ if [ -n "${CONFIG_KALLSYMS}" ] ; then
>  
>  	info PATCHFILE vmlinux
>  	OFF=$(${OBJDUMP} --section-headers vmlinux |
> -	     gawk -f ./source/scripts/elf_file_offset \
> +	     gawk -f ./scripts/elf_file_offset \

I think that would break with object dirs (which was what I used),
because the scripts there only has some executables.

Really need ${srcdir}, but it would need to be exported first.

This should work:






-Andi

Comments

Markus Trippelsdorf Feb. 8, 2014, 6 p.m. UTC | #1
On 2014.02.08 at 08:01 -0800, Andi Kleen wrote:
> > diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh
> > index 4c5435f420a6..06469556c580 100644
> > --- a/scripts/link-vmlinux.sh
> > +++ b/scripts/link-vmlinux.sh
> > @@ -213,7 +213,7 @@ if [ -n "${CONFIG_KALLSYMS}" ] ; then
> >  
> >  	info PATCHFILE vmlinux
> >  	OFF=$(${OBJDUMP} --section-headers vmlinux |
> > -	     gawk -f ./source/scripts/elf_file_offset \
> > +	     gawk -f ./scripts/elf_file_offset \
> 
> I think that would break with object dirs (which was what I used),
> because the scripts there only has some executables.
> 
> Really need ${srcdir}, but it would need to be exported first.
> 
> This should work:

Yes. The patch fixes the issue. 
Thanks.
diff mbox

Patch

diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh
index 4c5435f..5f0ae1a 100644
--- a/scripts/link-vmlinux.sh
+++ b/scripts/link-vmlinux.sh
@@ -212,8 +212,10 @@  if [ -n "${CONFIG_KALLSYMS}" ] ; then
 	${OBJCOPY} -O binary .tmp_kallsyms2.o .tmp_kallsyms2.bin
 
 	info PATCHFILE vmlinux
+	EF=scripts/elf_file_offset
+	if [ ! -r $EF ] ; then EF=source/$EF ; fi
 	OFF=$(${OBJDUMP} --section-headers vmlinux |
-	     gawk -f ./source/scripts/elf_file_offset \
+	     gawk -f $EF \
 	-v section=.kallsyms -v filesize=$(stat -c%s .tmp_kallsyms2.bin) )
 	if [ -z "$OFF" ] ; then
 		echo "Cannot find .kallsyms section in vmlinux binary"