blob: 6756e87fbfc502d53542ec4ab456e10e02efd616 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
|
# See LICENSE file for copyright and license details.
LINUX_VERSION = 6.6
# Changing this number can potentially break the build,
# silently or violently, so make sure everything still
# works afterwards
SUPPORTED_LINUX_ARCHES =\
ALPHA_LE\
ALPHA_BE\
AMD64\
AMD64_X32\
ARM_OABI_LE\
ARM_OABI_BE\
ARM_EABI_LE\
ARM_EABI_BE\
IA64_LE\
IA64_BE\
M68K\
MICROBLAZE_32_LE\
MICROBLAZE_32_BE\
MIPS_O32_LE\
MIPS_O32_BE\
MIPS_N32_LE\
MIPS_N32_BE\
MIPS_N64_LE\
MIPS_N64_BE\
PARISC_32\
PARISC_64\
POWERPC_32_LE\
POWERPC_32_BE\
POWERPC_64_LE\
POWERPC_64_BE\
POWERPC_NOSPU_LE\
POWERPC_NOSPU_BE\
POWERPC_SPU_LE\
POWERPC_SPU_BE\
S390_32\
S390_64\
SH_LE\
SH_BE\
SPARC_32\
SPARC_64_LE\
SPARC_64_BE\
I386\
XTENSA_LE\
XTENSA_BE
OPERATING_SYSTEMS += linux
NPARAMS += 8
NFIELDS += 60
SUPPORTED_LINUX_ARCHES != printf '%s\n' $(SUPPORTED_LINUX_ARCHES) $(SUPPORTED_ARCHES) | sort | uniq -d
TEST_ENV += SUPPORTED_LINUX_ARCHES="$(SUPPORTED_LINUX_ARCHES)"
include linux/download.mk
include linux/errors.mk
include linux/integers.mk
include linux/signals.mk
include linux/structs.mk
include linux/syscalls.mk
include linux/syscall-table.mk
include linux/symbols.mk
include linux/types.mk
HDR += generated/linux-arches.h
generated/linux-arches.h: linux/linux-support.mk
mkdir -p -- generated
(printf '\43define LIST_LINUX_ARCHES(X, D)\\\n' && \
printf '\tX(%s) D\\\n' $(SUPPORTED_LINUX_ARCHES); \
) | sed '/X()/d' | sed '$$s/\\$$//' | sed '$$s/ D$$//' > $@
(printf '\43define LIST_LINUX_ARCHES_WITH_BIENDIAN(X, D)\\\n' && \
printf '\tX(%s) D\\\n' $(SUPPORTED_LINUX_ARCHES) \
| sed -n 's/_LE)/)/p'; \
) | sed '/X()/d' | sed '$$s/\\$$//' | sed '$$s/ D$$//' >> $@
(printf '\43define LIST_LINUX_ARCHES_WITH_UNIENDIAN(X, D)\\\n' && \
printf '\tX(%s) D\\\n' $(SUPPORTED_LINUX_ARCHES); \
) | sed '/_[LB]E)/d' \
| sed '/X()/d' | sed '$$s/\\$$//' | sed '$$s/ D$$//' >> $@
(printf '\43define LIST_LINUX_ARCHES_WITHOUT_ENDIANS(X, D)\\\n' && \
printf '\tX(%s) D\\\n' $(SUPPORTED_LINUX_ARCHES); \
) | sed 's/_[LB]E)/)/' | uniq \
| sed '/X()/d' | sed '$$s/\\$$//' | sed '$$s/ D$$//' >> $@
|