1 # SPDX-License-Identifier: GPL-2.0 << 2 # 1 # 3 # Makefile for the nios2 linux kernel. !! 2 # Makefile for the linux kernel. 4 # 3 # >> 4 # Note! Dependencies are done automagically by 'make dep', which also >> 5 # removes any old dependencies. DON'T put your own dependencies here >> 6 # unless it's something special (ie not a .c file). >> 7 # >> 8 # Note 2! The CFLAGS definitions are now in the main makefile... >> 9 >> 10 USE_STANDARD_AS_RULE := true >> 11 >> 12 ifdef CONFIG_PPC64BRIDGE >> 13 EXTRA_AFLAGS := -Wa,-mppc64bridge >> 14 endif >> 15 ifdef CONFIG_4xx >> 16 EXTRA_AFLAGS := -Wa,-m405 >> 17 endif >> 18 >> 19 # Code in these files is used before the kernel is moved to its final position >> 20 CFLAGS_prom_init.o += -mrelocatable-lib >> 21 CFLAGS_btext.o += -mrelocatable-lib >> 22 >> 23 # Start off with 'head.o', change as needed. >> 24 HEAD-y := head.o >> 25 HEAD-$(CONFIG_6xx) += idle_6xx.o >> 26 HEAD-$(CONFIG_40x) := head_4xx.o >> 27 HEAD-$(CONFIG_44x) := head_44x.o >> 28 HEAD-$(CONFIG_8xx) := head_8xx.o >> 29 >> 30 all: $(HEAD-y) kernel.o >> 31 >> 32 O_TARGET := kernel.o >> 33 >> 34 export-objs := ppc_ksyms.o time.o ocp.o ppc4xx_setup.o \ >> 35 ppc4xx_dma.o ppc4xx_sgdma.o \ >> 36 ppc4xx_stbdma.o >> 37 >> 38 obj-y := entry.o traps.o irq.o idle.o time.o misc.o \ >> 39 process.o signal.o ptrace.o align.o \ >> 40 semaphore.o syscalls.o setup.o \ >> 41 cputable.o ppc_htab.o >> 42 ifneq ($(CONFIG_6xx),y) >> 43 obj-y += idle_gen.o >> 44 endif >> 45 obj-$(CONFIG_6xx) += l2cr.o cpu_setup_6xx.o >> 46 obj-$(CONFIG_MODULES) += ppc_ksyms.o >> 47 obj-$(CONFIG_PCI) += pci.o >> 48 obj-$(CONFIG_PCI) += pci-dma.o >> 49 obj-$(CONFIG_KGDB) += ppc-stub.o >> 50 obj-$(CONFIG_PPCBUG_NVRAM) += prep_nvram.o >> 51 obj-$(CONFIG_SMP) += smp.o >> 52 obj-$(CONFIG_TAU) += temp.o >> 53 ifeq ($(CONFIG_SERIAL)$(CONFIG_GEN550),yy) >> 54 obj-$(CONFIG_KGDB) += gen550_kgdb.o gen550_dbg.o >> 55 obj-$(CONFIG_SERIAL_TEXT_DEBUG) += gen550_dbg.o >> 56 endif >> 57 obj-$(CONFIG_PPC_OCP) += ocp.o >> 58 obj-$(CONFIG_40x) += ppc4xx_setup.o ppc4xx_pic.o >> 59 obj-$(CONFIG_4xx) += todc_time.o >> 60 obj-$(CONFIG_STBXXX_DMA) += ppc4xx_stbdma.o >> 61 ifeq ($(CONFIG_PCI),y) >> 62 obj-$(CONFIG_40x) += ppc405_pci.o >> 63 obj-$(CONFIG_4xx) += indirect_pci.o pci_auto.o >> 64 endif >> 65 obj-$(CONFIG_44x) += ppc4xx_pic.o ibm44x_common.o >> 66 obj-$(CONFIG_440GP) += ibm440gp_common.o >> 67 obj-$(CONFIG_440GX) += ibm440gx_common.o >> 68 obj-$(CONFIG_PPC4xx_DMA) += ppc4xx_dma.o >> 69 obj-$(CONFIG_PPC4xx_EDMA) += ppc4xx_sgdma.o >> 70 obj-$(CONFIG_8xx) += m8xx_setup.o ppc8xx_pic.o >> 71 obj-$(CONFIG_8xx_WDT) += m8xx_wdt.o >> 72 ifeq ($(CONFIG_8xx),y) >> 73 obj-$(CONFIG_PCI) += qspan_pci.o >> 74 ifndef CONFIG_MATH_EMULATION >> 75 obj-y += softemu8xx.o >> 76 endif >> 77 endif >> 78 obj-$(CONFIG_MBX) += i8259.o >> 79 obj-$(CONFIG_ALL_PPC) += prom_init.o prom.o open_pic.o \ >> 80 indirect_pci.o i8259.o >> 81 obj-$(CONFIG_GEMINI) += open_pic.o >> 82 obj-$(CONFIG_LOPEC) += mpc10x_common.o indirect_pci.o pci_auto.o \ >> 83 open_pic.o i8259.o todc_time.o >> 84 obj-$(CONFIG_PAL4) += indirect_pci.o pci_auto.o todc_time.o >> 85 obj-$(CONFIG_PPLUS) += pplus_common.o open_pic.o i8259.o \ >> 86 indirect_pci.o todc_time.o pci_auto.o >> 87 obj-$(CONFIG_PRPMC750) += open_pic.o indirect_pci.o pci_auto.o \ >> 88 pplus_common.o >> 89 obj-$(CONFIG_SANDPOINT) += i8259.o open_pic.o mpc10x_common.o \ >> 90 pci_auto.o indirect_pci.o todc_time.o >> 91 obj-$(CONFIG_SPRUCE) += indirect_pci.o pci_auto.o todc_time.o >> 92 obj-$(CONFIG_8260) += m8260_setup.o cpm2_pic.o >> 93 obj-$(CONFIG_BOOTX_TEXT) += btext.o >> 94 >> 95 include $(TOPDIR)/Rules.make >> 96 >> 97 entry.o: entry.S ppc_defs.h >> 98 misc.o: misc.S ppc_defs.h >> 99 l2cr.o: l2cr.S ppc_defs.h >> 100 head.o: head.S ppc_defs.h >> 101 head_4xx.o: head_4xx.S ppc_defs.h >> 102 head_44x.o: head_44x.S ppc_defs.h >> 103 head_8xx.o: head_8xx.S ppc_defs.h >> 104 idle_6xx.o: idle_6xx.S ppc_defs.h >> 105 >> 106 ppc_defs.h: mk_defs.c ppc_defs.head \ >> 107 $(TOPDIR)/include/asm/mmu.h \ >> 108 $(TOPDIR)/include/asm/processor.h \ >> 109 $(TOPDIR)/include/asm/pgtable.h \ >> 110 $(TOPDIR)/include/asm/ptrace.h >> 111 $(CC) $(CFLAGS) -S mk_defs.c >> 112 cp ppc_defs.head ppc_defs.h >> 113 # for bk, this way we can write to the file even if it's not checked out >> 114 chmod u+w ppc_defs.h >> 115 grep '^#define' mk_defs.s >> ppc_defs.h >> 116 rm mk_defs.s 5 117 6 extra-y += vmlinux.lds !! 118 find_name : find_name.c >> 119 $(HOSTCC) $(HOSTCFLAGS) -o find_name find_name.c 7 120 8 obj-y += head.o !! 121 checks: checks.c 9 obj-y += cpuinfo.o !! 122 $(HOSTCC) -I$(HPATH) $(HOSTCFLAGS) -D__KERNEL__ -fno-builtin -o checks checks.c 10 obj-y += entry.o !! 123 ./checks 11 obj-y += insnemu.o << 12 obj-y += irq.o << 13 obj-y += nios2_ksyms.o << 14 obj-y += process.o << 15 obj-y += prom.o << 16 obj-y += ptrace.o << 17 obj-y += setup.o << 18 obj-y += signal.o << 19 obj-y += sys_nios2.o << 20 obj-y += syscall_table.o << 21 obj-y += time.o << 22 obj-y += traps.o << 23 << 24 obj-$(CONFIG_KGDB) += kgd << 25 obj-$(CONFIG_MODULES) += mod << 26 obj-$(CONFIG_NIOS2_ALIGNMENT_TRAP) += mis <<
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.