^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) kapi := arch/$(SRCARCH)/include/generated/asm
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) uapi := arch/$(SRCARCH)/include/generated/uapi/asm
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) _dummy := $(shell [ -d '$(uapi)' ] || mkdir -p '$(uapi)') \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) $(shell [ -d '$(kapi)' ] || mkdir -p '$(kapi)')
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) syscall := $(srctree)/$(src)/syscall.tbl
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) syshdr := $(srctree)/$(src)/syscallhdr.sh
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) systbl := $(srctree)/$(src)/syscalltbl.sh
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) quiet_cmd_syshdr = SYSHDR $@
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) cmd_syshdr = $(CONFIG_SHELL) '$(syshdr)' '$<' '$@' \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) '$(syshdr_abis_$(basetarget))' \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) '$(syshdr_pfx_$(basetarget))' \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) '$(syshdr_offset_$(basetarget))'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) quiet_cmd_systbl = SYSTBL $@
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) cmd_systbl = $(CONFIG_SHELL) '$(systbl)' '$<' '$@' \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) '$(systbl_abis_$(basetarget))' \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) '$(systbl_abi_$(basetarget))' \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) '$(systbl_offset_$(basetarget))'
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) syshdr_abis_unistd_32 := common,32
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) $(uapi)/unistd_32.h: $(syscall) $(syshdr)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) $(call if_changed,syshdr)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) syshdr_abis_unistd_64 := common,64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) $(uapi)/unistd_64.h: $(syscall) $(syshdr)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) $(call if_changed,syshdr)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) systbl_abis_syscall_table_32 := common,32
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) $(kapi)/syscall_table_32.h: $(syscall) $(systbl)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) $(call if_changed,systbl)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) systbl_abis_syscall_table_64 := common,64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) $(kapi)/syscall_table_64.h: $(syscall) $(systbl)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) $(call if_changed,systbl)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) systbl_abis_syscall_table_c32 := common,32
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) systbl_abi_syscall_table_c32 := c32
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) $(kapi)/syscall_table_c32.h: $(syscall) $(systbl)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) $(call if_changed,systbl)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) uapisyshdr-y += unistd_32.h unistd_64.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) kapisyshdr-y += syscall_table_32.h \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) syscall_table_64.h \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) syscall_table_c32.h
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) targets += $(uapisyshdr-y) $(kapisyshdr-y)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) PHONY += all
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) all: $(addprefix $(uapi)/,$(uapisyshdr-y))
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) all: $(addprefix $(kapi)/,$(kapisyshdr-y))
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) @: