Skip to main content

logo

Make Building C as Simple as Pie

Mekpie is an opinionated build system for small scale C projects. The core premise of Mekpie is that you should not be spending time worrying about Make files, compiler arguments, or build times, when working on a small C projects. By enforcing a simple directory structure and always providing a clean build, Mekpie saves you time and effort. For added convenience Mekpie takes notes from tools like Rust's cargo and Node's npm and provides options for building, running, cleaning, and testing your current project.

Mekpie is a small scale project and is not supposed to replace tools like CMake or provide any sort of package management capabilities. Use Mekpie when the alternative is a shoddy Make file or manually compiling.

Currently Mekpie supports the gcc, clang, avr-gcc, and emscripten compilers, as well as allows users to write custom compiler configurations.

Installing

Mekpie is a python package. Use pip to install it!

$ pip install mekpie

Getting Started

Create a new project by running mekpie new. Mekpie will walk you through the configuration

$ mekpie new "project-name"
┌ Configuring mekpie...
│ Please provide a name for your project (default project-name):
│ Selected project-name.
│ Mekpie supports the following c compilers, please select one (compilers must be installed seperately):
│     - gcc_clang   for use with the gcc or clang compiler
│     - emscripten  for use with the emscripten c to js compiler
│     - avr_gcc     for use with avr-gcc and avrdude
│ Please select a cc (default gcc_clang):
│ Selected gcc_clang.
│ ┌ Configuring gcc_clang...
│ │ Please select a compiler command (default cc):
│ │ Selected cc.
│ │ Please select a debug command (default lldb):
│ │ Selected lldb.
│ └ gcc_clang configured!
└ mekpie configured!
project-name created successfully!

Then navigate to the project directory and run

$ mekpie run
Project succesfully cleaned.
Project succesfully built. (0.060s)
Hello, World!

That's it!

Read More

Contact

Feel free to send be bug reports or feature requests. If you are interested in my other work, checkout my website.

Email ejrbuss@gmail.com

Metadata

Release files for mekpie 0.1.11

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

Source distribution (sdist)

Source distribution for mekpie 0.1.11
File Size Uploaded
mekpie-0.1.11.tar.gz 15.4 kB Details

Built distribution (wheel)

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

Total release size: 35.7 kB

Release files / mekpie-0.1.11.tar.gz

Download URL mekpie-0.1.11.tar.gz
Size 15.4 kB
Tags Source
SHA-256 checksum
How to use checksums
b30016f37c3dc2b00e7b6ae7cb66621cf4c5fc1f2f9f819de9fb60d703b39da0
BLAKE2b-256 checksum
How to use checksums
06f60fb036bc340c0596e8927c6fe457fd17e2f43b4392c9a2aee8e014a42d26
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.7

Release files / mekpie-0.1.11-py3-none-any.whl

Download URL mekpie-0.1.11-py3-none-any.whl
Size 20.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
19577a6fbfc8b32e1f137b461291417ea6f99910b23bbb6d454b1ce17b86e16f
BLAKE2b-256 checksum
How to use checksums
05e64b9486d609115e8f9766d7bdd062e8aac657e6a09a70ea46ab967f2c622a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.7

Release history Release notifications | RSS feed

This release

0.1.11 This release

2 release files

0.1.10

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

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