Update README.md

This commit is contained in:
2026-08-29 04:19:09 +02:00
parent 330c9c863a
commit 1ae2469427

View File

@@ -45,38 +45,6 @@ make debug
Your compiled executable will be located in the `output/` directory, named `<your_folder_name>_00.000.00.0000` (or whatever the current version string is).
---
## Make Targets Overview
Here is a detailed breakdown of every command available in this Makefile, what it does, and when to use it.
| Target | Description & Use Case |
| --- | --- |
| `make` / `make help` | **Behavior:** Prints a help message with available commands.<br>
<br>**When to use:** When you need a quick reminder of the available targets. |
| `make init` | **Behavior:** Scaffolds the project directories (`source_code`, `includes`, `config`, `output`) and creates base tracker files.<br>
<br>**When to use:** Only once, at the very beginning of a new project. |
| `make synch` | **Behavior:** Searches the project for `.c` and `.h` files and writes their paths to `config/source_code_list` and `config/header_list`.<br>
<br>**When to use:** Every time you create a new file, delete a file, or rename a file. (You do *not* need to run this if you only edited the contents of an existing file). |
| `make debug` | **Behavior:** Compiles the project incrementally using `DEBUG_FLAGS` (`-g3`, `-O0`, Undefined Behavior Sanitizer).<br>
<br>**When to use:** During active development. This build includes debug symbols for `gdb`, disables optimization for accurate stepping, and catches undefined behavior at runtime. |
| `make fast` | **Behavior:** Compiles the project incrementally using `RELEASE_FLAGS` (`-O2`, `NDEBUG`) **without** bumping the project version.<br>
<br>**When to use:** When you want to test the performance of the optimized build locally, but you aren't ready to officially "release" a new version yet. |
| `make release` | **Behavior:** Bumps the project version using a date/time stamp (Format: `_YY.DAY.HH.MMSS`), saves it to `config/version`, and compiles the project using `RELEASE_FLAGS`.<br>
<br>**When to use:** When your code is tested, stable, and ready to be packaged or deployed. |
| `make clean` | **Behavior:** Deletes the `output/` directory, removing all compiled object files (`.o`), dependency files (`.d`), and executables.<br>
<br>**When to use:** When you want a completely fresh build, or if you change compiler flags in the Makefile and need to force a full recompilation. |
---
## Project Structure
After running `make init` and building, your project will look like this: