1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0 2*4882a593Smuzhiyun# 3*4882a593Smuzhiyun# Makefile for the linux kernel. 4*4882a593Smuzhiyun# 5*4882a593Smuzhiyun 6*4882a593Smuzhiyunccflags-y := -fno-function-sections -fno-data-sections 7*4882a593Smuzhiyun 8*4882a593Smuzhiyunobj-y := main.o version.o mounts.o 9*4882a593Smuzhiyunifneq ($(CONFIG_BLK_DEV_INITRD),y) 10*4882a593Smuzhiyunobj-y += noinitramfs.o 11*4882a593Smuzhiyunelse 12*4882a593Smuzhiyunobj-$(CONFIG_BLK_DEV_INITRD) += initramfs.o 13*4882a593Smuzhiyunendif 14*4882a593Smuzhiyunobj-$(CONFIG_GENERIC_CALIBRATE_DELAY) += calibrate.o 15*4882a593Smuzhiyun 16*4882a593Smuzhiyunobj-y += init_task.o 17*4882a593Smuzhiyun 18*4882a593Smuzhiyunmounts-y := do_mounts.o 19*4882a593Smuzhiyunmounts-$(CONFIG_BLK_DEV_RAM) += do_mounts_rd.o 20*4882a593Smuzhiyunmounts-$(CONFIG_BLK_DEV_INITRD) += do_mounts_initrd.o 21*4882a593Smuzhiyun 22*4882a593Smuzhiyun# dependencies on generated files need to be listed explicitly 23*4882a593Smuzhiyun$(obj)/version.o: include/generated/compile.h 24*4882a593Smuzhiyun 25*4882a593Smuzhiyun# compile.h changes depending on hostname, generation number, etc, 26*4882a593Smuzhiyun# so we regenerate it always. 27*4882a593Smuzhiyun# mkcompile_h will make sure to only update the 28*4882a593Smuzhiyun# actual file if its content has changed. 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun chk_compile.h = : 31*4882a593Smuzhiyun quiet_chk_compile.h = echo ' CHK $@' 32*4882a593Smuzhiyunsilent_chk_compile.h = : 33*4882a593Smuzhiyuninclude/generated/compile.h: FORCE 34*4882a593Smuzhiyun @$($(quiet)chk_compile.h) 35*4882a593Smuzhiyun $(Q)$(CONFIG_SHELL) $(srctree)/scripts/mkcompile_h $@ \ 36*4882a593Smuzhiyun "$(UTS_MACHINE)" "$(CONFIG_SMP)" "$(CONFIG_PREEMPT)" \ 37*4882a593Smuzhiyun "$(CONFIG_PREEMPT_RT)" $(CONFIG_CC_VERSION_TEXT) "$(LD)" 38