11da177e4SLinus Torvalds# 21da177e4SLinus Torvalds# Makefile for the linux kernel. 31da177e4SLinus Torvalds# 41da177e4SLinus Torvalds 5b67067f1SNicholas Pigginccflags-y := -fno-function-sections -fno-data-sections 6b67067f1SNicholas Piggin 7c33df4eaSJean-Paul Samanobj-y := main.o version.o mounts.o 8c33df4eaSJean-Paul Samanifneq ($(CONFIG_BLK_DEV_INITRD),y) 9c33df4eaSJean-Paul Samanobj-y += noinitramfs.o 10c33df4eaSJean-Paul Samanelse 11c33df4eaSJean-Paul Samanobj-$(CONFIG_BLK_DEV_INITRD) += initramfs.o 12c33df4eaSJean-Paul Samanendif 131da177e4SLinus Torvaldsobj-$(CONFIG_GENERIC_CALIBRATE_DELAY) += calibrate.o 14a6359d1eSThomas Gleixner 15a6359d1eSThomas Gleixnerifneq ($(CONFIG_ARCH_INIT_TASK),y) 16a6359d1eSThomas Gleixnerobj-y += init_task.o 17a6359d1eSThomas Gleixnerendif 181da177e4SLinus Torvalds 191da177e4SLinus Torvaldsmounts-y := do_mounts.o 201da177e4SLinus Torvaldsmounts-$(CONFIG_BLK_DEV_RAM) += do_mounts_rd.o 211da177e4SLinus Torvaldsmounts-$(CONFIG_BLK_DEV_INITRD) += do_mounts_initrd.o 221da177e4SLinus Torvaldsmounts-$(CONFIG_BLK_DEV_MD) += do_mounts_md.o 231da177e4SLinus Torvalds 241da177e4SLinus Torvalds# dependencies on generated files need to be listed explicitly 2592045954SSam Ravnborg$(obj)/version.o: include/generated/compile.h 261da177e4SLinus Torvalds 273eb3c740SRoman Zippel# compile.h changes depending on hostname, generation number, etc, 283eb3c740SRoman Zippel# so we regenerate it always. 293eb3c740SRoman Zippel# mkcompile_h will make sure to only update the 303eb3c740SRoman Zippel# actual file if its content has changed. 313eb3c740SRoman Zippel 32fab1e310SSam Ravnborg chk_compile.h = : 33d75f4c68SMike Frysinger quiet_chk_compile.h = echo ' CHK $@' 34d75f4c68SMike Frysingersilent_chk_compile.h = : 3592045954SSam Ravnborginclude/generated/compile.h: FORCE 36d75f4c68SMike Frysinger @$($(quiet)chk_compile.h) 373eb3c740SRoman Zippel $(Q)$(CONFIG_SHELL) $(srctree)/scripts/mkcompile_h $@ \ 38a0f97e06SSam Ravnborg "$(UTS_MACHINE)" "$(CONFIG_SMP)" "$(CONFIG_PREEMPT)" "$(CC) $(KBUILD_CFLAGS)" 39