Skip to main content

embuild

Embuild is a tool for C/CMake static library management.

Check out this website for more details about available public libraries!

Installation

Prerequirements:

Install embuild: pip install -U embuild

Usage

List available public libraries

python -m embuild list

Create a project

python -m embuild create <PROJECT-NAME>

This creates:

  • <PROJECT-NAME> directory
  • CMakeLists.txt with a <PROJECT-NAME> library declaration
  • source subdirectory with <PROJECT-NAME>.h/.c files and CMakeLists.txt file
  • project.json embuild project file

Initialize current directory

python -m embuild init

This creates:

  • project.json embuild project file

Add libraries

python -m embuild add <LIB-1> .. <LIB-N>

This:

  • updates project.json with mentioned libraries
  • creates a library subdirectory
  • downloads relevant libraries and updates present ones
  • (re)generates the CMakeLists.txt in the subdirectory

Update libraries

python -m embuild update

This:

  • downloads/updates libraries according to current project.json libraries content
  • removes old libraries
  • (re)generates the CMakeLists.txt in the subdirectory

Run scripts

python -m embuild run <SCRIPT_NAME> {OPTIONAL PARAMS ...}

This:

  • runs a script (with optional parameters) defined as a dictionary in project.json scripts content

Library name

The library has three ways to be named:

  1. <library-name> (e.g. event-handler) - short name
  2. <user-name>/<library-name> (e.g. grzegorz-grzeda/cli) - long name
  3. <protocol>:<git-repository>/<library-name> - full name

1. Short name

This name is looked up in the embuild repository repository.json file.

2. Long name

This name is looked up in the GitHub service. The path is https://github.com/<user-name>/<repo-name>.git. This is a good fit for a private library if hosted on GitHub and the current computer is configured to establish a SSH connection,

3. Full name

This name is treated as a path to a custom git repository. This is a best fit for a private library. The actual name of the library in question is the last part of the repository path name.

Created by Grzegorz Grzęda. Distributed under MIT license

Metadata

Release files for embuild 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for embuild 1.1.0
File Size Uploaded Provenance
embuild-1.1.0.tar.gz 7.7 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for embuild 1.1.0
File Interpreter ABI Platform
embuild-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 15.0 kB

Release files / embuild-1.1.0.tar.gz

Download URL embuild-1.1.0.tar.gz
Size 7.7 kB
Tags Source
SHA-256 checksum
How to use checksums
f846241f72f7684275ab51afaefb5abf21f4a5a98b0fbb824b8a596e641fac33
BLAKE2b-256 checksum
How to use checksums
0ec2dc9c438d70041df7223afcc17a23a4b4cd7a4dc566467d4c2e2a11dae459
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.12

Release files / embuild-1.1.0-py3-none-any.whl

Download URL embuild-1.1.0-py3-none-any.whl
Size 7.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fdb7fa889fdfc802094334b1f9cc4db1f6d7caec2fea64dc2cf3b3d2001a43f0
BLAKE2b-256 checksum
How to use checksums
b8b83cb6e9407e0b1fb26c941ce12697a1a409f9ff9deaa8940ef4ffd67fd261
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.12

Security for embuild 1.1.0

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.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page