xref: /openbmc/linux/arch/s390/kernel/Makefile (revision b04b4f78)
1#
2# Makefile for the linux kernel.
3#
4
5ifdef CONFIG_FUNCTION_TRACER
6# Do not trace early boot code
7CFLAGS_REMOVE_early.o = -pg
8endif
9
10#
11# Passing null pointers is ok for smp code, since we access the lowcore here.
12#
13CFLAGS_smp.o	:= -Wno-nonnull
14
15#
16# Pass UTS_MACHINE for user_regset definition
17#
18CFLAGS_ptrace.o		+= -DUTS_MACHINE='"$(UTS_MACHINE)"'
19
20CFLAGS_sysinfo.o += -Iinclude/math-emu -Iarch/s390/math-emu -w
21
22obj-y	:=  bitmap.o traps.o time.o process.o base.o early.o setup.o \
23	    processor.o sys_s390.o ptrace.o signal.o cpcmd.o ebcdic.o \
24	    s390_ext.o debug.o irq.o ipl.o dis.o diag.o mem_detect.o \
25	    vdso.o vtime.o sysinfo.o nmi.o
26
27obj-y	+= $(if $(CONFIG_64BIT),entry64.o,entry.o)
28obj-y	+= $(if $(CONFIG_64BIT),reipl64.o,reipl.o)
29
30extra-y				+= head.o init_task.o vmlinux.lds
31
32obj-$(CONFIG_MODULES)		+= s390_ksyms.o module.o
33obj-$(CONFIG_SMP)		+= smp.o topology.o
34
35obj-$(CONFIG_AUDIT)		+= audit.o
36compat-obj-$(CONFIG_AUDIT)	+= compat_audit.o
37obj-$(CONFIG_COMPAT)		+= compat_linux.o compat_signal.o \
38					compat_wrapper.o compat_exec_domain.o \
39					$(compat-obj-y)
40
41obj-$(CONFIG_STACKTRACE)	+= stacktrace.o
42obj-$(CONFIG_KPROBES)		+= kprobes.o
43obj-$(CONFIG_FUNCTION_TRACER)	+= mcount.o
44
45# Kexec part
46S390_KEXEC_OBJS := machine_kexec.o crash.o
47S390_KEXEC_OBJS += $(if $(CONFIG_64BIT),relocate_kernel64.o,relocate_kernel.o)
48obj-$(CONFIG_KEXEC) += $(S390_KEXEC_OBJS)
49
50# vdso
51obj-$(CONFIG_64BIT)		+= vdso64/
52obj-$(CONFIG_32BIT)		+= vdso32/
53obj-$(CONFIG_COMPAT)		+= vdso32/
54