Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0
0002 
0003 gen     := arch/$(ARCH)/include/generated
0004 kapi    := $(gen)/asm
0005 uapi    := $(gen)/uapi/asm
0006 
0007 syscall := $(srctree)/$(src)/syscall.tbl
0008 systbl  := $(srctree)/$(src)/syscalltbl
0009 
0010 gen-y := $(kapi)/syscall_table.h
0011 kapi-hdrs-y := $(kapi)/unistd_nr.h
0012 uapi-hdrs-y := $(uapi)/unistd_32.h
0013 uapi-hdrs-y += $(uapi)/unistd_64.h
0014 
0015 targets += $(addprefix ../../../,$(gen-y) $(kapi-hdrs-y) $(uapi-hdrs-y))
0016 
0017 PHONY += kapi uapi
0018 
0019 kapi:   $(gen-y) $(kapi-hdrs-y)
0020 uapi:   $(uapi-hdrs-y)
0021 
0022 
0023 # Create output directory if not already present
0024 $(shell mkdir -p $(uapi) $(kapi))
0025 
0026 filechk_syshdr = $(CONFIG_SHELL) '$(systbl)' -H -a $(syshdr_abi_$(basetarget)) -f "$2" < $<
0027 
0028 filechk_sysnr = $(CONFIG_SHELL) '$(systbl)' -N -a $(sysnr_abi_$(basetarget)) < $<
0029 
0030 filechk_syscalls = $(CONFIG_SHELL) '$(systbl)' -S < $<
0031 
0032 syshdr_abi_unistd_32 := common,32
0033 $(uapi)/unistd_32.h: $(syscall) FORCE
0034         $(call filechk,syshdr,$@)
0035 
0036 syshdr_abi_unistd_64 := common,64
0037 $(uapi)/unistd_64.h: $(syscall) FORCE
0038         $(call filechk,syshdr,$@)
0039 
0040 $(kapi)/syscall_table.h: $(syscall) FORCE
0041         $(call filechk,syscalls)
0042 
0043 sysnr_abi_unistd_nr := common,32,64
0044 $(kapi)/unistd_nr.h: $(syscall) FORCE
0045         $(call filechk,sysnr)