Re: [PATCH 5/6] kbuild: Use single pass kallsyms

From: Andi Kleen
Date: Sat Feb 08 2014 - 11:02:29 EST


> 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:


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"




-Andi

--
ak@xxxxxxxxxxxxxxx -- Speaking for myself only
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/