References

[1]

An introduction to modern CMake. https://cliutils.gitlab.io/modern-cmake/. Accessed: 11-2-2023.

[2]

Cinch. https://github.com/laristra/cinch. Accessed: 11-1-2023.

[3]

Directory layout and source conventions. https://gcc.gnu.org/onlinedocs/libstdc++/manual/source_organization.html. Accessed: 11-3-2023.

[4]

How to structure your project. https://cliutils.gitlab.io/modern-cmake/chapters/basics/structure.html. Accessed: 11-3-2023.

[5]

Importing and exporting guide. https://cmake.org/cmake/help/latest/guide/importing-exporting/index.html. Accessed: 11-9-2023.

[6]

It's time to do CMake right. https://pabloariasal.github.io/2018/02/19/its-time-to-do-cmake-right/. Accessed: 11-2-2023.

[7]

Minimal CMake Example. https://github.com/krux02/minimal_cmake_example. Accessed: 11-2-2023.

[8]

Samples fo learning modern cmake. https://github.com/toeb/moderncmake. Accessed: 11-2-2023.

[9]

Semantic versioning 2.0.0. https://semver.org/. Accessed: 11-10-2023.

[10]

Cmake-get. https://github.com/pfultz2/cmake-get. Accessed: 11-2-2023.

[11]

Cmake-init. https://github.com/friendlyanon/cmake-init. Accessed: 11-2-2023.

[12]

Cmake_template. https://github.com/cpp-best-practices/cmake_template. Accessed: 11-1-2023.

[13]

Cpp-boilerplate. https://github.com/Lectem/cpp-boilerplate. Accessed: 11-1-2023.

[14]

Cpp-lib-template. https://github.com/pananton/cpp-lib-template. Accessed: 11-2-2023.

[15]

Cppbase. https://github.com/kartikkumar/cppbase. Accessed: 11-1-2023.

[16]

Moderncpp-project-template. https://github.com/madduci/moderncpp-project-template. Accessed: 11-1-2023.

[17]

Pacakge-example. https://github.com/forexample/package-example. Accessed: 11-1-2023.

[18]

Project_options. https://github.com/aminya/project_options. Accessed: 11-2-2023.

[19]

BLT. https://github.com/llnl/blt. Accessed: 11-1-2023.

[20]

CMake. https://cmake.org/. Accessed: 11-2-2023.

[21]

CMake++. https://github.com/toeb/cmakepp. Accessed: 11-1-2023.

[22]

CPM.cmake. https://github.com/cpm-cmake/CPM.cmake. Accessed: 11-2-2023.

[23]

CPM. https://github.com/iauns/cpm. Accessed: 11-2-2023.

[24]

FindPython. https://cmake.org/cmake/help/latest/module/FindPython.html. Accessed: 11-3-2023.

[25]

Izzy's eXtension Modules. https://github.com/ixm-one/legacy. Accessed: 11-2-2023.

[26]

JAWS. https://github.com/DevSolar/jaws. Accessed: 11-1-2023.

[27]

Radovan Bast, Roberto Di Remigio, and Jonas Juselius. Autocmake. February 2020. URL: https://doi.org/10.5281/zenodo.3634941, doi:10.5281/zenodo.3634941.

[28]

Radovan Bast and Roberto Di Remigio. CMake cookbook. Packt Publishing Ltd., Birmingham, UK, 2018.

[29]

Marcus D. Hanwell. CMake superbuilds and Git submodules. https://www.kitware.com/cmake-superbuilds-git-submodules/, 2017. Accessed: 11-2-2023.

[30]

Charles R. Harris, K. Jarrod Millman, Stéfan J. van der Walt, Ralf Gommers, Pauli Virtanen, David Cournapeau, Eric Wieser, Julian Taylor, Sebastian Berg, Nathaniel J. Smith, Robert Kern, Matti Picus, Stephan Hoyer, Marten H. van Kerkwijk, Matthew Brett, Allan Haldane, Jaime Fernández del Río, Mark Wiebe, Pearu Peterson, Pierre Gérard-Marchant, Kevin Sheppard, Tyler Reddy, Warren Weckesser, Hameer Abbasi, Christoph Gohlke, and Travis E. Oliphant. Array programming with NumPy. Nature, 585(7825):357–362, September 2020. URL: https://doi.org/10.1038/s41586-020-2649-2, doi:10.1038/s41586-020-2649-2.

[31]

Wenzel Jakob, Jason Rhinelander, and Dean Moldovan. Pybind11 – seamless operability between C++11 and Python. 2017. https://github.com/pybind/pybind11.

[32]

Boris Kolpackov. Canonical project structure. https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p1204r0.html, 2018. Accessed: 11-3-2023.