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.
-
makefor linux only. -
C++17. -
g++orclangfor linux only. -
For Windows,
Visual Studio 2017orVisual Studio 2019.
Clone the repository to a local destination and make sure to fetch all dependencies.
git clone https://github.com/saad039/cusp
-
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 vs2017for Visual Studio 2017 orpremake5 vs2019for 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 solutions. 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. |
| cusp vs2017 | Generates visual studio 2017 solution files. |
| cusp vs2019 | Generates visual studio 2019 solution files. |
| cusp vscode | Generates tasks.json file for vscode. Press Ctrl+Shift+p inside vscode to select default build configuration. |
| cusp xcode | Generates xcode solution files for all projects and solution. |
| cusp build debug | Generates debug binaries from both makefiles and sln files. Note that cusp will use MSBuild to build the project if you are using Microsoft C++ Compiler |
| cusp build release | Generates release binaries from both makefiles and sln files. Note that cusp will use MSBuild to build the project if you are using Microsoft C++ Compiler |
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 at msaadahmed039@gmail.com