Files
ibuild/README.md
2026-01-15 00:02:02 +01:00

24 lines
1.4 KiB
Markdown

# ibuild
A simple build system written in C. The project is incomplete and is not meant to be used by anyone. It is designed to work out-of-the-box on C/C++ projects. However, it has a Recursive Descent Parser and supports a very small DSL. The DSL is in the format of a very basic configuration file. As of now, there is no complex configuration support as well as cross-platform compatibility features, as this is only available in linux.
## Security Disclaimer
The project has not been battle-tested yet. I am not using as a daily driver yet, and when I do, I will conduct thorough testing by fuzzing the application continously for a period of time (likely a week).
I have also not reviewed the source code thoroughly yet, as this is not a Minimum Viable Product.
## How to use?
You either place the executable to your /usr/local/bin, or place it into your project root.
Then run `ibuild`, and it should build the binary.
## Configuration File
Below is a sample configuration file;
````
COMPILER_PATH = "/usr/bin/gcc"
SRC_DIR = "src" # Recursively discovers files here
SRC_FILES = ["src/main.c"] # Manual file specification is optional
TARGET_EXEC = "ibuild" # executable name
DEP_SEARCHER = "/usr/bin/gcc" # Default, no need to specify explicitly
DEP_SEARCHER_FLAGS = "-MM" # Default, no need to specify explicitly
VERSION = "0.0.1" # Can specify version here, which would be passed as a macro.
````