This commit is contained in:
Radovan Bast
2015-06-01 17:54:30 +02:00
parent 8e137973a2
commit f9b0527738
4 changed files with 70 additions and 3 deletions

41
doc/about.rst Normal file
View File

@ -0,0 +1,41 @@
About Autocmake
===============
CMake typically generates Makefiles based on CMakeLists.txt files. Autocmake
generates and assembles CMake files based on lightweight cfg-files.
CMake cons
----------
- Complexity
- Yet another thing to learn: requires learning and training
- Typically many files instead of one file
- Documentation ("Which file do I need to edit to achieve X?")
CMake pros
----------
- Makes it possible and relatively easy to download, configure, build, install, and link external modules
- Cross-platform system- and library-discovery
- CTest uses a Makefile (possible to run tests with -jN)
Motivation to create a CMake framework library
----------------------------------------------
- Simplify CMake code transfer (scientific projects typically have very similar requirements)
- FC, CC, CXX
- Compiler flags
- Front-end script (setup.py)
- MPI, OMP, CUDA
- Math libraries
- Make it easy for people who know CMake well to create well defined configurations
- Make it easy for people who do not know CMake to get started in minutes
- Philosophy
- Explicit is better than implicit
- Convention over configuration
- Well documented set of plug-ins