162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci#
362306a36Sopenharmony_ci# linux/arch/arm/tools/Makefile
462306a36Sopenharmony_ci#
562306a36Sopenharmony_ci# Copyright (C) 2001 Russell King
662306a36Sopenharmony_ci#
762306a36Sopenharmony_ci
862306a36Sopenharmony_cigen := arch/$(ARCH)/include/generated
962306a36Sopenharmony_cikapi := $(gen)/asm
1062306a36Sopenharmony_ciuapi := $(gen)/uapi/asm
1162306a36Sopenharmony_cisyshdr := $(srctree)/scripts/syscallhdr.sh
1262306a36Sopenharmony_cisysnr := $(srctree)/$(src)/syscallnr.sh
1362306a36Sopenharmony_cisystbl := $(srctree)/scripts/syscalltbl.sh
1462306a36Sopenharmony_cisyscall := $(src)/syscall.tbl
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_cigen-y := $(gen)/calls-oabi.S
1762306a36Sopenharmony_cigen-y += $(gen)/calls-eabi.S
1862306a36Sopenharmony_cikapi-hdrs-y := $(kapi)/unistd-nr.h
1962306a36Sopenharmony_cikapi-hdrs-y += $(kapi)/mach-types.h
2062306a36Sopenharmony_ciuapi-hdrs-y += $(uapi)/unistd-oabi.h
2162306a36Sopenharmony_ciuapi-hdrs-y += $(uapi)/unistd-eabi.h
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_citargets += $(addprefix ../../../,$(gen-y) $(kapi-hdrs-y) $(uapi-hdrs-y))
2462306a36Sopenharmony_ci
2562306a36Sopenharmony_ciPHONY += kapi uapi
2662306a36Sopenharmony_ci
2762306a36Sopenharmony_cikapi:	$(kapi-hdrs-y) $(gen-y)
2862306a36Sopenharmony_ci
2962306a36Sopenharmony_ciuapi:	$(uapi-hdrs-y)
3062306a36Sopenharmony_ci
3162306a36Sopenharmony_ci# Create output directory if not already present
3262306a36Sopenharmony_ci$(shell mkdir -p $(kapi) $(uapi))
3362306a36Sopenharmony_ci
3462306a36Sopenharmony_ciquiet_cmd_gen_mach = GEN     $@
3562306a36Sopenharmony_ci      cmd_gen_mach = $(AWK) -f $(real-prereqs) > $@
3662306a36Sopenharmony_ci
3762306a36Sopenharmony_ci$(kapi)/mach-types.h: $(src)/gen-mach-types $(src)/mach-types FORCE
3862306a36Sopenharmony_ci	$(call if_changed,gen_mach)
3962306a36Sopenharmony_ci
4062306a36Sopenharmony_ciquiet_cmd_syshdr = SYSHDR  $@
4162306a36Sopenharmony_ci      cmd_syshdr = $(CONFIG_SHELL) $(syshdr) --abis common,$* \
4262306a36Sopenharmony_ci		   --offset __NR_SYSCALL_BASE $< $@
4362306a36Sopenharmony_ci
4462306a36Sopenharmony_ciquiet_cmd_systbl = SYSTBL  $@
4562306a36Sopenharmony_ci      cmd_systbl = $(CONFIG_SHELL) $(systbl) --abis common,$* $< $@
4662306a36Sopenharmony_ci
4762306a36Sopenharmony_ciquiet_cmd_sysnr  = SYSNR   $@
4862306a36Sopenharmony_ci      cmd_sysnr  = $(CONFIG_SHELL) $(sysnr) $< $@
4962306a36Sopenharmony_ci
5062306a36Sopenharmony_ci$(uapi)/unistd-%.h: $(syscall) $(syshdr) FORCE
5162306a36Sopenharmony_ci	$(call if_changed,syshdr)
5262306a36Sopenharmony_ci
5362306a36Sopenharmony_ci$(kapi)/unistd-nr.h: $(syscall) $(sysnr) FORCE
5462306a36Sopenharmony_ci	$(call if_changed,sysnr)
5562306a36Sopenharmony_ci
5662306a36Sopenharmony_ci$(gen)/calls-%.S: $(syscall) $(systbl) FORCE
5762306a36Sopenharmony_ci	$(call if_changed,systbl)
58