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 @@ ...@@ -6,6 +6,7 @@
# for more details. # for more details.
# #
# Copyright (C) 1995-2001 by Russell King # Copyright (C) 1995-2001 by Russell King
# Copyright (c) 2004 Ian Molton
LDFLAGS_vmlinux :=-p -X LDFLAGS_vmlinux :=-p -X
CPPFLAGS_vmlinux.lds = -DTEXTADDR=$(TEXTADDR) -DDATAADDR=$(DATAADDR) CPPFLAGS_vmlinux.lds = -DTEXTADDR=$(TEXTADDR) -DDATAADDR=$(DATAADDR)
...@@ -20,13 +21,9 @@ ifeq ($(CONFIG_DEBUG_INFO),y) ...@@ -20,13 +21,9 @@ ifeq ($(CONFIG_DEBUG_INFO),y)
CFLAGS +=-g CFLAGS +=-g
endif endif
# Force -mno-fpu to be passed to the assembler. Some versions of gcc don't CFLAGS_BOOT :=-mapcs-26 -mcpu=arm3 -msoft-float -Uarm
# do this with -msoft-float CFLAGS +=-mapcs-26 -mcpu=arm3 -msoft-float -Uarm
CFLAGS_BOOT :=-mapcs-26 -mcpu=arm3 -mshort-load-bytes -msoft-float -Wa,-mno-fpu -Uarm AFLAGS +=-mapcs-26 -mcpu=arm3 -msoft-float
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
ifeq ($(CONFIG_XIP_KERNEL),y) ifeq ($(CONFIG_XIP_KERNEL),y)
TEXTADDR := 0x03880000 TEXTADDR := 0x03880000
...@@ -36,6 +33,8 @@ else ...@@ -36,6 +33,8 @@ else
DATAADDR := . DATAADDR := .
endif endif
head-y := arch/arm26/kernel/head.o arch/arm26/kernel/init_task.o
ifeq ($(incdir-y),) ifeq ($(incdir-y),)
incdir-y := incdir-y :=
endif endif
...@@ -109,6 +108,7 @@ define archhelp ...@@ -109,6 +108,7 @@ define archhelp
echo '* zImage - Compressed kernel image (arch/$(ARCH)/boot/zImage)' echo '* zImage - Compressed kernel image (arch/$(ARCH)/boot/zImage)'
echo ' Image - Uncompressed kernel image (arch/$(ARCH)/boot/Image)' echo ' Image - Uncompressed kernel image (arch/$(ARCH)/boot/Image)'
echo ' bootpImage - Combined zImage and initial RAM disk' 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 ' initrd - Create an initial image'
echo ' install - Install uncompressed kernel' echo ' install - Install uncompressed kernel'
echo ' zinstall - Install compressed 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 # 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 # License. See the file "COPYING" in the main directory of this archive
...@@ -51,8 +51,10 @@ $(obj)/compressed/vmlinux: vmlinux FORCE ...@@ -51,8 +51,10 @@ $(obj)/compressed/vmlinux: vmlinux FORCE
ifeq ($(CONFIG_XIP_KERNEL),y) ifeq ($(CONFIG_XIP_KERNEL),y)
$(obj)/xipImage: vmlinux FORCE $(obj)/xipImage: vmlinux FORCE
$(OBJCOPY) -S -O binary -R .data -R .comment vmlinux vmlinux-text.bin # $(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 # 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 > $@ cat vmlinux-text.bin vmlinux-data.bin > $@
$(RM) -f vmlinux-text.bin vmlinux-data.bin $(RM) -f vmlinux-text.bin vmlinux-data.bin
@echo ' Kernel: $@ is ready' @echo ' Kernel: $@ is ready'
......
...@@ -2,17 +2,16 @@ ...@@ -2,17 +2,16 @@
# Makefile for the linux kernel. # Makefile for the linux kernel.
# #
ENTRY_OBJ = entry.o
# Object file lists. # Object file lists.
obj-y := compat.o dma.o entry.o irq.o \ AFLAGS_head.o := -DTEXTADDR=$(TEXTADDR)
process.o ptrace.o semaphore.o setup.o signal.o sys_arm.o \
time.o traps.o ecard.o time-acorn.o dma.o \ obj-y := compat.o dma.o entry.o irq.o process.o ptrace.o \
ecard.o fiq.o time.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_FIQ) += fiq.o
obj-$(CONFIG_MODULES) += armksyms.o obj-$(CONFIG_MODULES) += armksyms.o
extra-y := init_task.o vmlinux.lds
...@@ -64,6 +64,7 @@ SECTIONS ...@@ -64,6 +64,7 @@ SECTIONS
_text = .; /* Text and read-only data */ _text = .; /* Text and read-only data */
*(.text) *(.text)
SCHED_TEXT SCHED_TEXT
LOCK_TEXT /* FIXME - borrowed from arm32 - check*/
*(.fixup) *(.fixup)
*(.gnu.warning) *(.gnu.warning)
*(.rodata) *(.rodata)
...@@ -91,9 +92,11 @@ SECTIONS ...@@ -91,9 +92,11 @@ SECTIONS
_sdata = .; _sdata = .;
.data : { .data : {
. = ALIGN(8192);
/* /*
* first, the init thread union, aligned * 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) *(.init.task)
......
...@@ -65,6 +65,7 @@ SECTIONS ...@@ -65,6 +65,7 @@ SECTIONS
_text = .; /* Text and read-only data */ _text = .; /* Text and read-only data */
*(.text) *(.text)
SCHED_TEXT SCHED_TEXT
LOCK_TEXT
*(.fixup) *(.fixup)
*(.gnu.warning) *(.gnu.warning)
*(.rodata) *(.rodata)
...@@ -90,7 +91,7 @@ SECTIONS ...@@ -90,7 +91,7 @@ SECTIONS
.data : { .data : {
/* /*
* first, the init task union, aligned * first, the init task union, aligned
* to an 8192 byte boundary. * to an 8192 byte boundary. (see arm26/kernel/init_task.c)
*/ */
*(.init.task) *(.init.task)
......
# #
# linux/arch/arm/lib/Makefile # linux/arch/arm26/lib/Makefile
# #
# Copyright (C) 1995-2000 Russell King # Copyright (C) 1995-2000 Russell King
# #
...@@ -13,9 +13,9 @@ lib-y := backtrace.o changebit.o csumipv6.o csumpartial.o \ ...@@ -13,9 +13,9 @@ lib-y := backtrace.o changebit.o csumipv6.o csumpartial.o \
putuser.o ashldi3.o ashrdi3.o lshrdi3.o muldi3.o \ putuser.o ashldi3.o ashrdi3.o lshrdi3.o muldi3.o \
ucmpdi2.o udivdi3.o lib1funcs.o ecard.o io-acorn.o \ ucmpdi2.o udivdi3.o lib1funcs.o ecard.o io-acorn.o \
floppydma.o io-readsb.o io-writesb.o io-writesl.o \ floppydma.o io-readsb.o io-writesb.o io-writesl.o \
uaccess-kernel.o uaccess-user.o io-readsw-armv3.o \ uaccess-kernel.o uaccess-user.o io-readsw.o \
io-writesw-armv3.o io-readsl-armv3.o ecard.o \ io-writesw.o io-readsl.o ecard.o io-acorn.o \
io-acorn.o floppydma.o floppydma.o
lib-n := lib-n :=
......
...@@ -4,9 +4,5 @@ ...@@ -4,9 +4,5 @@
# Object file lists. # Object file lists.
obj-y := dma.o irq.o oldlatches.o \ obj-y := dma.o irq.o latches.o
small_page.o
extra-y := head.o
AFLAGS_head.o := -DTEXTADDR=$(TEXTADDR)
...@@ -2,4 +2,5 @@ ...@@ -2,4 +2,5 @@
# Makefile for the linux arm26-specific parts of the memory manager. # 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