1 # SPDX-License-Identifier: GPL-2.0 << 2 # 1 # 3 # Makefile for the linux kernel. !! 2 # Makefile for the Linux/MIPS kernel. >> 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). 4 # 7 # 5 8 6 extra-y += vmlinux.lds !! 9 USE_STANDARD_AS_RULE := true 7 10 8 CPPFLAGS_vmlinux.lds += -U$(UTS_MACHINE) !! 11 all: kernel.o head.o init_task.o 9 12 10 ifdef CONFIG_FUNCTION_TRACER !! 13 O_TARGET := kernel.o 11 # Do not profile debug and lowlevel utilities !! 14 12 CFLAGS_REMOVE_tsc.o = -pg !! 15 export-objs = irq.o mips_ksyms.o pci-dma.o setup.o semaphore.o smp.o time.o 13 CFLAGS_REMOVE_paravirt-spinlocks.o = -pg !! 16 14 CFLAGS_REMOVE_pvclock.o = -pg !! 17 obj-y += branch.o cpu-probe.o irq.o process.o signal.o entry.o \ 15 CFLAGS_REMOVE_kvmclock.o = -pg !! 18 traps.o ptrace.o reset.o semaphore.o setup.o syscall.o \ 16 CFLAGS_REMOVE_ftrace.o = -pg !! 19 sysmips.o ipc.o scall_o32.o time.o unaligned.o 17 CFLAGS_REMOVE_early_printk.o = -pg !! 20 18 CFLAGS_REMOVE_head64.o = -pg !! 21 obj-$(CONFIG_MODULES) += mips_ksyms.o 19 CFLAGS_REMOVE_head32.o = -pg !! 22 20 CFLAGS_REMOVE_rethook.o = -pg !! 23 obj-$(CONFIG_CPU_R3000) += r2300_fpu.o r2300_switch.o 21 endif !! 24 obj-$(CONFIG_CPU_TX39XX) += r2300_fpu.o r2300_switch.o >> 25 obj-$(CONFIG_CPU_TX49XX) += r4k_fpu.o r4k_switch.o >> 26 obj-$(CONFIG_CPU_R4000) += r4k_fpu.o r4k_switch.o >> 27 obj-$(CONFIG_CPU_VR41XX) += r4k_fpu.o r4k_switch.o >> 28 obj-$(CONFIG_CPU_R4300) += r4k_fpu.o r4k_switch.o >> 29 obj-$(CONFIG_CPU_R4X00) += r4k_fpu.o r4k_switch.o >> 30 obj-$(CONFIG_CPU_R5000) += r4k_fpu.o r4k_switch.o >> 31 obj-$(CONFIG_CPU_R5432) += r4k_fpu.o r4k_switch.o >> 32 obj-$(CONFIG_CPU_RM7000) += r4k_fpu.o r4k_switch.o >> 33 obj-$(CONFIG_CPU_RM9000) += r4k_fpu.o r4k_switch.o >> 34 obj-$(CONFIG_CPU_NEVADA) += r4k_fpu.o r4k_switch.o >> 35 obj-$(CONFIG_CPU_R10000) += r4k_fpu.o r4k_switch.o >> 36 obj-$(CONFIG_CPU_SB1) += r4k_fpu.o r4k_switch.o >> 37 obj-$(CONFIG_CPU_MIPS32) += r4k_fpu.o r4k_switch.o >> 38 obj-$(CONFIG_CPU_MIPS64) += r4k_fpu.o r4k_switch.o >> 39 obj-$(CONFIG_CPU_R6000) += r6000_fpu.o r4k_switch.o 22 40 23 KASAN_SANITIZE_head$(BITS).o << 24 KASAN_SANITIZE_dumpstack.o << 25 KASAN_SANITIZE_dumpstack_$(BITS).o << 26 KASAN_SANITIZE_stacktrace.o << 27 KASAN_SANITIZE_paravirt.o << 28 << 29 # With some compiler versions the generated co << 30 # by several compilation units. To be safe, di << 31 KCSAN_SANITIZE := n << 32 KMSAN_SANITIZE_head$(BITS).o << 33 KMSAN_SANITIZE_nmi.o << 34 << 35 # If instrumentation of the following files is << 36 # first second. << 37 KCOV_INSTRUMENT_head$(BITS).o << 38 # These are called from save_stack_trace() on << 39 # and produce large amounts of uninteresting c << 40 KCOV_INSTRUMENT_stacktrace.o << 41 KCOV_INSTRUMENT_dumpstack.o << 42 KCOV_INSTRUMENT_dumpstack_$(BITS).o << 43 KCOV_INSTRUMENT_unwind_orc.o << 44 KCOV_INSTRUMENT_unwind_frame.o << 45 KCOV_INSTRUMENT_unwind_guess.o << 46 << 47 CFLAGS_irq.o := -I $(src)/../include/asm/trace << 48 << 49 obj-y += head_$(BITS).o << 50 obj-y += head$(BITS).o << 51 obj-y += ebda.o << 52 obj-y += platform-quirks.o << 53 obj-y += process_$(BITS).o s << 54 obj-y += traps.o idt.o irq.o << 55 obj-y += time.o ioport.o dum << 56 obj-$(CONFIG_X86_FRED) += fred.o << 57 obj-$(CONFIG_MODIFY_LDT_SYSCALL) += ldt << 58 obj-$(CONFIG_X86_KERNEL_IBT) += ibt << 59 obj-y += setup.o x86_init.o << 60 obj-$(CONFIG_JUMP_LABEL) += jump_label. << 61 obj-$(CONFIG_IRQ_WORK) += irq_work.o << 62 obj-y += probe_roms.o << 63 obj-$(CONFIG_X86_32) += sys_ia32.o << 64 obj-$(CONFIG_IA32_EMULATION) += sys_ia32.o << 65 obj-$(CONFIG_X86_64) += sys_x86_64.o << 66 obj-$(CONFIG_X86_ESPFIX64) += espfix_64.o << 67 obj-$(CONFIG_SYSFS) += ksysfs.o << 68 obj-y += bootflag.o e820.o << 69 obj-y += pci-dma.o quirks.o << 70 obj-y += alternative.o i8253 << 71 obj-y += tsc.o tsc_msr.o io_ << 72 obj-y += resource.o << 73 obj-y += irqflags.o << 74 obj-y += static_call.o << 75 << 76 obj-y += process.o << 77 obj-y += fpu/ << 78 obj-y += ptrace.o << 79 obj-$(CONFIG_X86_32) += tls.o << 80 obj-$(CONFIG_IA32_EMULATION) += tls.o << 81 obj-y += step.o << 82 obj-$(CONFIG_INTEL_TXT) += tboot.o << 83 obj-$(CONFIG_ISA_DMA_API) += i8237.o << 84 obj-y += stacktrace. << 85 obj-y += cpu/ << 86 obj-y += acpi/ << 87 obj-y += reboot.o << 88 obj-$(CONFIG_X86_MSR) += msr.o << 89 obj-$(CONFIG_X86_CPUID) += cpuid.o << 90 obj-$(CONFIG_PCI) += early-quirk << 91 apm-y := apm_32.o << 92 obj-$(CONFIG_APM) += apm.o << 93 obj-$(CONFIG_SMP) += smp.o 41 obj-$(CONFIG_SMP) += smp.o 94 obj-$(CONFIG_SMP) += smpboot.o << 95 obj-$(CONFIG_X86_TSC) += tsc_sync.o << 96 obj-$(CONFIG_SMP) += setup_percp << 97 obj-$(CONFIG_X86_MPPARSE) += mpparse.o << 98 obj-y += apic/ << 99 obj-$(CONFIG_X86_REBOOTFIXUPS) += reboot_fixu << 100 obj-$(CONFIG_DYNAMIC_FTRACE) += ftrace.o << 101 obj-$(CONFIG_FUNCTION_TRACER) += ftrace_$(BI << 102 obj-$(CONFIG_FUNCTION_GRAPH_TRACER) += ftrace. << 103 obj-$(CONFIG_FTRACE_SYSCALLS) += ftrace.o << 104 obj-$(CONFIG_X86_TSC) += trace_clock << 105 obj-$(CONFIG_TRACING) += trace.o << 106 obj-$(CONFIG_RETHOOK) += rethook.o << 107 obj-$(CONFIG_VMCORE_INFO) += vmcore_info << 108 obj-$(CONFIG_KEXEC_CORE) += machine_kex << 109 obj-$(CONFIG_KEXEC_CORE) += relocate_ke << 110 obj-$(CONFIG_KEXEC_FILE) += kexec-bzima << 111 obj-$(CONFIG_CRASH_DUMP) += crash_dump_ << 112 obj-y += kprobes/ << 113 obj-$(CONFIG_MODULES) += module.o << 114 obj-$(CONFIG_X86_32) += doublefault << 115 obj-$(CONFIG_KGDB) += kgdb.o << 116 obj-$(CONFIG_VM86) += vm86_32.o << 117 obj-$(CONFIG_EARLY_PRINTK) += early_print << 118 << 119 obj-$(CONFIG_HPET_TIMER) += hpet.o << 120 << 121 obj-$(CONFIG_AMD_NB) += amd_nb.o << 122 obj-$(CONFIG_DEBUG_NMI_SELFTEST) += nmi_selfte << 123 << 124 obj-$(CONFIG_KVM_GUEST) += kvm.o kvmcl << 125 obj-$(CONFIG_PARAVIRT) += paravirt.o << 126 obj-$(CONFIG_PARAVIRT_SPINLOCKS)+= paravirt-sp << 127 obj-$(CONFIG_PARAVIRT_CLOCK) += pvclock.o << 128 obj-$(CONFIG_X86_PMEM_LEGACY_DEVICE) += pmem.o << 129 << 130 obj-$(CONFIG_JAILHOUSE_GUEST) += jailhouse.o << 131 << 132 obj-$(CONFIG_EISA) += eisa.o << 133 obj-$(CONFIG_PCSPKR_PLATFORM) += pcspeaker.o << 134 << 135 obj-$(CONFIG_X86_CHECK_BIOS_CORRUPTION) += che << 136 << 137 obj-$(CONFIG_OF) += dev << 138 obj-$(CONFIG_UPROBES) += upr << 139 << 140 obj-$(CONFIG_PERF_EVENTS) += per << 141 obj-$(CONFIG_TRACING) += tra << 142 obj-$(CONFIG_SCHED_MC_PRIO) += itm << 143 obj-$(CONFIG_X86_UMIP) += umi << 144 << 145 obj-$(CONFIG_UNWINDER_ORC) += unw << 146 obj-$(CONFIG_UNWINDER_FRAME_POINTER) += unw << 147 obj-$(CONFIG_UNWINDER_GUESS) += unw << 148 << 149 obj-$(CONFIG_CFI_CLANG) += cfi << 150 << 151 obj-$(CONFIG_CALL_THUNKS) += cal << 152 << 153 obj-$(CONFIG_X86_CET) += cet << 154 << 155 obj-$(CONFIG_X86_USER_SHADOW_STACK) += shs << 156 << 157 ### << 158 # 64 bit specific files << 159 ifeq ($(CONFIG_X86_64),y) << 160 obj-$(CONFIG_AUDIT) += aud << 161 42 162 obj-$(CONFIG_GART_IOMMU) += amd !! 43 obj-$(CONFIG_I8259) += i8259.o >> 44 obj-$(CONFIG_IRQ_CPU) += irq_cpu.o >> 45 obj-$(CONFIG_IRQ_CPU_RM7K) += irq-rm7000.o >> 46 >> 47 obj-$(CONFIG_BINFMT_IRIX) += irixelf.o irixioctl.o irixsig.o sysirix.o \ >> 48 irixinv.o >> 49 obj-$(CONFIG_KGDB) += gdb-low.o gdb-stub.o >> 50 obj-$(CONFIG_PROC_FS) += proc.o 163 51 164 obj-$(CONFIG_MMCONF_FAM10H) += mmc !! 52 ifndef CONFIG_MAPPED_PCI_IO 165 obj-y += vsm !! 53 obj-y += pci-dma.o 166 endif 54 endif >> 55 >> 56 entry.o: entry.S >> 57 head.o: head.S >> 58 >> 59 include $(TOPDIR)/Rules.make
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.