Stoat API C library
- C 96.6%
- Roff 2.6%
- Makefile 0.8%
| examples | noop.c: add example | |
| .gitignore | .gitignore: add .env | |
| cjson.c | cjson.c cjson.h: new | |
| cjson.h | cjson.c cjson.h: new | |
| ermine.c | ermine.c: add dbg() prints | |
| ermine.h | ermine.h libermine.3: callback definitions | |
| libermine.3 | ermine.h libermine.3: callback definitions | |
| LICENSE | LICENSE: clarify cJSON license | |
| makefile | README.md makefile: add Windows NMake support | |
| README.md | README.md makefile: add Windows NMake support | |
Ermine
Ermine is a minimal C99 API-level library for making Stoat bots. The only external dependency is libcurl. It is dual licensed as Public Domain and 0BSD. The internal dependency cJSON is MIT licensed.
Using
- Examine the
makefileand note variables you want to override. - Run
maketo build, ormake VARIABLE=VALUEto override a variable.make clean allwill run the clean target, then the default. - Run
make installto install it to your system. - In your build system, make sure that the install directories are properly
added, and that
-lermine -lcurlis added to the linker commandline.
Windows
On Windows, certain variables are required to be overridden.
- CFLAGS should have
/Ipath/to/curl/include - RM should be
del - OBJEXT should be
.obj - LIBEXT should be
.libIdeas on portable ways to (semi?) automatically do this are welcome.
Note: no specific make is required, this makefile works with GNU, BSD, NMake, and POSIX make.
Minimum supported environments
Systems
- OpenBSD 7.8
- Cygwin 3.7.0 (Windows 11 26100)
- Windows 11 26100
Compilers
- Clang 19.1.7
- GCC 15.2.0
- Visual Studio 2022 (cl.exe 19.44.35219 for x86)
Dependencies
- libcurl 8.15.0