162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci#
362306a36Sopenharmony_ci# Copyright (C) 2002 - 2007 Jeff Dike (jdike@{addtoit,linux.intel}.com)
462306a36Sopenharmony_ci#
562306a36Sopenharmony_ci
662306a36Sopenharmony_ciifeq ($(CONFIG_X86_32),y)
762306a36Sopenharmony_ci	BITS := 32
862306a36Sopenharmony_cielse
962306a36Sopenharmony_ci	BITS := 64
1062306a36Sopenharmony_ciendif
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_ciobj-y = bugs_$(BITS).o delay.o fault.o ldt.o \
1362306a36Sopenharmony_ci	ptrace_$(BITS).o ptrace_user.o setjmp_$(BITS).o signal.o \
1462306a36Sopenharmony_ci	stub_$(BITS).o stub_segv.o \
1562306a36Sopenharmony_ci	sys_call_table_$(BITS).o sysrq_$(BITS).o tls_$(BITS).o \
1662306a36Sopenharmony_ci	mem_$(BITS).o subarch.o os-Linux/
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_ciifeq ($(CONFIG_X86_32),y)
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ciobj-y += syscalls_32.o
2162306a36Sopenharmony_ciobj-$(CONFIG_ELF_CORE) += elfcore.o
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_cisubarch-y = ../lib/string_32.o ../lib/atomic64_32.o ../lib/atomic64_cx8_32.o
2462306a36Sopenharmony_cisubarch-y += ../lib/cmpxchg8b_emu.o ../lib/atomic64_386_32.o
2562306a36Sopenharmony_cisubarch-y += ../lib/checksum_32.o
2662306a36Sopenharmony_cisubarch-y += ../kernel/sys_ia32.o
2762306a36Sopenharmony_ci
2862306a36Sopenharmony_cielse
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ciobj-y += syscalls_64.o vdso/
3162306a36Sopenharmony_ci
3262306a36Sopenharmony_cisubarch-y = ../lib/csum-partial_64.o ../lib/memcpy_64.o \
3362306a36Sopenharmony_ci	../lib/memmove_64.o ../lib/memset_64.o
3462306a36Sopenharmony_cisubarch-$(CONFIG_PREEMPTION) += ../entry/thunk_64.o
3562306a36Sopenharmony_ci
3662306a36Sopenharmony_ciendif
3762306a36Sopenharmony_ci
3862306a36Sopenharmony_cisubarch-$(CONFIG_MODULES) += ../kernel/module.o
3962306a36Sopenharmony_ci
4062306a36Sopenharmony_ciUSER_OBJS := bugs_$(BITS).o ptrace_user.o fault.o
4162306a36Sopenharmony_ci
4262306a36Sopenharmony_ci$(obj)/user-offsets.s: c_flags = -Wp,-MD,$(depfile) $(USER_CFLAGS) \
4362306a36Sopenharmony_ci	-Iarch/x86/include/generated
4462306a36Sopenharmony_citargets += user-offsets.s
4562306a36Sopenharmony_ci
4662306a36Sopenharmony_ciinclude/generated/user_constants.h: $(obj)/user-offsets.s FORCE
4762306a36Sopenharmony_ci	$(call filechk,offsets,__USER_CONSTANT_H__)
4862306a36Sopenharmony_ci
4962306a36Sopenharmony_ciUNPROFILE_OBJS := stub_segv.o
5062306a36Sopenharmony_ciCFLAGS_stub_segv.o := $(CFLAGS_NO_HARDENING)
5162306a36Sopenharmony_ci
5262306a36Sopenharmony_ciinclude $(srctree)/arch/um/scripts/Makefile.rules
53