Something like GLib but tiny
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Přemysl Eric Janouch 1b9d89cab3
Use kqueue on Darwin as well
3 weeks ago
cmake Get rid of CMake dev warnings 1 year ago
meson/packaging Little improvements 4 years ago
tests Fix validation of overlong UTF-8 1 year ago
.gitignore Initial commit 7 years ago
CMakeLists.txt CMakeLists.txt: omit end{if,foreach} expressions 12 months ago
LICENSE Bump copyright years 1 year ago
README.adoc Update README 3 years ago
fuzz Add remaining fuzzing entry points 1 year ago
liberty-proto.c Fix a memory leak in mpd_client_parse_line() 1 year ago
liberty-tui.c Name change 1 year ago
liberty.c Use kqueue on Darwin as well 3 weeks ago
libertyconf.vim Add VIM syntax highlight for "config" 4 years ago
siphash.c siphash: silence fall-through warnings 4 years ago



liberty is a pseudolibrary of all the common C code I have written for various projects. I used to copy-paste large swaths of code with minimal changes to it and it slowly became awfully painful to synchronize. The project can be thought of as a successor to my other C library, libxtnd.

You are supposed to import it as a git submodule and include the main source file directly everywhere you need it. Everything is declared "static". I have come to the conclusion that this style of C programming suits me the best, as it allows me to nearly forget about the mess that are header files.

The API is intentionally unstable, which allows for easy refactoring.

All development is done on Linux, but other POSIX-compatible operating systems should be supported as well. They have an extremely low priority, however, and I’m not testing them at all, with the exception of OpenBSD.

Contributing and Support

Use to report any bugs, request features, or submit pull requests. git send-email is tolerated. If you want to discuss the project, feel free to join me at ircs://, channel #dev.

Bitcoin donations are accepted at: 12r5uEWEgcHC46xd64tt3hHt9EUvYYDHe9


This software is released under the terms of the 0BSD license, the text of which is included within the package along with the list of authors.