myxce/src/lib/CLAUDE.md

30 lines
903 B
Markdown

# XCE Shared Library (libxce)
## Overview
Shared C library providing common utilities, data structures, and IPC primitives used by the controller, worker, and scheduler daemons.
## Build
```bash
# From workspace root
nix develop
meson build && ninja -C build
```
## Architecture
- Produces `libxce.a` (static) and/or `libxce.so` (shared)
- Linked by all C/C++ system components: controller, worker, scheduler
- Public headers exposed via `src/include/xce/`
- Test suite in `src/lib/testsuite/`
## Conventions
- C standard: C99 or later
- Format with `clang-format` (config at repo root if present)
- All public API headers go in `src/include/xce/` — not in `src/lib/`
- Implementation files stay in `src/lib/`
## Key Files
- `src/include/xce/` — Public header files consumed by all components
- `src/lib/testsuite/` — Library unit tests
## See Also
- Root guidelines: `/workspace/CLAUDE.md`