Home / StarLet
ecosystem Libraries
StarLet
A small C library of OpenVMS-style building blocks: the common base of our packages.
| Version | 1.7.x (the latest tag v1.7.1; 1.7.2 in progress) |
|---|---|
| Status | Active development |
| Platforms | Linux, Windows (MinGW); x86-64 and ARMv8 |
| Licence | Apache License 2.0 |
| For whom | C developers who need logging, message catalogues, command line parsing and FAO. |
What it is
Portable C11. Modules: utility_routines (the $LOG log, $PUTMSG_FAO message catalogues, ASCIC strings, base64, CRC-32, option parsing, queues, patterns), avproto (a binary TLV protocol), cli_routines (DCL-style command line parsing) and starlet (counterparts of OpenVMS system services: FAO formatting, binary time). The return status follows the OpenVMS convention: the low bit means success.
Why
BroProxy, MSCP-Hub, AlphaEmu, yaVTERM, vHELP and the other packages depend on it.
Quick start Using it from CMake
add_subdirectory(external/utility_routines)
add_executable(my_app main.c)
target_link_libraries(my_app PRIVATE starlet) # the headers come with the target
Source: StarLet/README.md (a FetchContent variant is there too)
Download
Shipped as StarLet-<ident>.tar.gz.