An open API service indexing awesome lists of open source software.

https://github.com/martinrixham/cheesemake

It is not meant to be taken literally, it refers to any manufacturers of dairy products.
https://github.com/martinrixham/cheesemake

bash build-tool c

Last synced: 9 months ago
JSON representation

It is not meant to be taken literally, it refers to any manufacturers of dairy products.

Awesome Lists containing this project

README

          

# Cheesemake

Cheesemake is a declarative build tool for C/C++ written in Bash.
It comes with plugins for serveral static and dynamic validation tools such as cppcheck and valgrind as well as the ability to run custom plugins.
Read the [article](https://www.infoq.com/articles/cheesemake-c-build-system).

### Dependencies

* Bash
* jq
* pkg-config
* OpenSSL

### Install

I don't intend to provide a portable installation script but you can do something like this:

git clone https://github.com/martinrixham/cheesemake.git
cp -r cheesemake /opt
ln -s /opt/cheesemake/cheesemake /usr/local/bin/cmk

### Run
# cmk --help
usage: cmk [clean]

Cheesemake runs ALL phases in order up to the one specified.

Phases:
validate Run plugins such as static analysis tools.
compile Compile sources in the src directory and output them to build/src.
test Compile and run tests in the test directory.
package Create a binary in build/bin or build/lib.
verify Run plugins such as dynamic analysis tools.
run Run build/bin/.

Do `cmk ` in the root directory of a project containing a `recipe.json` file.

### Syntax

Please refer to the [recipe](example/recipe.json) in the example.