No longer builds, but this is a good intermediate save point.
[akaros.git] / kern / arch / x86 / Makefile
index 86068b9..42bcd18 100644 (file)
@@ -1,15 +1,19 @@
 ifeq ($(CONFIG_X86_64),y)
-#CROSS_COMPILE := x86_64-ros-
-CROSS_COMPILE := 
+CROSS_COMPILE := x86_64-ucb-akaros-
 BITS := 64
 KERNEL_LD := kernel64.ld
 CFLAGS_KERNEL += -mcmodel=kernel
 CFLAGS_KERNEL += -mno-red-zone -ffreestanding
+CFLAGS_KERNEL += -mno-mmx -mno-sse -mno-sse2 -mno-sse3 -mno-3dnow
 LDFLAGS_KERNEL += -z max-page-size=0x1000
-else
-CROSS_COMPILE := i686-ros-
+# Need to change the format to 32 bit, to trick multiboot/grub1 into loading
+ARCH_POST_LINK_CMD = cp $@ $@-64b; $(OBJCOPY) -I elf64-x86-64 -O elf32-i386 $@
+else ifeq ($(CONFIG_X86_32),y)
+CROSS_COMPILE := i686-ucb-akaros-
 BITS := 32
 KERNEL_LD := kernel32.ld
+# basically a nop.  this runs post-link of the kernel
+       ARCH_POST_LINK_CMD = echo -n
 endif
 
 # BITS is used in Kbuilds, so we can select bit-specific source files.