Skip to main content

Pure-Python build ochestrator using CMake or Meson to configure+build via a single simple command.

Project description

DOI

Build Status Build status pypi versions PyPi Download stats

buildMC

A pure Python program that makes building a large, complicated project using CMake or Meson just a single, simple command.

Install

Prereqs:

  • Python ≥ 3.6
  • CMake ≥ 3.14 or Meson+Ninja
pip install buildmc

or to use latest development code

git clone https://github.com/scivision/buildmc

cd buildmc

pip install -e .

Usage

buildMC makes switching between compilers trivial. Also, building on native Windows and Windows Subsystem for Linux is detected and handled--the CMake or Meson cache is wiped to allow clean rebuild when switching without fuss.

Examples

Say you want to ensure a project builds with each of Visual Studio, GNU/GCC, Intel and Clang. This can be easily done by typing in the top-level of the project directory:

buildmc msvc

buildmc gnu

buildmc intel

buildmc clang

Each command independently builds and runs the user-configured tests using CMake or Meson. When switching between Windows and Linux (using WSL from Windows) buildMC detects the OS switch and wipes the build cache and rebuilds as needed.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

buildmc-0.6.0.tar.gz (6.6 kB view details)

Uploaded Source

File details

Details for the file buildmc-0.6.0.tar.gz.

File metadata

  • Download URL: buildmc-0.6.0.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for buildmc-0.6.0.tar.gz
Algorithm Hash digest
SHA256 8fb36a1896f05ab9b324d21f2329b6e2a992ce7b72b1f2558935d77b72872358
MD5 a2eeeacedf73f13a362a5507be87c5f1
BLAKE2b-256 1a3011a8a0d7339c76c57e51dca6f06db2a3b8f8d3b006f85663417b5053747f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page