xref: /linux/arch/mips/kernel/syscalls/Makefile (revision 9bcbf97c62931f27ab2c52f0848dec0cd48aee78)
1*9bcbf97cSFiroz Khan# SPDX-License-Identifier: GPL-2.0
2*9bcbf97cSFiroz Khankapi := arch/$(SRCARCH)/include/generated/asm
3*9bcbf97cSFiroz Khanuapi := arch/$(SRCARCH)/include/generated/uapi/asm
4*9bcbf97cSFiroz Khan
5*9bcbf97cSFiroz Khan_dummy := $(shell [ -d '$(uapi)' ] || mkdir -p '$(uapi)')	\
6*9bcbf97cSFiroz Khan	  $(shell [ -d '$(kapi)' ] || mkdir -p '$(kapi)')
7*9bcbf97cSFiroz Khan
8*9bcbf97cSFiroz Khansyscalln32 := $(srctree)/$(src)/syscall_n32.tbl
9*9bcbf97cSFiroz Khansyscalln64 := $(srctree)/$(src)/syscall_n64.tbl
10*9bcbf97cSFiroz Khansyscallo32 := $(srctree)/$(src)/syscall_o32.tbl
11*9bcbf97cSFiroz Khansyshdr := $(srctree)/$(src)/syscallhdr.sh
12*9bcbf97cSFiroz Khansysnr := $(srctree)/$(src)/syscallnr.sh
13*9bcbf97cSFiroz Khansystbl := $(srctree)/$(src)/syscalltbl.sh
14*9bcbf97cSFiroz Khan
15*9bcbf97cSFiroz Khanquiet_cmd_syshdr = SYSHDR  $@
16*9bcbf97cSFiroz Khan      cmd_syshdr = $(CONFIG_SHELL) '$(syshdr)' '$<' '$@'	\
17*9bcbf97cSFiroz Khan		   '$(syshdr_abis_$(basetarget))'		\
18*9bcbf97cSFiroz Khan		   '$(syshdr_pfx_$(basetarget))'		\
19*9bcbf97cSFiroz Khan		   '$(syshdr_offset_$(basetarget))'
20*9bcbf97cSFiroz Khan
21*9bcbf97cSFiroz Khanquiet_cmd_sysnr = SYSNR  $@
22*9bcbf97cSFiroz Khan      cmd_sysnr = $(CONFIG_SHELL) '$(sysnr)' '$<' '$@'		\
23*9bcbf97cSFiroz Khan		  '$(sysnr_abis_$(basetarget))'			\
24*9bcbf97cSFiroz Khan		  '$(sysnr_pfx_$(basetarget))'			\
25*9bcbf97cSFiroz Khan		  '$(sysnr_offset_$(basetarget))'
26*9bcbf97cSFiroz Khan
27*9bcbf97cSFiroz Khanquiet_cmd_systbl = SYSTBL  $@
28*9bcbf97cSFiroz Khan      cmd_systbl = $(CONFIG_SHELL) '$(systbl)' '$<' '$@'	\
29*9bcbf97cSFiroz Khan		   '$(systbl_abis_$(basetarget))'		\
30*9bcbf97cSFiroz Khan		   '$(systbl_abi_$(basetarget))'		\
31*9bcbf97cSFiroz Khan		   '$(systbl_offset_$(basetarget))'
32*9bcbf97cSFiroz Khan
33*9bcbf97cSFiroz Khansyshdr_offset_unistd_n32 := __NR_Linux
34*9bcbf97cSFiroz Khan$(uapi)/unistd_n32.h: $(syscalln32) $(syshdr)
35*9bcbf97cSFiroz Khan	$(call if_changed,syshdr)
36*9bcbf97cSFiroz Khan
37*9bcbf97cSFiroz Khansyshdr_offset_unistd_n64 := __NR_Linux
38*9bcbf97cSFiroz Khan$(uapi)/unistd_n64.h: $(syscalln64) $(syshdr)
39*9bcbf97cSFiroz Khan	$(call if_changed,syshdr)
40*9bcbf97cSFiroz Khan
41*9bcbf97cSFiroz Khansyshdr_offset_unistd_o32 := __NR_Linux
42*9bcbf97cSFiroz Khan$(uapi)/unistd_o32.h: $(syscallo32) $(syshdr)
43*9bcbf97cSFiroz Khan	$(call if_changed,syshdr)
44*9bcbf97cSFiroz Khan
45*9bcbf97cSFiroz Khansysnr_pfx_unistd_nr_n32 := N32
46*9bcbf97cSFiroz Khansysnr_offset_unistd_nr_n32 := 6000
47*9bcbf97cSFiroz Khan$(uapi)/unistd_nr_n32.h: $(syscalln32) $(sysnr)
48*9bcbf97cSFiroz Khan	$(call if_changed,sysnr)
49*9bcbf97cSFiroz Khan
50*9bcbf97cSFiroz Khansysnr_pfx_unistd_nr_n64 := 64
51*9bcbf97cSFiroz Khansysnr_offset_unistd_nr_n64 := 5000
52*9bcbf97cSFiroz Khan$(uapi)/unistd_nr_n64.h: $(syscalln64) $(sysnr)
53*9bcbf97cSFiroz Khan	$(call if_changed,sysnr)
54*9bcbf97cSFiroz Khan
55*9bcbf97cSFiroz Khansysnr_pfx_unistd_nr_o32 := O32
56*9bcbf97cSFiroz Khansysnr_offset_unistd_nr_o32 := 4000
57*9bcbf97cSFiroz Khan$(uapi)/unistd_nr_o32.h: $(syscallo32) $(sysnr)
58*9bcbf97cSFiroz Khan	$(call if_changed,sysnr)
59*9bcbf97cSFiroz Khan
60*9bcbf97cSFiroz Khansystbl_abi_syscall_table_32_o32 := 32_o32
61*9bcbf97cSFiroz Khansystbl_offset_syscall_table_32_o32 := 4000
62*9bcbf97cSFiroz Khan$(kapi)/syscall_table_32_o32.h: $(syscallo32) $(systbl)
63*9bcbf97cSFiroz Khan	$(call if_changed,systbl)
64*9bcbf97cSFiroz Khan
65*9bcbf97cSFiroz Khansystbl_abi_syscall_table_64_n32 := 64_n32
66*9bcbf97cSFiroz Khansystbl_offset_syscall_table_64_n32 := 6000
67*9bcbf97cSFiroz Khan$(kapi)/syscall_table_64_n32.h: $(syscalln32) $(systbl)
68*9bcbf97cSFiroz Khan	$(call if_changed,systbl)
69*9bcbf97cSFiroz Khan
70*9bcbf97cSFiroz Khansystbl_abi_syscall_table_64_n64 := 64_n64
71*9bcbf97cSFiroz Khansystbl_offset_syscall_table_64_n64 := 5000
72*9bcbf97cSFiroz Khan$(kapi)/syscall_table_64_n64.h: $(syscalln64) $(systbl)
73*9bcbf97cSFiroz Khan	$(call if_changed,systbl)
74*9bcbf97cSFiroz Khan
75*9bcbf97cSFiroz Khansystbl_abi_syscall_table_64_o32 := 64_o32
76*9bcbf97cSFiroz Khansystbl_offset_syscall_table_64_o32 := 4000
77*9bcbf97cSFiroz Khan$(kapi)/syscall_table_64_o32.h: $(syscallo32) $(systbl)
78*9bcbf97cSFiroz Khan	$(call if_changed,systbl)
79*9bcbf97cSFiroz Khan
80*9bcbf97cSFiroz Khanuapisyshdr-y		+= unistd_n32.h			\
81*9bcbf97cSFiroz Khan			   unistd_n64.h			\
82*9bcbf97cSFiroz Khan			   unistd_o32.h			\
83*9bcbf97cSFiroz Khan			   unistd_nr_n32.h		\
84*9bcbf97cSFiroz Khan			   unistd_nr_n64.h		\
85*9bcbf97cSFiroz Khan			   unistd_nr_o32.h
86*9bcbf97cSFiroz Khankapisyshdr-y		+= syscall_table_32_o32.h	\
87*9bcbf97cSFiroz Khan			   syscall_table_64_n32.h	\
88*9bcbf97cSFiroz Khan			   syscall_table_64_n64.h	\
89*9bcbf97cSFiroz Khan			   syscall_table_64_o32.h
90*9bcbf97cSFiroz Khan
91*9bcbf97cSFiroz Khantargets	+= $(uapisyshdr-y) $(kapisyshdr-y)
92*9bcbf97cSFiroz Khan
93*9bcbf97cSFiroz KhanPHONY += all
94*9bcbf97cSFiroz Khanall: $(addprefix $(uapi)/,$(uapisyshdr-y))
95*9bcbf97cSFiroz Khanall: $(addprefix $(kapi)/,$(kapisyshdr-y))
96*9bcbf97cSFiroz Khan	@:
97