https://github.com/gaultier/c
A diverse collection of useful (to me!) software written in C. Memory profiling, http server, editor, crash reporter, clang plugin, torrent client, etc
https://github.com/gaultier/c
c
Last synced: 3 months ago
JSON representation
A diverse collection of useful (to me!) software written in C. Memory profiling, http server, editor, crash reporter, clang plugin, torrent client, etc
- Host: GitHub
- URL: https://github.com/gaultier/c
- Owner: gaultier
- Created: 2022-05-20T09:29:20.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2025-02-28T09:30:06.000Z (over 1 year ago)
- Last Synced: 2025-10-14T15:43:21.888Z (8 months ago)
- Topics: c
- Language: C
- Homepage:
- Size: 1.62 MB
- Stars: 18
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# C tools
A diverse collection of useful (to me!) software written in C. Memory profiling, http server, editor, crash reporter, clang plugin, torrent client, etc.
*This is experimental code. Probably don't use it in production!*
## Quick start
*Make sure you have the git submodules locally: git submodule update --init --recursive*
Requirements: make, a C99 compiler.
```sh
$ ./build_vendors.sh
$ ./build_all.sh
```
## Organisation
Each subdirectory is a separate project. A project only depends on the common utility header `./pg/pg.h` and perhaps some vendored libraries under `vendor/`.
Third party libraries are added as a git submodule at the root under `vendor/` so: `git submodule add https://github.com/curl/curl.git vendor/curl`.
Recursive submodules or submodules under subdirectories are avoided.
Submodules are then built from source in `./build_vendors.sh` to control exactly the build flags and feature flags. E.g. libcurl is statically built without most features with a custom SSL backend.
Static linking, C99, posix tools and not depending on what's installed in the current environment or OS specific APIs are highly preferred (but there are exceptions).
## LICENSE
BSD-3