[PATCH 8/9] UML - Fix biarch gcc build on x86_64

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I run an x86_64 kernel with i386 userspace (Ubuntu Dapper) and decided
to try out UML today. I found that UML wasn't quite aware of biarch
compilers (which Ubuntu i386 ships). A fix similar to what was done for
x86_64 should probably be committed (see
http://marc.theaimsgroup.com/?l=linux-kernel&m=113425940204010&w=2).
Without the FLAGS changes, the build will fail at a number of places and
without the LINK change, the final link will fail.

Signed-off-by: Nishanth Aravamudan <[email protected]>

Index: linux-2.6.17/arch/um/Makefile-x86_64
===================================================================
--- linux-2.6.17.orig/arch/um/Makefile-x86_64	2006-06-20 17:24:29.000000000 -0400
+++ linux-2.6.17/arch/um/Makefile-x86_64	2006-06-29 10:36:18.000000000 -0400
@@ -6,9 +6,11 @@ START := 0x60000000
 
 #We #undef __x86_64__ for kernelspace, not for userspace where
 #it's needed for headers to work!
-CFLAGS += -U__$(SUBARCH)__ -fno-builtin
-USER_CFLAGS += -fno-builtin
+CFLAGS += -U__$(SUBARCH)__ -fno-builtin -m64
+USER_CFLAGS += -fno-builtin -m64
 CHECKFLAGS  += -m64
+AFLAGS += -m64
+LDFLAGS += -m elf_x86_64
 
 ELF_ARCH := i386:x86-64
 ELF_FORMAT := elf64-x86-64
@@ -16,3 +18,4 @@ ELF_FORMAT := elf64-x86-64
 # Not on all 64-bit distros /lib is a symlink to /lib64. PLD is an example.
 
 LINK-$(CONFIG_LD_SCRIPT_DYN) += -Wl,-rpath,/lib64
+LINK-y += -m64
Index: linux-2.6.17/arch/um/kernel/vmlinux.lds.S
===================================================================
--- linux-2.6.17.orig/arch/um/kernel/vmlinux.lds.S	2005-08-28 19:41:01.000000000 -0400
+++ linux-2.6.17/arch/um/kernel/vmlinux.lds.S	2006-06-29 10:36:18.000000000 -0400
@@ -1,4 +1,6 @@
 #include <linux/config.h>
+/* in case the preprocessor is a 32bit one */
+#undef i386
 #ifdef CONFIG_LD_SCRIPT_STATIC
 #include "uml.lds.S"
 #else

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux