Add HACKING.md
This commit is contained in:
parent
816ceddcbd
commit
34fae764a5
35
HACKING.md
Normal file
35
HACKING.md
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
## Logging
|
||||||
|
|
||||||
|
Use `sway_log(importance, fmt, ...)` to log. The following importances are
|
||||||
|
available:
|
||||||
|
|
||||||
|
* `L_DEBUG`: Debug messages, only shows with `sway -d`
|
||||||
|
* `L_INFO`: Informational messages
|
||||||
|
* `L_ERROR`: Error messages
|
||||||
|
|
||||||
|
`sway_log` is a macro that calls `_sway_log` with the current filename and line
|
||||||
|
number, which are written into the log with your message.
|
||||||
|
|
||||||
|
## Assertions
|
||||||
|
|
||||||
|
In the compositor, assertions *must not* be fatal. All error cases must be
|
||||||
|
handled as gracefully as possible - crashing the compositor will make the user
|
||||||
|
lose all of their work.
|
||||||
|
|
||||||
|
Use `sway_assert(condition, fmt, ...)` to perform an assertion. This returns
|
||||||
|
`condition`, which you must handle if false. An error will be logged if the
|
||||||
|
assertion fails.
|
||||||
|
|
||||||
|
Outside of the compositor (swaymsg, swaybar, etc), using `assert.h` is
|
||||||
|
permitted.
|
||||||
|
|
||||||
|
## Building against a local wlc
|
||||||
|
|
||||||
|
1. Build wlc as described [here](https://github.com/Cloudef/wlc#building)
|
||||||
|
2. Inside your sway source folder, tell `cmake` to use your local version of wlc:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cmake \
|
||||||
|
-DWLC_LIBRARIES=path/to/wlc/target/src/libwlc.so \
|
||||||
|
-DWLC_INCLUDE_DIRS=path/to/wlc/include .
|
||||||
|
```
|
Loading…
Reference in a new issue