A simple and easy to use command line build tool for C++ based on premake
-
Download and add Premake 5.0 to your system's path variable.
-
make
for linux only. -
C++17
. -
g++
orclang
for linux only. -
For Windows,
Visual Studio 2017
orVisual Studio 2019
.
Clone the repository to a local destination and make sure to fetch all dependencies.
git clone --recursive https://github.com/saad039/cusp
Make sure that you set the default spdlog's eol in cusp/dependencies/spdlog/include/spdlog/tweakme.h
from #define SPDLOG_EOL ";-)\n"
to #define SPDLOG_EOL ""
-
On your console, enter
premake5 gmake
-
Then
make config=release
-
From
/bin/cusp/Release/
directory, copy cusp binary to a location inside your system's path variable.
-
Open command prompt and enter
premake5 vs2017
for Visual Studio 2017 orpremake5 vs2019
for Visual Studio 2019 -
Build the solution in release mode.
-
From
/bin/cusp/Release/
, copy cusp binary to a location inside your system's path variable.
Commands | Actions |
---|---|
cusp init | Creates a new solution in the present working directory. |
cusp add projectName header head.h or head.hpp |
Adds head.h/hpp header file into the project projectName under your solution directory. |
cusp add projectName src src.cc or src.cpp |
Adds src.cc/cpp source file into the project projectName under your solution directory. |
cusp add projectName class className |
Adds className.h and className.cpp header and source files into the project projectName under your solution directory. |
cusp update | Regenerates premake5.lua for all projects and solution. This should be used if changes were made to cusp.json manually. Note that any changes made to premake5.lua files manually will be lost. |
cusp make | Generates makefiles for all projects and solution. |
cusp vs2015 | Generates visual studio 2015 solution files for all projects and solution. |
cusp vs2017 | Generates visual studio 2015 solution files for all projects and solution. |
cusp vs2019 | Generates visual studio 2015 solution files for all projects and solution. |
cusp xcode | Generates xcode solution files for all projects and solution. |
cusp build debug | Generates debug binaries from makefiles only. |
cusp build release | Generates release binaries from makefiles only. |
This is a hobby project of mine. If you find any bug or want to contribute, please open a pull request.
You can email me on msaadahmed039@gmail.com