BuildMe 🛠️
Another build system. A simple command runner thats it.
What is BuildMe 🤔️
Well this pretty much sums it up.
Why???
IDK. I saw this comic and decided that I want a build system of my own.
And,
- Makefile's are shit.
- Cmake is complicated
- Meson requires two dependencies (Meson and Ninja)
- Bazel, corporate BS
It does come with some feature.
- It is just command runner (Does not give an f about the file or it's mod time)
- v0.3.0 onwards, buildme does give an f about the file and it's mod times (times have changed)
- It's just python. Anything that works on python works on buildme script.
- you want a build script that has access to
pandas, well you can now have it.
- you want a build script that has access to
Docs 🧾️
- Install buildme
pip3 install git+https://github.com/Adwaith-Rajesh/buildme.git
OR
pip3 install buildme
- Create a
buildmescriptThe shebang is IMPORTANT (This thingy -> #!/bin/env buildme)
#!/bin/env buildme
from buildme import CommandRunner, target
cr = CommandRunner()
@target()
def foo(_, __):
print('This is the foo target')
@target()
def bar(_, __):
cr.run('echo this is from bar target')
@target(depends=['foo', 'bar'])
def all(_, __): pass
- Make it executable
$ ./buildme foo
This is the foo target
$ ./buildme bar
================================================================================
[CMD]: echo this is from bar target
this is from bar target
================================================================================
$ ./buildme all
This is the foo target
================================================================================
[CMD]: echo this is from bar target
this is from bar target
================================================================================
More docs can be found here: Docs
- Buildme
- Target
- CommandRunner
- Receiving Command line args
- Getting info about the target itself
- Dynamic 'creates'
- Combining Ideas
- Helper functions
Bye....
Metadata
Release files for buildme 0.3.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| buildme-0.3.3.tar.gz | 5.7 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| buildme-0.3.3-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Total release size: 12.2 kB
Release files / buildme-0.3.3.tar.gz
| Download URL | buildme-0.3.3.tar.gz |
|---|---|
| Size | 5.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b7cd8165c52d0f4077483fe24aa0bd2704e0e73dee5c2daf14b35a54b42f2a68
|
|
BLAKE2b-256 checksum How to use checksums |
fb8ead64e6862c26bda4aeba44c2641d930c08077391516f976fc53f6b402082
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.4
|
Release files / buildme-0.3.3-py2.py3-none-any.whl
| Download URL | buildme-0.3.3-py2.py3-none-any.whl |
|---|---|
| Size | 6.5 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
f62b7fd4054ebf2f186c811f0b6ab4d2aee8e043dff0bbc6d4757253d2a28934
|
|
BLAKE2b-256 checksum How to use checksums |
a2b73e15ee5f5a4b1963a86390faaca38813b8ae216c53bac6a38e8c247dec32
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.4
|
Security for buildme 0.3.3
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.