Compare commits

...

2 Commits

Author SHA1 Message Date
portersky 10c78343fe docs: fix AGENTS.md project info and no-em-dash rule
Remove stale cuber references and unrelated static library
section. Add no-em-dash rule and apply it throughout.
2026-05-10 01:03:32 +02:00
portersky a457b5351a Add LICENSE 2026-05-10 00:57:59 +02:00
3 changed files with 29 additions and 16 deletions
+7 -15
View File
@@ -2,7 +2,8 @@
## Project Overview
`cuber` is an OpenGL 3D renderer with multiple scenes.
`ctdd` is a C23 project wired for test-driven development using
Unity and CMock.
## Build System
@@ -27,12 +28,12 @@ Build:
ninja -C build
```
Run tests full Unity output, colored:
Run tests (full Unity output, colored):
```sh
ninja -C build check
```
Run tests CTest summary only:
Run tests (CTest summary only):
```sh
ninja -C build test
```
@@ -64,16 +65,6 @@ To add a new dependency:
2. Add `find_package(<name> REQUIRED)` to `CMakeLists.txt`
3. Link with `<name>::<name>` in `target_link_libraries()`
### Static Libraries
The project is split into static libraries:
- **`cbt_opengl`** — OpenGL abstraction and window management (window,
context, buffer, texture, vao, shader, descriptor)
- **`cbt_scene`** — Base scene class
- **`scenes_cube`** — Spinning cube scene implementation
- **`scenes_sphere`** — Cube-to-sphere mapped mesh with diffuse lighting
### CMake Module Path
`deps/` is added to `CMAKE_MODULE_PATH` so `find_package()` resolves
@@ -145,7 +136,8 @@ in HH:MM:SS.mmm format, updating every 10ms with color output.
`-` or numbered lists, fenced code blocks with language hints
(```` ```cpp ````, ```` ```sh ````).
- Keep examples concise, up-to-date, and self-documenting.
- Each shell command gets its own fenced code block — do **not** combine
- Do not use em dashes (``). Use a colon or rewrite the sentence.
- Each shell command gets its own fenced code block; do **not** combine
multiple commands into one block. Precede each block with a short
plain-text label describing what the command does:
@@ -162,7 +154,7 @@ in HH:MM:SS.mmm format, updating every 10ms with color output.
ctdd/
str.h / str.c Pure string utilities (no dependencies)
report.h / report.c Formats a value and calls log_message()
logger.h / logger.c Real log_message printf to stdout
logger.h / logger.c Real log_message via printf to stdout
main.c Entry point
tests/
test_str.c Unity state-based tests for ctdd/str
+21
View File
@@ -0,0 +1,21 @@
MIT License
Copyright (c) 2026 PorterSky
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
+1 -1
View File
@@ -59,7 +59,7 @@ ninja -C build-cov coverage
Open `build-cov/coverage/index.html` in a browser to view results.
Only `ctdd/` source files are measured Unity, CMock, and generated
Only `ctdd/` source files are measured. Unity, CMock, and generated
mock files are excluded. Requires GCC or Clang with gcov support, and
`gcovr` on `PATH`.