diff --git a/docs/about.markdown b/docs/about.markdown new file mode 100644 index 0000000..8b4e0b2 --- /dev/null +++ b/docs/about.markdown @@ -0,0 +1,18 @@ +--- +layout: page +title: About +permalink: /about/ +--- + +This is the base Jekyll theme. You can find out more info about customizing your Jekyll theme, as well as basic Jekyll usage documentation at [jekyllrb.com](https://jekyllrb.com/) + +You can find the source code for Minima at GitHub: +[jekyll][jekyll-organization] / +[minima](https://github.com/jekyll/minima) + +You can find the source code for Jekyll at GitHub: +[jekyll][jekyll-organization] / +[jekyll](https://github.com/jekyll/jekyll) + + +[jekyll-organization]: https://github.com/jekyll diff --git a/docs/examples.markdown b/docs/examples.markdown new file mode 100644 index 0000000..15d8d0b --- /dev/null +++ b/docs/examples.markdown @@ -0,0 +1,45 @@ +--- +layout: page +title: Examples +permalink: /examples/ +--- + +### Changing C++/C version + +Simple example changing C++ to version 20 and C standard to the version 11 + +```toml +[target.example] +type = "executable" +compile-features = [ "cxx_std_20", "c_std_11" ] +``` + +### Import from another Git repository + +Importing an existing project called Zydis to my project + +tag is optional but you can target any branch with it + +```toml +[fetch-content] +zydis = { git = "https://github.com/zyantific/zydis.git", tag = "v3.1.0" } + +[target.example] +type = "executable" +link-libraries = ["zydis"] +``` + +### Import from another folder + +Importing an existing project called Zydis to my project + +tag is optional but you can target any branch with it + +```toml +[fetch-content] +zydis = { git = "https://github.com/zyantific/zydis.git", tag = "v3.1.0" } + +[target.example] +type = "executable" +link-libraries = ["zydis"] +``` diff --git a/docs/usage.markdown b/docs/usage.markdown new file mode 100644 index 0000000..cd40dbd --- /dev/null +++ b/docs/usage.markdown @@ -0,0 +1,42 @@ +--- +layout: page +title: Usage +permalink: /usage/ +--- + +cmkr parses cmake.toml files (using toml11 by Toru Niina) at the project directory. A basic hello world format with the minimum required fields: + +```toml +[cmake] +minimum = "3.15" + +[project] +name = "app" +version = "0.1.0" + +[target.app] +type = "executable" +sources = ["src/main.cpp"] +``` + +**NOTE**: The documentation is currently a work-in-progress due to breaking changes since `0.1.4`. For examples you can check the [cmkr topic](https://github.com/topics/cmkr). + +The cmkr executable can be run from the command-line: + +``` +Usage: cmkr [arguments] +arguments: + init [executable|library|shared|static|interface] Starts a new project in the same directory. + gen Generates CMakeLists.txt file. + build Run cmake and build. + install Run cmake --install. Needs admin privileges. + clean Clean the build directory. + help Show help. + version Current cmkr version. +``` + +The build command invokes cmake and the default build-system on your platform (unless a generator is specified), it also accepts extra cmake build arguments: + +``` +cmkr build --config Release +``` \ No newline at end of file