blob: 1dbb23787290081a834162ce35bffbbb96acfaf7 [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001# SPDX-License-Identifier: GPL-2.0
Linus Torvalds1da177e2005-04-16 15:20:36 -07002#
3# Makefile for the linux kernel.
4#
5
Nicholas Pigginb67067f2016-08-24 22:29:20 +10006ccflags-y := -fno-function-sections -fno-data-sections
7
Jean-Paul Samanc33df4e2007-02-10 01:44:43 -08008obj-y := main.o version.o mounts.o
9ifneq ($(CONFIG_BLK_DEV_INITRD),y)
10obj-y += noinitramfs.o
11else
12obj-$(CONFIG_BLK_DEV_INITRD) += initramfs.o
13endif
Linus Torvalds1da177e2005-04-16 15:20:36 -070014obj-$(CONFIG_GENERIC_CALIBRATE_DELAY) += calibrate.o
Thomas Gleixnera6359d12012-05-03 09:03:02 +000015
16ifneq ($(CONFIG_ARCH_INIT_TASK),y)
17obj-y += init_task.o
18endif
Linus Torvalds1da177e2005-04-16 15:20:36 -070019
20mounts-y := do_mounts.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070021mounts-$(CONFIG_BLK_DEV_RAM) += do_mounts_rd.o
22mounts-$(CONFIG_BLK_DEV_INITRD) += do_mounts_initrd.o
23mounts-$(CONFIG_BLK_DEV_MD) += do_mounts_md.o
24
Linus Torvalds1da177e2005-04-16 15:20:36 -070025# dependencies on generated files need to be listed explicitly
Sam Ravnborg92045952009-10-18 00:36:47 +020026$(obj)/version.o: include/generated/compile.h
Linus Torvalds1da177e2005-04-16 15:20:36 -070027
Roman Zippel3eb3c742007-01-10 14:45:28 +010028# compile.h changes depending on hostname, generation number, etc,
29# so we regenerate it always.
30# mkcompile_h will make sure to only update the
31# actual file if its content has changed.
32
Sam Ravnborgfab1e312008-02-11 14:26:26 +010033 chk_compile.h = :
Mike Frysingerd75f4c682008-02-08 00:05:52 -050034 quiet_chk_compile.h = echo ' CHK $@'
35silent_chk_compile.h = :
Sam Ravnborg92045952009-10-18 00:36:47 +020036include/generated/compile.h: FORCE
Mike Frysingerd75f4c682008-02-08 00:05:52 -050037 @$($(quiet)chk_compile.h)
Roman Zippel3eb3c742007-01-10 14:45:28 +010038 $(Q)$(CONFIG_SHELL) $(srctree)/scripts/mkcompile_h $@ \
Sam Ravnborga0f97e02007-10-14 22:21:35 +020039 "$(UTS_MACHINE)" "$(CONFIG_SMP)" "$(CONFIG_PREEMPT)" "$(CC) $(KBUILD_CFLAGS)"