aboutsummaryrefslogtreecommitdiff
path: root/doc/building.md
blob: 52fac6a9bbe62ae0d22a014161e40f0bf0b1abba (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
## Using meson

### Picking compiler
```
# set the environment variables as desired
export CXX='ccache clazy'
export CXX_LD='lld'
```

### Listing build options
```
build% meson configure
```

### Changing build options
```
build% meson configure -D<option-name>=<enabled|disabled>
```

### Prevent meson from downloading wraps
During configure, meson can download missing dependencies on its own using
wraps. To disable this, pass '--wrap-mode=nodownload' during the configure
phase:
```
repo% meson --wrap-mode=nodownload build-path
```

For more information on how to use meson, see the meson
[quick quide](https://mesonbuild.com/Quick-guide.html).

## Configuring builds
smolbote uses Kconfig to store and customize features and default settings such
as keyboard shortcuts and paths. You can edit these settings using `menuconfig`
from kconfiglib or similar.