blob: 8051c3134ad1e7eb5bdf1f165b354742381246e1 [file] [log] [blame]
H. Peter Anvind1817642011-11-11 15:55:49 -08001out := $(obj)/../include/generated/asm
2
3# Create output directory if not already present
4_dummy := $(shell [ -d '$(out)' ] || mkdir -p '$(out)')
5
6syscall32 := $(srctree)/$(src)/syscall_32.tbl
7syscall64 := $(srctree)/$(src)/syscall_64.tbl
8
9syshdr := $(srctree)/$(src)/syscallhdr.sh
10systbl := $(srctree)/$(src)/syscalltbl.sh
11
12quiet_cmd_syshdr = SYSHDR $@
H. Peter Anvin6cbb3692012-02-14 14:38:31 -080013 cmd_syshdr = $(CONFIG_SHELL) '$(syshdr)' '$<' '$@' \
14 '$(syshdr_abi_$(basetarget))' \
15 '$(syshdr_pfx_$(basetarget))' \
16 '$(syshdr_offset_$(basetarget))'
H. Peter Anvind1817642011-11-11 15:55:49 -080017quiet_cmd_systbl = SYSTBL $@
18 cmd_systbl = $(CONFIG_SHELL) '$(systbl)' $< $@
19
20syshdr_abi_unistd_32 := i386
21$(out)/unistd_32.h: $(syscall32) $(syshdr)
22 $(call if_changed,syshdr)
23
24syshdr_abi_unistd_32_ia32 := i386
25syshdr_pfx_unistd_32_ia32 := ia32_
26$(out)/unistd_32_ia32.h: $(syscall32) $(syshdr)
27 $(call if_changed,syshdr)
28
H. Peter Anvin6cbb3692012-02-14 14:38:31 -080029syshdr_abi_unistd_x32 := common,x32
30syshdr_offset_unistd_x32 := __X32_SYSCALL_BIT
31$(out)/unistd_x32.h: $(syscall64) $(syshdr)
32 $(call if_changed,syshdr)
33
H. Peter Anvin6630f112012-02-14 14:18:50 -080034syshdr_abi_unistd_64 := common,64
H. Peter Anvind1817642011-11-11 15:55:49 -080035$(out)/unistd_64.h: $(syscall64) $(syshdr)
36 $(call if_changed,syshdr)
37
38$(out)/syscalls_32.h: $(syscall32) $(systbl)
39 $(call if_changed,systbl)
40$(out)/syscalls_64.h: $(syscall64) $(systbl)
41 $(call if_changed,systbl)
42
H. Peter Anvin6cbb3692012-02-14 14:38:31 -080043syshdr-y += unistd_32.h unistd_64.h unistd_x32.h
H. Peter Anvind1817642011-11-11 15:55:49 -080044syshdr-y += syscalls_32.h
45syshdr-$(CONFIG_X86_64) += unistd_32_ia32.h
46syshdr-$(CONFIG_X86_64) += syscalls_64.h
47
48targets += $(syshdr-y)
49
50all: $(addprefix $(out)/,$(targets))