====== libflint ====== [[https://git.burkey.co/eburk/libflint|libflint]] is a library of common C data structures and algorithms designed to be as agnostic as possible for its users. It is, essentially, my personal library of reusable C code. ===== Building ===== ''%%libflint%%'' requires Cmake to be built. It can then be built using either ''%%cmake%%'' or ''%%make%%'' with the provided build files. The ''%%Makefile%%'' is a wrapper around Cmake for Makefile compatibility. ==== Cmake ==== # If libflint is in ./lib/libflint add_subdirectory(lib/libflint) # when building target... target_include_directories(${TARGET} PRIVATE lib/libflint/include) target_link_libraries(${TARGET} PRIVATE flint ) ===== Requirements ===== ==== Linux ==== Requires ''%%libbsd%%''. This should be available on all major Linux distros. ==== macOS, OpenBSD, FreeBSD ==== Requires no extra dependencies ===== Memory Management ===== The parts of this library that create data structures pass all responsibility of memory management to the user. This is clearly documented in the individual module’s documentation. ===== Why the name ‘libflint’? ===== ''%%libflint%%'' is named after my dog Flint, who passed away in 2021. I miss you buddy. {{flinty.jpg|flint}}