This program is no longer maintained but I have decided not to archive the repository. If you still wish to open issues or pull requests, that's fine, although I most likely won't respond to them. The last version (and commit) on the main branch most likely works enough for basic Cxx development, although I haven't tested anything.
Developed by SaphirDeFeu
Made to ease the creation of Cxx projects while providing flexible tooling, allowing for pratically the same control as GNU Make, while staying easy and quick to setup like Cargo.
All commands of TSMMake are available through the command line with the -h (alias. --help, help) flag.
TSMMake projects are as quick and easy as can be. One command and you're set!
Use tsmmake new <project_name> and TSMMake will create a new directory named project_name with pre-written config and code.
TSMMake will create a TSMMake.toml file in the root directory of the project, with default fields.
By default, the file looks like this upon project initialization :
[project]
name = "<project_name>"
version = "1.0.0"
lang = "cpp"
compiler = "g++"
compiler_flags = "-Wall"As such will be configured a default compiler g++ and includes compiler flags which can be tweaked to your desires.
You can modify the default fields by specifying them in a default.toml file in the same folder as where you installed the tsmmake binary.
For example, if the compiled binary is located at /usr/local/bin/tsmmake/tsmmake.bin : this means that you can add a default.toml file at /usr/local/bin/tsmmake/default.toml and it'll be picked up by the binary upon project creation.
This can allow you to create new TSMMake for C quickly and easily.
When you wrote your program, you can build your project with the command tsmmake build
This will build your source code into object files before linking them into a single executable file.
When compiling your program, TSMMake will use the compiler flags you set in your configuration file to customize the way the compiler will work.
To run your program quickly, you can build and run your project with the command tsmmake run
This both builds your source code and runs the resulting executable.
You can pass in arguments to your program by adding arguments after a double-dash, i.e. tsmmake run -- [args]
You can add a -i (alias. --include-deps) flag to a build/run command to compile code contained inside the include folder of your project.
This can be used to one-time compile user-defined libraries that aren't supposed to change often