This is mainly just to reduce the amount of files in the project root.
The criteria of what gets into `etc/` are the following:
* The file should not be necessary for building nsxiv. This excludes the
`icon/*` stuff since that's needed by `window.c`.
* The file shouldn't have any valid reason to stay in the project root.
This excludes things like `README.md`, `.gitignore` etc.
Reviewed-on: https://codeberg.org/nsxiv/nsxiv/pulls/350
Reviewed-by: explosion-mental <explosion-mental@noreply.codeberg.org>
* install unversioned `llvm` so that it pulls the latest one.
* disable `uninitvar` check on cppcheck as it catches some false positives and
gcc/clang/clang-tidy are good at catching uninitialized variables already.
Reviewed-on: https://codeberg.org/nsxiv/nsxiv/pulls/348
Reviewed-by: explosion-mental <explosion-mental@noreply.codeberg.org>
cppcheck warns about passing a plain NULL to construct_argv()
main.c:254:36: portability: Passing NULL after the last typed argument to a variadic function leads to undefined behaviour. [varFuncNullUB]
fidx, fcnt, w, h, z, NULL);
in our case, POSIX mandates `NULL` to be defined as `(void *)0` rather
than a plain `0` [0]. and void pointers are required to have the same
representation and size as char pointers [1]. so this is not an issue we
need to worry about.
[0]: https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/stddef.h.html#tag_13_47
[1]: https://port70.net/~nsz/c/c99/n1256.html#6.2.5p27