forked from jameswalmsley/bitthunder
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Kconfig
194 lines (139 loc) · 3.2 KB
/
Kconfig
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
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
#
#
mainmenu "BitThunder Configuration"
config CONFIGURED
bool
default y
config APP_CONFIG
bool
option env="APP_CONFIG"
default n
config APP_DIR
string
default "scripts" if !APP_CONFIG
option env="APP_DIR"
config APP_BSP_CONFIG
bool
option env="APP_BSP_CONFIG"
default n
config APP_BSP_DIR
string
default "bsp" if !APP_BSP_CONFIG
option env="APP_BSP_DIR"
choice
prompt "Build OS or Library"
default OS
config OS
bool "OS"
config LIB
bool "Library"
endchoice
menu "Build System (dbuild)"
config DBUILD_PYTHON
string "Python path"
default "/usr/bin/python"
---help---
DBUILD uses Python to form pretty output. Ensure it has a valid python
interpreter path here.
choice
prompt "Build Host Platform"
default HOST_LINUX
config HOST_LINUX
bool "Linux"
config HOST_WINDOWS
bool "Windows"
config HOST_OTHER
bool "Other"
endchoice
config TOOLCHAIN
string "Toolchain prefix"
choice
prompt "Optimisation Level"
default OPTIMISE_NONE
config OPTIMISE_NONE
bool "No Optimisations"
config OPTIMISE_SIZE
bool "-Os (Optimise for size)"
config OPTIMISE_SPEED
bool "-O2 (Optimise for speed)"
config OPTIMISE_ULTRA_SPEED
bool "-O3 (Optimise for ultra-speed (can increase code-size))"
endchoice
choice
prompt "Warning Level"
default WARN_NORMAL
config WARN_NORMAL
bool "Normal warnings from compiler"
config WARN_ALL
bool "-Wall on compiler"
config WARN_PEDANTIC
bool "-Wall --pedantic"
config WARN_ERROR
bool "-Wall -Werror"
config WARN_ERROR_PEDANTIC
bool "-Wall -Werror --pedantic (For the insane)"
endchoice
config TOOLCHAIN_WARNING
string
default "" if WARN_NORMAL
default "-Wall" if WARN_ALL
default "-Wall --pedantic" if WARN_PEDANTIC
default "-Wall -Werror" if WARN_ERROR
default "-Wall -Werror --pedantic" if WARN_ERROR_PEDANTIC
config TOOLCHAIN_OPTIMISATION
string
default "-Os" if OPTIMISE_SIZE
default "-O0" if OPTIMISE_NONE
default "-O2" if OPTIMISE_SPEED
default "-O3" if OPTIMISE_ULTRA_SPEED
config TOOLCHAIN_DEBUG
bool "Debug Symbols"
default y
config TOOLCHAIN_DEBUG_FLAGS
string
default "-g" if TOOLCHAIN_DEBUG
choice
prompt "Windows Build Environment"
default WINDOWS_CYGWIN
depends on HOST_WINDOWS
config WINDOWS_NATIVE
bool "Windows Native"
---help---
Build natively in a CMD.exe environment with Windows style paths (like C:\cgywin\home)
config WINDOWS_CYGWIN
bool "Cygwin"
---help---
Build natively in a Cygwin environment with POSIX style paths (like /cygdrive/c/cgywin/home)
config WINDOWS_MSYS
bool "MSYS"
---help---
Build natively in a Cygwin environment with POSIX style paths (like /cygdrive/c/cgywin/home)
config WINDOWS_OTHER
bool "Windows POSIX-like environment"
---help---
Build natively in another POSIX-like environment. Additional support may be necessary
endchoice
menu "Build Configuration"
endmenu
endmenu
menu "System Architecture"
source "arch/Kconfig"
endmenu
menu "BSP Setup"
source "$APP_BSP_DIR/Kconfig"
endmenu
menu "OS Features"
depends on OS
source "os/Kconfig"
endmenu
menu "Drivers"
source "drivers/Kconfig"
endmenu
menu "Kernel Options"
source kernel/Kconfig
endmenu
if APP_CONFIG
menu "Application Configuration"
source "$APP_DIR/Kconfig"
endmenu
endif