summaryrefslogtreecommitdiff
path: root/script/mkconfig
blob: 4cb5666fbe6d737d837e9e4997e67245645e95ee (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
#!/bin/sh
#
# Copyright 2020 Daniel Friesel
#
# SPDX-License-Identifier: BSD-2-Clause

cat <<EOF

menu "System"

config loop
bool "Regularly call loop()"
default y

config wakeup
bool "Call wakeup() on wakeup"
default n

config ostream
bool "C++ ostream support in stdout"
default n
depends on arch_esp8266 || arch_msp430fr5969lp || arch_msp430fr5994lp || arch_posix

config aspectc
bool "Build with AspectC++"
default n

config i2c_freq
int "I2C Frequency [Hz]"
range 1000 100000
default 100000
depends on meta_driver_i2c

config timer_freq
int "Timer Frequency"
range 1 10000
default 10
depends on meta_driver_timer

endmenu

choice Architecture
bool "Architecture"

EOF

for arch in $(ls -1 src/arch); do
	echo config arch_${arch} | tr - _
	echo bool '"'"$(cat src/arch/${arch}/prompt)"'"'
	echo
done

echo endchoice
echo

for arch in $(ls -1 src/arch); do
	echo config arch
	echo string
	echo default '"'"${arch}"'"'
	echo depends on arch_${arch} | tr - _
	echo
done

for arch in $(ls -1 src/arch); do
	if [ -e "src/arch/${arch}/Kconfig" ]; then
		echo menu '"'"$(cat src/arch/${arch}/prompt) Configuration"'"'
		echo depends on arch_${arch} | tr - _
		echo
		cat "src/arch/${arch}/Kconfig"
		echo
		echo endmenu
		echo
	fi
done

cat <<EOF
choice Application
bool "Application"

EOF

for app in $(ls -1 src/app); do
	if [ ! -e "src/app/${app}/Kconfig" ]; then
		continue
	fi
	echo config app_${app} | tr - _
	if [ -e "src/app/${app}/Kconfig" ]; then
		echo bool
		cat src/app/${app}/Kconfig
	else
		echo bool '"'${app}'"'
	fi
	echo
done

echo endchoice
echo

for app in $(ls -1 src/app); do
	if [ ! -e "src/app/${app}/Kconfig" ]; then
		continue
	fi
	echo config app
	echo string
	echo default '"'"${app}"'"'
	echo depends on app_${app} | tr - _
	echo
done

cat src/driver/Kconfig