Builder with plugin system
Project description
dogebuild
General purpose build manager mainly designed to build C++ projects which uses directed acyclic graph (DAG) to manage tasks dependencies.
Install
pip install dogebuild
How to use
Dogebuild uses dogefile.py
to describe project structure and task DAG.
An example of dogefile.py
:
from dogebuild import make_mode, task
make_mode()
@task
def task1():
print("task1")
@task()
def task2():
print("task2")
@task(
aliases=["Task 3 verbose name"], depends=["task1", "task2"],
)
def task3():
print("task3")
@task(depends=["Task 3 verbose name"], aliases=["build"])
def task4():
print("task4")
To run task simply pass task name as argument to doge script.
doge build
will run build
task and all dependencies.
You can also run multiple tasks: doge task1 task2
.
For more advanced use see plugins section.
Plugins
Plugins allow to hide low-level mechanics of build from user. See how to use plugins in plugin documentation.
Language plugins:
C/C++
- dogebuild-c - a C/C++ build plugin
Other plugins
Protobuf
- dogebuild-protobuf - a protobuf plugin
Tex plugin
- dogebuild-tex - a Tex plugin
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
dogebuild-0.3.3.post1.tar.gz
(11.1 kB
view details)
File details
Details for the file dogebuild-0.3.3.post1.tar.gz
.
File metadata
- Download URL: dogebuild-0.3.3.post1.tar.gz
- Upload date:
- Size: 11.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e07ce68d9d43e475c10d8beaa61c97e3a31e6f5848c657f12262654b64d35036 |
|
MD5 | 5999fe8b4da89b37e7a18c3b71246b06 |
|
BLAKE2b-256 | 8086340de2d9b6a2e880b04746671e65afebab98bc42a9dc131d50c25339bdde |