Commit cf87dcd14064e7660f2b11b35b9e4949e9812fd2

Authored by Sam Ravnborg
1 parent e06b8b98da

kbuild: fix building vmlinux.o

Ingo Molnar wrote:
>
> i've got a build log from a weird build error below:
>
>   LD      init/built-in.o
> distcc[12023] ERROR: compile (null) on localhost failed
> make: *** [vmlinux.o] Error 1
> make: *** Waiting for unfinished jobs....
>   LD      .tmp_vmlinux1
>

Building vmlinux.o were moved up in the dependency chain so we started
to build it before the kallsym stuff. This was done to let modpost
report section mismatch bugs even when the final link failed.

Originally I had expected the dependency of $(kallsyms.o) to
cover this but it turns out that we need to be even more explicit.
Fix this by adding a conditional dependency on firat target
used in the kallsyms serie of builds.

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Roland McGrath <roland@redhat.com>

Showing 1 changed file with 3 additions and 1 deletions Side-by-side Diff

... ... @@ -811,7 +811,9 @@
811 811 $(Q)rm -f .old_version
812 812  
813 813 # build vmlinux.o first to catch section mismatch errors early
814   -$(kallsyms.o): vmlinux.o
  814 +ifdef CONFIG_KALLSYMS
  815 +.tmp_vmlinux1: vmlinux.o
  816 +endif
815 817 vmlinux.o: $(vmlinux-lds) $(vmlinux-init) $(vmlinux-main) FORCE
816 818 $(call if_changed_rule,vmlinux-modpost)
817 819