133d722a9Sopenharmony_ci{{#title CMake — Rust ♡ C++}} 233d722a9Sopenharmony_ci# CMake 333d722a9Sopenharmony_ci 433d722a9Sopenharmony_ciThere is not an officially endorsed CMake setup for CXX, but a few developers 533d722a9Sopenharmony_cihave shared one that they got working. You can try one of these as a starting 633d722a9Sopenharmony_cipoint. If you feel that you have arrived at a CMake setup that is superior to 733d722a9Sopenharmony_ciwhat is available in these links, feel free to make a PR adding it to this list. 833d722a9Sopenharmony_ci 933d722a9Sopenharmony_ci<br> 1033d722a9Sopenharmony_ci 1133d722a9Sopenharmony_ci--- 1233d722a9Sopenharmony_ci 1333d722a9Sopenharmony_ci- **<https://github.com/XiangpengHao/cxx-cmake-example>** 1433d722a9Sopenharmony_ci 1533d722a9Sopenharmony_ci - Supports cross-language link time optimization (LTO) 1633d722a9Sopenharmony_ci 1733d722a9Sopenharmony_ci--- 1833d722a9Sopenharmony_ci 1933d722a9Sopenharmony_ci- **<https://github.com/david-cattermole/cxx-demo-example>** 2033d722a9Sopenharmony_ci 2133d722a9Sopenharmony_ci - Includes a cbindgen component 2233d722a9Sopenharmony_ci - Tested on Windows 10 with MSVC, and on Linux 2333d722a9Sopenharmony_ci 2433d722a9Sopenharmony_ci--- 2533d722a9Sopenharmony_ci 2633d722a9Sopenharmony_ci- **<https://github.com/trondhe/rusty_cmake>** 2733d722a9Sopenharmony_ci 2833d722a9Sopenharmony_ci - Alias target that can be linked into a C++ project 2933d722a9Sopenharmony_ci - Tested on Windows 10 with GNU target, and on Linux 3033d722a9Sopenharmony_ci 3133d722a9Sopenharmony_ci--- 3233d722a9Sopenharmony_ci 3333d722a9Sopenharmony_ci- **<https://github.com/geekbrother/cxx-corrosion-cmake>** 3433d722a9Sopenharmony_ci 3533d722a9Sopenharmony_ci - Improved rusty_cmake CMake file to use modern C++ 3633d722a9Sopenharmony_ci - Rich examples of using different primitive types and Rust's Result return to C++ 3733d722a9Sopenharmony_ci - MacOS and Linux only 3833d722a9Sopenharmony_ci 3933d722a9Sopenharmony_ci--- 4033d722a9Sopenharmony_ci 4133d722a9Sopenharmony_ci- **<https://github.com/paandahl/cpp-with-rust>** 4233d722a9Sopenharmony_ci 4333d722a9Sopenharmony_ci - Same blobstore example as the official demo, but inverted languages 4433d722a9Sopenharmony_ci - Minimal CMake configuration 4533d722a9Sopenharmony_ci - Tested on Linux, macOS, and Windows 4633d722a9Sopenharmony_ci 4733d722a9Sopenharmony_ci--- 48