Commit b3698c03eb6d4581e879d6bb0f183ed8dda96d37

Authored by Paolo 'Blaisorblade' Giarrusso
Committed by Andi Kleen
1 parent 7a0a2dff1c

[PATCH] Fix boot code head.S warning

When compiling a 64-bit kernel on an Ubuntu 6.06 32bit system (whose GCC is also
a cross-compiler for x86_64) I've seen that head.o is compiled as a 64-bit file
(while it should not) and ld complaining about this during linking:
[AK: it happens on all systems with new binutils]

ld: warning: i386:x86-64 architecture of input file
`arch/x86_64/boot/compressed/head.o' is incompatible with i386 output

I've verified that removing -m64 from compilation flags to turn
"-m64 -traditional -m32" into "-traditional -m32" fixes the issue.

Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: Andi Kleen <ak@suse.de>

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

arch/x86_64/boot/compressed/Makefile
... ... @@ -7,7 +7,8 @@
7 7 #
8 8  
9 9 targets := vmlinux vmlinux.bin vmlinux.bin.gz head.o misc.o piggy.o
10   -EXTRA_AFLAGS := -traditional -m32
  10 +EXTRA_AFLAGS := -traditional
  11 +AFLAGS := $(subst -m64,-m32,$(AFLAGS))
11 12  
12 13 # cannot use EXTRA_CFLAGS because base CFLAGS contains -mkernel which conflicts with
13 14 # -m32