tbuild/README.md
Slendi d3e4c155ce
Rename git.templeos.me -> git.xslendi.xyz
Signed-off-by: Slendi <slendi@socopon.com>
2023-06-09 21:11:15 +03:00

75 lines
1.8 KiB
Markdown

# TBuild
TBuild is a build system for TempleOS and ZealOS. It features automatic code
conversion for ZealOS and dependency management.
## Building and installing
To build, simply run `make`. After it has finished compiling, you can run `make install` to install the resulting binary into your system.
## Usage
```
Usage: tbuild [command]
Commands:
* init|i [path=.] - Setup a new project.
* build|. [--zeal|-z|-Z] - Build project in current working directory.
* clean - Clean output code in current working directory.
To see manifest file usage, check out man tbuild(1)
```
## Manifest file
The manifest file is a file in the TOML format which contains metadata about
your project. There are two main sections: `General` and `Dependencies`.
### The General section
- Name: str - The name of the project.
- Author: str - The name of the author.
- Version: str - The project's version.
### The Dependencies section
This section follows a format for each dependency:
```
<name> = "<git url>"
```
So, for example, if you wish to add the ac97 loadable driver into your project,
you can add an entry like such:
```
[Dependencies]
ac97 = "https://git.xslendi.xyz/slendi/ac97.git"
```
And if you wish to be in a `AC97` directory instead:
```
[Dependencies]
AC97 = "https://git.xslendi.xyz/slendi/ac97.git"
```
The dependencies get pulled in and updated at build time.
## Scripts
You can run Python scripts after your files are placed inside the `build`
directory by creating a `scripts` folder in the root of your project.
It's important to note that scripts DO NOT respect the project's path. As such,
it is highly recommended to use something like this:
```python
import os
dir_path = os.path.dirname(os.path.realpath(__file__)) + '/..'
```
It is also important to note that you can have as many subdirectories as you
wish.