132 lines · 3.8 KB · Makefile
RawDownload
# SPDX-License-Identifier: GPL-2.0-only## Makefile for the RISC-V Linux kernel# CFLAGS_syscall_table.o	+= $(call cc-disable-warning, override-init)CFLAGS_compat_syscall_table.o += $(call cc-disable-warning, override-init) ifdef CONFIG_KEXEC_COREAFLAGS_kexec_relocate.o := -mcmodel=medany $(call cc-option,-mno-relax)endif # cmodel=medany and notrace when patching earlyifdef CONFIG_RISCV_ALTERNATIVE_EARLYCFLAGS_alternative.o := -mcmodel=medanyCFLAGS_cpufeature.o := -mcmodel=medanyCFLAGS_sbi_ecall.o := -mcmodel=medanyifdef CONFIG_FTRACECFLAGS_REMOVE_alternative.o = $(CC_FLAGS_FTRACE)CFLAGS_REMOVE_cpufeature.o = $(CC_FLAGS_FTRACE)endififdef CONFIG_RELOCATABLECFLAGS_alternative.o += -fno-pieCFLAGS_cpufeature.o += -fno-pieCFLAGS_sbi_ecall.o += -fno-pieendififdef CONFIG_KASANKASAN_SANITIZE_alternative.o := nKASAN_SANITIZE_cpufeature.o := nKASAN_SANITIZE_sbi_ecall.o := nendififdef CONFIG_FORTIFY_SOURCECFLAGS_alternative.o += -D__NO_FORTIFYCFLAGS_cpufeature.o += -D__NO_FORTIFYCFLAGS_sbi_ecall.o += -D__NO_FORTIFYendifendif ifdef CONFIG_FTRACECFLAGS_REMOVE_ftrace.o	= $(CC_FLAGS_FTRACE)CFLAGS_REMOVE_patch.o	= $(CC_FLAGS_FTRACE)CFLAGS_REMOVE_sbi.o	= $(CC_FLAGS_FTRACE)CFLAGS_REMOVE_return_address.o	= $(CC_FLAGS_FTRACE)CFLAGS_REMOVE_sbi_ecall.o = $(CC_FLAGS_FTRACE)endif always-$(KBUILD_BUILTIN) += vmlinux.lds obj-y	+= head.oobj-y	+= soc.oobj-$(CONFIG_RISCV_ALTERNATIVE) += alternative.oobj-y	+= cpu.oobj-y	+= cpufeature.oobj-y	+= entry.oobj-y	+= irq.oobj-y	+= process.oobj-y	+= ptrace.oobj-y	+= reset.oobj-y	+= return_address.oobj-y	+= setup.oobj-y	+= signal.oobj-y	+= syscall_table.oobj-y	+= sys_riscv.oobj-y	+= sys_hwprobe.oobj-y	+= time.oobj-y	+= traps.oobj-y	+= riscv_ksyms.oobj-y	+= stacktrace.oobj-y	+= cacheinfo.oobj-y	+= patch.oobj-y	+= vendor_extensions.oobj-y	+= vendor_extensions/obj-y	+= probes/obj-y	+= tests/obj-$(CONFIG_MMU) += vdso.o vdso/obj-$(CONFIG_RISCV_USER_CFI) += vdso_cfi/ obj-$(CONFIG_RISCV_MISALIGNED)	+= traps_misaligned.oobj-$(CONFIG_RISCV_MISALIGNED)	+= unaligned_access_speed.oobj-$(CONFIG_RISCV_PROBE_UNALIGNED_ACCESS)		+= copy-unaligned.oobj-$(CONFIG_RISCV_PROBE_VECTOR_UNALIGNED_ACCESS)	+= vec-copy-unaligned.o obj-$(CONFIG_FPU)		+= fpu.oobj-$(CONFIG_FPU)		+= kernel_mode_fpu.oobj-$(CONFIG_RISCV_ISA_V)	+= vector.oobj-$(CONFIG_RISCV_ISA_V)	+= kernel_mode_vector.oobj-$(CONFIG_SMP)		+= smpboot.oobj-$(CONFIG_SMP)		+= smp.oobj-$(CONFIG_SMP)		+= cpu_ops.o obj-$(CONFIG_RISCV_BOOT_SPINWAIT) += cpu_ops_spinwait.oobj-$(CONFIG_MODULES)		+= module.oobj-$(CONFIG_MODULE_SECTIONS)	+= module-sections.o obj-$(CONFIG_CPU_PM)		+= suspend_entry.o suspend.oobj-$(CONFIG_HIBERNATION)	+= hibernate.o hibernate-asm.o obj-$(CONFIG_FUNCTION_TRACER)	+= mcount.o ftrace.oobj-$(CONFIG_DYNAMIC_FTRACE)	+= mcount-dyn.o obj-$(CONFIG_PERF_EVENTS)	+= perf_callchain.oobj-$(CONFIG_HAVE_PERF_REGS)	+= perf_regs.oobj-$(CONFIG_RISCV_SBI)		+= sbi.o sbi_ecall.oifeq ($(CONFIG_RISCV_SBI), y)obj-$(CONFIG_SMP)		+= sbi-ipi.oobj-$(CONFIG_SMP) += cpu_ops_sbi.oendifobj-$(CONFIG_HOTPLUG_CPU)	+= cpu-hotplug.oobj-$(CONFIG_PARAVIRT)		+= paravirt.oobj-$(CONFIG_KGDB)		+= kgdb.oobj-$(CONFIG_KEXEC_CORE)	+= kexec_relocate.o crash_save_regs.o machine_kexec.oobj-$(CONFIG_KEXEC_FILE)	+= kexec_elf.o kexec_image.o machine_kexec_file.oobj-$(CONFIG_CRASH_DUMP)	+= crash_dump.oobj-$(CONFIG_VMCORE_INFO)	+= vmcore_info.o obj-$(CONFIG_JUMP_LABEL)	+= jump_label.o obj-$(CONFIG_CFI)		+= cfi.o obj-$(CONFIG_EFI)		+= efi.oobj-$(CONFIG_COMPAT)		+= compat_syscall_table.oobj-$(CONFIG_COMPAT)		+= compat_signal.oobj-$(CONFIG_COMPAT)		+= compat_vdso/ obj-$(CONFIG_64BIT)		+= pi/obj-$(CONFIG_ACPI)		+= acpi.oobj-$(CONFIG_ACPI_NUMA)	+= acpi_numa.o obj-$(CONFIG_GENERIC_CPU_VULNERABILITIES) += bugs.oobj-$(CONFIG_RISCV_USER_CFI) += usercfi.o obj-$(CONFIG_RISCV_ISA_SSQOSID) += qos.o