1 # SPDX-License-Identifier: GPL-2.0 << 2 # 1 # 3 # Copyright (C) 2002 - 2007 Jeff Dike (jdike@{ !! 2 # Makefile for the linux kernel. 4 # 3 # 5 4 6 # Don't instrument UML-specific code; without !! 5 asflags-y := -ansi 7 # accessing the instrumentation buffer for the !! 6 ccflags-y := -Werror 8 # kernel. !! 7 9 KCOV_INSTRUMENT := n !! 8 extra-y := head_$(BITS).o 10 !! 9 extra-y += init_task.o 11 CPPFLAGS_vmlinux.lds := -DSTART=$(LDS_START) !! 10 12 -DELF_ARCH=$(LDS_ELF_A !! 11 # Undefine sparc when processing vmlinux.lds - it is used 13 -DELF_FORMAT=$(LDS_ELF !! 12 # And teach CPP we are doing $(BITS) builds (for this case) 14 $(LDS_EXTRA) !! 13 CPPFLAGS_vmlinux.lds := -Usparc -m$(BITS) 15 extra-y := vmlinux.lds !! 14 extra-y += vmlinux.lds 16 !! 15 17 obj-y = config.o exec.o exitcode.o irq.o ksyms !! 16 obj-$(CONFIG_SPARC32) += entry.o wof.o wuf.o 18 physmem.o process.o ptrace.o reboot.o !! 17 obj-$(CONFIG_SPARC32) += etrap_32.o 19 signal.o sysrq.o time.o tlb.o trap.o \ !! 18 obj-$(CONFIG_SPARC32) += rtrap_32.o 20 um_arch.o umid.o maccess.o kmsg_dump.o !! 19 obj-y += traps_$(BITS).o 21 obj-y += load_file.o !! 20 22 !! 21 # IRQ 23 obj-$(CONFIG_BLK_DEV_INITRD) += initrd.o !! 22 obj-y += irq_$(BITS).o 24 obj-$(CONFIG_GPROF) += gprof_syms.o !! 23 obj-$(CONFIG_SPARC32) += sun4m_irq.o sun4c_irq.o sun4d_irq.o 25 obj-$(CONFIG_OF) += dtb.o !! 24 26 obj-$(CONFIG_EARLY_PRINTK) += early_printk.o !! 25 obj-y += process_$(BITS).o 27 obj-$(CONFIG_STACKTRACE) += stacktrace.o !! 26 obj-y += signal_$(BITS).o 28 obj-$(CONFIG_GENERIC_PCI_IOMAP) += ioport.o !! 27 obj-y += sigutil_$(BITS).o 29 !! 28 obj-$(CONFIG_SPARC32) += ioport.o 30 USER_OBJS := config.o !! 29 obj-y += setup_$(BITS).o 31 !! 30 obj-y += idprom.o 32 include $(srctree)/arch/um/scripts/Makefile.ru !! 31 obj-y += sys_sparc_$(BITS).o 33 !! 32 obj-$(CONFIG_SPARC32) += systbls_32.o 34 targets := config.c config.tmp capflags.c !! 33 obj-y += time_$(BITS).o 35 !! 34 obj-$(CONFIG_SPARC32) += windows.o 36 # Be careful with the below Sed code - sed is !! 35 obj-y += cpu.o 37 # We use sed to lower build requirements, for !! 36 obj-$(CONFIG_SPARC32) += devices.o 38 !! 37 obj-$(CONFIG_SPARC32) += tadpole.o 39 $(obj)/config.tmp: $(objtree)/.config FORCE !! 38 obj-$(CONFIG_SPARC32) += tick14.o 40 $(call if_changed,quote1) !! 39 obj-y += ptrace_$(BITS).o 41 !! 40 obj-y += unaligned_$(BITS).o 42 quiet_cmd_quote1 = QUOTE $@ !! 41 obj-y += una_asm_$(BITS).o 43 cmd_quote1 = sed -e 's/"/\\"/g' -e 's/^/ !! 42 obj-$(CONFIG_SPARC32) += muldiv.o 44 $< > $@ !! 43 obj-y += prom_common.o 45 !! 44 obj-y += prom_$(BITS).o 46 $(obj)/config.c: $(src)/config.c.in $(obj)/con !! 45 obj-y += of_device_common.o 47 $(call if_changed,quote2) !! 46 obj-y += of_device_$(BITS).o 48 !! 47 obj-$(CONFIG_SPARC64) += prom_irqtrans.o 49 quiet_cmd_mkcapflags = MKCAP $@ !! 48 50 cmd_mkcapflags = $(CONFIG_SHELL) $(src)/ !! 49 obj-$(CONFIG_SPARC_LEON)+= leon_kernel.o 51 !! 50 52 cpufeature = $(src)/../../x86/include/asm/cpuf !! 51 obj-$(CONFIG_SPARC64) += reboot.o 53 vmxfeature = $(src)/../../x86/include/asm/vmxf !! 52 obj-$(CONFIG_SPARC64) += sysfs.o 54 !! 53 obj-$(CONFIG_SPARC64) += iommu.o 55 $(obj)/capflags.c: $(cpufeature) $(vmxfeature) !! 54 obj-$(CONFIG_SPARC64) += central.o 56 $(call if_changed,mkcapflags) !! 55 obj-$(CONFIG_SPARC64) += starfire.o 57 !! 56 obj-$(CONFIG_SPARC64) += power.o 58 quiet_cmd_quote2 = QUOTE $@ !! 57 obj-$(CONFIG_SPARC64) += sbus.o 59 cmd_quote2 = sed -e '/CONFIG/{' !! 58 obj-$(CONFIG_SPARC64) += ebus.o 60 -e 's/"CONFIG"//' !! 59 obj-$(CONFIG_SPARC64) += visemul.o 61 -e 'r $(obj)/config.tmp' !! 60 obj-$(CONFIG_SPARC64) += hvapi.o 62 -e 'a \' !! 61 obj-$(CONFIG_SPARC64) += sstate.o 63 -e '""' !! 62 obj-$(CONFIG_SPARC64) += mdesc.o 64 -e '}' !! 63 obj-$(CONFIG_SPARC64) += pcr.o 65 $< > $@ !! 64 obj-$(CONFIG_SPARC64) += nmi.o >> 65 obj-$(CONFIG_SPARC64_SMP) += cpumap.o >> 66 >> 67 # sparc32 do not use GENERIC_HARDIRQS but uses the generic devres implementation >> 68 obj-$(CONFIG_SPARC32) += devres.o >> 69 devres-y := ../../../kernel/irq/devres.o >> 70 >> 71 obj-y += dma.o >> 72 >> 73 obj-$(CONFIG_SPARC32_PCI) += pcic.o >> 74 >> 75 obj-$(CONFIG_SMP) += trampoline_$(BITS).o smp_$(BITS).o >> 76 obj-$(CONFIG_SPARC32_SMP) += sun4m_smp.o sun4d_smp.o >> 77 obj-$(CONFIG_SPARC64_SMP) += hvtramp.o >> 78 >> 79 obj-y += auxio_$(BITS).o >> 80 obj-$(CONFIG_SUN_PM) += apc.o pmc.o >> 81 >> 82 obj-$(CONFIG_MODULES) += module.o >> 83 obj-$(CONFIG_MODULES) += sparc_ksyms_$(BITS).o >> 84 obj-$(CONFIG_SPARC_LED) += led.o >> 85 obj-$(CONFIG_KGDB) += kgdb_$(BITS).o >> 86 >> 87 >> 88 obj-$(CONFIG_DYNAMIC_FTRACE) += ftrace.o >> 89 CFLAGS_REMOVE_ftrace.o := -pg >> 90 >> 91 obj-$(CONFIG_STACKTRACE) += stacktrace.o >> 92 # sparc64 PCI >> 93 obj-$(CONFIG_SPARC64_PCI) += pci.o pci_common.o psycho_common.o >> 94 obj-$(CONFIG_SPARC64_PCI) += pci_psycho.o pci_sabre.o pci_schizo.o >> 95 obj-$(CONFIG_SPARC64_PCI) += pci_sun4v.o pci_sun4v_asm.o pci_fire.o >> 96 obj-$(CONFIG_PCI_MSI) += pci_msi.o >> 97 >> 98 obj-$(CONFIG_COMPAT) += sys32.o sys_sparc32.o signal32.o >> 99 >> 100 # sparc64 cpufreq >> 101 obj-$(CONFIG_US3_FREQ) += us3_cpufreq.o >> 102 obj-$(CONFIG_US2E_FREQ) += us2e_cpufreq.o >> 103 obj-$(CONFIG_US3_MC) += chmc.o >> 104 >> 105 obj-$(CONFIG_KPROBES) += kprobes.o >> 106 obj-$(CONFIG_SUN_LDOMS) += ldc.o vio.o viohs.o ds.o >> 107 >> 108 obj-$(CONFIG_AUDIT) += audit.o >> 109 audit--$(CONFIG_AUDIT) := compat_audit.o >> 110 obj-$(CONFIG_COMPAT) += $(audit--y) >> 111 >> 112 pc--$(CONFIG_PERF_EVENTS) := perf_event.o >> 113 obj-$(CONFIG_SPARC64) += $(pc--y)
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.