blob: 30101762f7c0258d6b715c22e0afcecdc6d4aefc [file] [log] [blame]
Paul Mackerras14cf11a2005-09-26 16:04:21 +10001#
2# Makefile for the linux kernel.
3#
4
Stephen Rothwellbd142b72005-09-30 13:51:25 +10005ifeq ($(CONFIG_PPC64),y)
6EXTRA_CFLAGS += -mno-minimal-toc
7endif
Stephen Rothwellcabb5582005-09-30 16:16:52 +10008ifeq ($(CONFIG_PPC32),y)
Paul Mackerras9b6b5632005-10-06 12:06:20 +10009CFLAGS_prom_init.o += -fPIC
Paul Mackerrasb3491262005-10-06 13:24:50 +100010CFLAGS_btext.o += -fPIC
Stephen Rothwellcabb5582005-09-30 16:16:52 +100011endif
Paul Mackerras9b6b5632005-10-06 12:06:20 +100012
Paul Mackerras77f543c2005-10-18 14:19:41 +100013obj-y := semaphore.o cputable.o ptrace.o syscalls.o \
David Gibsonf7f6f4f2005-10-19 14:53:32 +100014 signal_32.o pmc.o
Paul Mackerrasb1239232005-10-20 09:11:29 +100015obj-$(CONFIG_PPC64) += binfmt_elf32.o sys_ppc32.o ptrace32.o
Paul Mackerras40ef8cb2005-10-10 22:50:37 +100016obj-$(CONFIG_ALTIVEC) += vecemu.o vector.o
17obj-$(CONFIG_POWER4) += idle_power4.o
Stephen Rothwelleec5ef92005-10-13 15:16:25 +100018obj-$(CONFIG_PPC_OF) += of_device.o
Paul Mackerras033ef332005-10-26 17:05:24 +100019obj-$(CONFIG_PPC_RTAS) += rtas.o
Stephen Rothwell58046012005-10-24 14:22:37 +100020obj-$(CONFIG_IBMVIO) += vio.o
Paul Mackerras40ef8cb2005-10-10 22:50:37 +100021
22ifeq ($(CONFIG_PPC_MERGE),y)
23
Paul Mackerras70d64ce2005-10-10 21:52:43 +100024extra-$(CONFIG_PPC_STD_MMU) := head_32.o
Stephen Rothwellcabb5582005-09-30 16:16:52 +100025extra-$(CONFIG_PPC64) := head_64.o
Paul Mackerras14cf11a2005-09-26 16:04:21 +100026extra-$(CONFIG_40x) := head_4xx.o
27extra-$(CONFIG_44x) := head_44x.o
28extra-$(CONFIG_FSL_BOOKE) := head_fsl_booke.o
29extra-$(CONFIG_8xx) := head_8xx.o
Paul Mackerras9994a332005-10-10 22:36:14 +100030extra-$(CONFIG_PPC64) += entry_64.o
Paul Mackerras14cf11a2005-09-26 16:04:21 +100031extra-$(CONFIG_PPC_FPU) += fpu.o
32extra-y += vmlinux.lds
33
Paul Mackerrasf2783c12005-10-20 09:23:26 +100034obj-y += process.o init_task.o time.o \
Paul Mackerras03501da2005-10-26 17:11:18 +100035 prom.o systbl.o traps.o setup-common.o
Paul Mackerras77f543c2005-10-18 14:19:41 +100036obj-$(CONFIG_PPC32) += entry_32.o idle_6xx.o setup_32.o misc_32.o
Paul Mackerras40ef8cb2005-10-10 22:50:37 +100037obj-$(CONFIG_PPC64) += setup_64.o misc_64.o
Stephen Rothwelleec5ef92005-10-13 15:16:25 +100038obj-$(CONFIG_PPC_OF) += prom_init.o
Paul Mackerras20c8c212005-09-28 20:28:14 +100039obj-$(CONFIG_MODULES) += ppc_ksyms.o
Paul Mackerras9b6b5632005-10-06 12:06:20 +100040obj-$(CONFIG_BOOTX_TEXT) += btext.o
Stephen Rothwellcabb5582005-09-30 16:16:52 +100041
42ifeq ($(CONFIG_PPC_ISERIES),y)
Paul Mackerrasbc6f8a42005-10-10 22:45:07 +100043$(obj)/head_64.o: $(obj)/lparmap.s
44AFLAGS_head_64.o += -I$(obj)
45endif
Paul Mackerrasfd582ec2005-10-11 22:08:12 +100046
47else
48# stuff used from here for ARCH=ppc or ARCH=ppc64
Paul Mackerrasf2783c12005-10-20 09:23:26 +100049obj-$(CONFIG_PPC64) += traps.o process.o init_task.o time.o
Paul Mackerrasfd582ec2005-10-11 22:08:12 +100050
51fpux-$(CONFIG_PPC32) += fpu.o
52extra-$(CONFIG_PPC_FPU) += $(fpux-y)
53
Stephen Rothwellcabb5582005-09-30 16:16:52 +100054endif