summaryrefslogtreecommitdiff
path: root/target/config/Config.in.abi
blob: 1b34ec6e3370ea24dd463809028e16eb8819de89 (plain)
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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
# This file is part of the OpenADK project. OpenADK is copyrighted
# material, please see the LICENCE file in the top-level directory.

choice
prompt "ABI"
depends on ADK_TARGET_ARCH_MIPS64

config ADK_TARGET_ABI_N32
	bool "N32 ABI"

config ADK_TARGET_ABI_N64
	bool "N64 ABI"

config ADK_TARGET_ABI_O32
	bool "O32 ABI"

endchoice

choice
prompt "ABI"
depends on ADK_TARGET_ARCH_X86_64 && \
	(ADK_TARGET_LIB_GLIBC || ADK_TARGET_LIB_MUSL)

config ADK_TARGET_ABI_64
	bool "64 Bit ABI"

config ADK_TARGET_ABI_X32
	bool "x32 ABI"

endchoice

config ADK_TARGET_ABI_ILP32
	bool
	depends on ADK_TARGET_ARCH_RISCV32

config ADK_TARGET_ABI_ILP32F
	bool
	depends on ADK_TARGET_ARCH_RISCV32

config ADK_TARGET_ABI_ILP32D
	bool
	depends on ADK_TARGET_ARCH_RISCV32

config ADK_TARGET_ABI_LP64
	bool
	depends on ADK_TARGET_ARCH_RISCV64

config ADK_TARGET_ABI_LP64F
	bool
	depends on ADK_TARGET_ARCH_RISCV64

config ADK_TARGET_ABI_LP64D
	bool
	depends on ADK_TARGET_ARCH_RISCV64

config ADK_TARGET_ABI
	string
	default "o32" if ADK_TARGET_ABI_O32
	default "n32" if ADK_TARGET_ABI_N32
	default "n64" if ADK_TARGET_ABI_N64
	default "32" if ADK_TARGET_ABI_32
	default "x32" if ADK_TARGET_ABI_X32
	default "eabihf" if ADK_TARGET_ARCH_ARM && ADK_TARGET_HARD_FLOAT
	default "eabi" if ADK_TARGET_ARCH_ARM

config ADK_TARGET_ABI_RISCV
	depends on ADK_TARGET_ARCH_RISCV32 || ADK_TARGET_ARCH_RISCV64
	string
	default "lp64" if ADK_TARGET_ABI_LP64
	default "lp64d" if ADK_TARGET_ABI_LP64D
	default "lp64f" if ADK_TARGET_ABI_LP64F
	default "ilp32" if ADK_TARGET_ABI_ILP64
	default "ilp32d" if ADK_TARGET_ABI_ILP64D
	default "ilp32f" if ADK_TARGET_ABI_ILP64F

config ADK_TARGET_ABI_MIPS64
	depends on ADK_TARGET_ARCH_MIPS64
	string
	default "32" if ADK_TARGET_ABI_O32
	default "n32" if ADK_TARGET_ABI_N32
	default "64" if ADK_TARGET_ABI_N64

config ADK_TARGET_LIBC_PATH
	string
	default "lib32" if ADK_TARGET_ABI_N32
	default "libx32" if ADK_TARGET_ABI_X32
	default "lib64" if ADK_TARGET_ABI_64 || ADK_TARGET_ABI_N64 \
			|| ADK_TARGET_ARCH_AARCH64 \
			|| ADK_TARGET_ARCH_SPARC64 \
			|| ADK_TARGET_ARCH_PPC64 \
			|| ADK_TARGET_ARCH_X86_64
	default "lib"

config ADK_TARGET_LIBC_ABI_PATH
	string
	default "lib/lp64" if ADK_TARGET_ABI_LP64
	default "lib/lp64d" if ADK_TARGET_ABI_LP64D
	default "lib/lp64f" if ADK_TARGET_ABI_LP64F
	default "lib/ilp32" if ADK_TARGET_ABI_ILP64
	default "lib/ilp32d" if ADK_TARGET_ABI_ILP64D
	default "lib/ilp32f" if ADK_TARGET_ABI_ILP64F
	default "lib"

config ADK_TARGET_ABI_CFLAGS
	string
	default "-mabi=32" if ADK_TARGET_ABI_O32
	default "-mabi=n32" if ADK_TARGET_ABI_N32
	default "-mabi=64" if ADK_TARGET_ABI_N64
	default "-m32" if ADK_TARGET_ABI_32
	default "-mx32" if ADK_TARGET_ABI_X32
	default "-m64" if ADK_TARGET_ABI_64
	default "-mabi=lp64" if ADK_TARGET_ABI_LP64
	default "-mabi=lp64f" if ADK_TARGET_ABI_LP64F
	default "-mabi=lp64d" if ADK_TARGET_ABI_LP64D
	default "-mabi=ilp32" if ADK_TARGET_ABI_ILP32
	default "-mabi=ilp32f" if ADK_TARGET_ABI_ILP32F
	default "-mabi=ilp32d" if ADK_TARGET_ABI_ILP32D