Commit 043b0b8a authored by Ian Molton's avatar Ian Molton Committed by Linus Torvalds

[PATCH] arm26 build system updates

- Updates to makefiles required by the other changes in this patchset.

- Also add some entries to the linker scripts.  The linker scripts really
  ought to be merged into one script but that will have to wait.

- Add a comment for building xipImages Update the compiler flags used to
  build arm26 so gcc 3.4 doesnt barf.
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 5b808df6
......@@ -6,6 +6,7 @@
# for more details.
#
# Copyright (C) 1995-2001 by Russell King
# Copyright (c) 2004 Ian Molton
LDFLAGS_vmlinux :=-p -X
CPPFLAGS_vmlinux.lds = -DTEXTADDR=$(TEXTADDR) -DDATAADDR=$(DATAADDR)
......@@ -20,13 +21,9 @@ ifeq ($(CONFIG_DEBUG_INFO),y)
CFLAGS +=-g
endif
# Force -mno-fpu to be passed to the assembler. Some versions of gcc don't
# do this with -msoft-float
CFLAGS_BOOT :=-mapcs-26 -mcpu=arm3 -mshort-load-bytes -msoft-float -Wa,-mno-fpu -Uarm
CFLAGS +=-mapcs-26 -mcpu=arm3 -mshort-load-bytes -msoft-float -Wa,-mno-fpu -Uarm
AFLAGS +=-mapcs-26 -mcpu=arm3 -mno-fpu -msoft-float -Wa,-mno-fpu
head-y := arch/arm26/machine/head.o arch/arm26/kernel/init_task.o
CFLAGS_BOOT :=-mapcs-26 -mcpu=arm3 -msoft-float -Uarm
CFLAGS +=-mapcs-26 -mcpu=arm3 -msoft-float -Uarm
AFLAGS +=-mapcs-26 -mcpu=arm3 -msoft-float
ifeq ($(CONFIG_XIP_KERNEL),y)
TEXTADDR := 0x03880000
......@@ -36,6 +33,8 @@ else
DATAADDR := .
endif
head-y := arch/arm26/kernel/head.o arch/arm26/kernel/init_task.o
ifeq ($(incdir-y),)
incdir-y :=
endif
......@@ -109,6 +108,7 @@ define archhelp
echo '* zImage - Compressed kernel image (arch/$(ARCH)/boot/zImage)'
echo ' Image - Uncompressed kernel image (arch/$(ARCH)/boot/Image)'
echo ' bootpImage - Combined zImage and initial RAM disk'
echo ' xipImage - eXecute In Place capable image for ROM use (arch/$(ARCH)/boot/xipImage)'
echo ' initrd - Create an initial image'
echo ' install - Install uncompressed kernel'
echo ' zinstall - Install compressed kernel'
......
#
# arch/arm/boot/Makefile
# arch/arm26/boot/Makefile
#
# This file is subject to the terms and conditions of the GNU General Public
# License. See the file "COPYING" in the main directory of this archive
......@@ -51,8 +51,10 @@ $(obj)/compressed/vmlinux: vmlinux FORCE
ifeq ($(CONFIG_XIP_KERNEL),y)
$(obj)/xipImage: vmlinux FORCE
$(OBJCOPY) -S -O binary -R .data -R .comment vmlinux vmlinux-text.bin
$(OBJCOPY) -S -O binary -R .init -R .text -R .comment -R __ex_table -R __ksymtab vmlinux vmlinux-data.bin
# $(OBJCOPY) -S -O binary -R .data -R .comment vmlinux vmlinux-text.bin
# FIXME - where has .pci_fixup crept in from?
$(OBJCOPY) -S -O binary -R .data -R .pci_fixup -R .comment vmlinux vmlinux-text.bin
$(OBJCOPY) -S -O binary -R .init -R .text -R __ex_table -R .pci_fixup -R __ksymtab -R __ksymtab_gpl -R __kcrctab -R __kcrctab_gpl -R __param -R .comment vmlinux vmlinux-data.bin
cat vmlinux-text.bin vmlinux-data.bin > $@
$(RM) -f vmlinux-text.bin vmlinux-data.bin
@echo ' Kernel: $@ is ready'
......
......@@ -2,17 +2,16 @@
# Makefile for the linux kernel.
#
ENTRY_OBJ = entry.o
# Object file lists.
obj-y := compat.o dma.o entry.o irq.o \
process.o ptrace.o semaphore.o setup.o signal.o sys_arm.o \
time.o traps.o ecard.o time-acorn.o dma.o \
ecard.o fiq.o time.o
AFLAGS_head.o := -DTEXTADDR=$(TEXTADDR)
obj-y := compat.o dma.o entry.o irq.o process.o ptrace.o \
semaphore.o setup.o signal.o sys_arm.o time.o traps.o \
ecard.o dma.o ecard.o fiq.o time.o
extra-y := head.o init_task.o vmlinux.lds
obj-$(CONFIG_FIQ) += fiq.o
obj-$(CONFIG_MODULES) += armksyms.o
extra-y := init_task.o vmlinux.lds
......@@ -64,6 +64,7 @@ SECTIONS
_text = .; /* Text and read-only data */
*(.text)
SCHED_TEXT
LOCK_TEXT /* FIXME - borrowed from arm32 - check*/
*(.fixup)
*(.gnu.warning)
*(.rodata)
......@@ -91,9 +92,11 @@ SECTIONS
_sdata = .;
.data : {
. = ALIGN(8192);
/*
* first, the init thread union, aligned
* to an 8192 byte boundary.
* to an 8192 byte boundary. (see arm26/kernel/init_task.c)
* FIXME - sould this be 32K aligned on arm26?
*/
*(.init.task)
......
......@@ -65,6 +65,7 @@ SECTIONS
_text = .; /* Text and read-only data */
*(.text)
SCHED_TEXT
LOCK_TEXT
*(.fixup)
*(.gnu.warning)
*(.rodata)
......@@ -90,7 +91,7 @@ SECTIONS
.data : {
/*
* first, the init task union, aligned
* to an 8192 byte boundary.
* to an 8192 byte boundary. (see arm26/kernel/init_task.c)
*/
*(.init.task)
......
#
# linux/arch/arm/lib/Makefile
# linux/arch/arm26/lib/Makefile
#
# Copyright (C) 1995-2000 Russell King
#
......@@ -13,9 +13,9 @@ lib-y := backtrace.o changebit.o csumipv6.o csumpartial.o \
putuser.o ashldi3.o ashrdi3.o lshrdi3.o muldi3.o \
ucmpdi2.o udivdi3.o lib1funcs.o ecard.o io-acorn.o \
floppydma.o io-readsb.o io-writesb.o io-writesl.o \
uaccess-kernel.o uaccess-user.o io-readsw-armv3.o \
io-writesw-armv3.o io-readsl-armv3.o ecard.o \
io-acorn.o floppydma.o
uaccess-kernel.o uaccess-user.o io-readsw.o \
io-writesw.o io-readsl.o ecard.o io-acorn.o \
floppydma.o
lib-n :=
......
......@@ -4,9 +4,5 @@
# Object file lists.
obj-y := dma.o irq.o oldlatches.o \
small_page.o
obj-y := dma.o irq.o latches.o
extra-y := head.o
AFLAGS_head.o := -DTEXTADDR=$(TEXTADDR)
......@@ -2,4 +2,5 @@
# Makefile for the linux arm26-specific parts of the memory manager.
#
obj-y := init.o extable.o proc-funcs.o mm-memc.o fault.o
obj-y := init.o extable.o proc-funcs.o memc.o fault.o \
small_page.o
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment