@@ -64,7 +64,8 @@ latest release from [GitHub][github_releases].
6464
6565 * __ General__
6666
67- * By default everything gets built, i.e. tests and examples.
67+ * By default everything gets built, i.e. tests, examples and all dependencies which are not
68+ found on the system.
6869
6970 * Use ` -DCMAKE_BUILD_TYPE=<VALUE> ` to specify general compiler flags.
7071
@@ -75,33 +76,54 @@ latest release from [GitHub][github_releases].
7576 | `RelWithDebInfo` | `-O2 -g -DNDEBUG` |
7677 | `MinSizeRel` | `-Os -DNDEBUG` |
7778
78- * To enable profiling support, you need to specify ` -Dpfasst_WITH_GCC_PROF=ON ` and have the GNU compiler selected.
79+ * To enable profiling support, you need to specify ` -Dpfasst_WITH_GCC_PROF=ON ` and have the GNU
80+ compiler selected.
7981 When compiling with _ Clang_ this option is obsolete as profiling with _ Clang_ is not supported.
8082
81- * Users on Linux systems with the _ Clang_ compiler and a working installation of LLVM's \em libc++ library may
82- want to activate the usage of that by specifying ` -Dpfasst_DISABLE_LIBCXX=OFF ` .
83+ * Users on Linux systems with the _ Clang_ compiler and a working installation of LLVM's
84+ \em libc++ library may want to activate the usage of that by specifying
85+ ` -Dpfasst_DISABLE_LIBCXX=OFF ` .
86+ As libc++ is highly experimental on non-Darwin systems, this is a very exotic option.
87+
88+ * There are places in the code (mainly examples) that need a random number generator (RNG).
89+ By default, ` -Dpfasst_DEFAULT_RAND_SEED=ON ` is set and the seed for the RNGs is set to ` 42 ` .
90+ To overwrite this behaviour, set ` -Dpfasst_DEFAULT_RAND_SEED=OFF ` and
91+ ` -Dpfasst_RANDOM_SEED=<YOUR_VALUE> ` .
92+
93+ * __ Dependencies__
94+
95+ * __ Boost__
96+ To specify the root path to the Boost installation to be used, add ` -DBOOST_ROOT=<PATH> ` .
97+ The root path should contain the directory ` lib ` or ` lib64 ` with the compiled Boost libraries
98+ as well as ` include/boost ` with the Boost header files.
99+
100+ * __ GMock__
101+ In case there is the Google Testing and Mocking framework installed on the system in a
102+ non-standard path, add ` -DGMOCK_ROOT=<PATH> ` to specify the root path to the framework.
83103
84104 * __ MPI__
85105
86106 * To enable MPI, please specify ` -Dpfasst_WITH_MPI=ON ` .
107+ To avoid a warning and potential undefined behaviour, also set ` -DCMAKE_C_COMPILER ` and
108+ ` -DCMAKE_CXX_COMPILER ` to the MPI compiler wrappers.
87109
88110 * __ Test Suite__
89111
90- * Deactivate building of the test suite by passing ` -Dpfasst_BUILD_TESTS=OFF ` to the _ CMake_ command line (not
91- recommended).
112+ * Deactivate building of the test suite by passing ` -Dpfasst_BUILD_TESTS=OFF ` to the _ CMake_
113+ command line (not recommended).
92114
93115 * __ Examples__
94116
95- * Deactivate building of the example programms by passing ` -Dpfasst_BUILD_EXAMPLES=OFF ` to the _ CMake _ command
96- line.
117+ * Deactivate building of the example programms by passing ` -Dpfasst_BUILD_EXAMPLES=OFF ` to the
118+ _ CMake _ command line.
97119
98- * Add compiled example programs to the ` install ` target by passing ` -Dpfasst_INSTALL_EXAMPLES=ON ` to the _ CMake _
99- command line (by default, they will not get installed).
120+ * Add compiled example programs to the ` install ` target by passing ` -Dpfasst_INSTALL_EXAMPLES=ON `
121+ to the _ CMake _ command line (by default, they will not get installed).
100122
101123 * __ Installing (optional)__
102124
103- * Use ` -DCMAKE_INSTALL_PREFIX=<PREFIX> ` to specify the prefix for installing the headers and optional compiled
104- examples.
125+ * Use ` -DCMAKE_INSTALL_PREFIX=<PREFIX> ` to specify the prefix for installing the headers and
126+ optional compiled examples.
105127
106128 By default, ` <PREFIX> ` is ` /usr/local ` on Linux systems.
107129
@@ -110,15 +132,17 @@ latest release from [GitHub][github_releases].
110132 * In case you also want to install the compiled example programs on your system, specify
111133 ` -Dpfasst_INSTALL_EXAMPLES=ON ` .
112134
113- * For example, to build a release version with _ Clang_ on a Linux system without the examples, the call to
114- _ CMake_ looks like:
135+ * For example, to build a release version with _ Clang_ on a Linux system without the examples
136+ (i.e. only the core test suite and dependencies therefor), the call to _ CMake_ looks like:
115137
116- cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -Dpfasst_BUILD_EXAMPLES=OFF ..
138+ cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=clang \
139+ -DCMAKE_CXX_COMPILER=clang++ -Dpfasst_BUILD_EXAMPLES=OFF ..
117140
118- * A full debug build on a Linux system with GCC and the desire to install everything to ` /home/<USER> ` , call _ CMake _
119- with:
141+ * For a full debug build with enabled profiling on a Linux system with GCC and the desire to
142+ install everything to ` /home/<USER> ` , call _ CMake _ with:
120143
121- cmake -DCMAKE_BUILD_TYPE=Debug -Dpfasst_WITH_GCC_PROF=ON -Dpfasst_INSTALL_EXAMPLES=ON -DCMAKE_INSTALL_PREFIX=$HOME ..
144+ cmake -DCMAKE_BUILD_TYPE=Debug -Dpfasst_WITH_GCC_PROF=ON \
145+ -Dpfasst_INSTALL_EXAMPLES=ON -DCMAKE_INSTALL_PREFIX=$HOME ..
122146
1231473 . Compile:
124148
@@ -128,8 +152,8 @@ latest release from [GitHub][github_releases].
128152
129153 make test
130154
131- In case any of the tests do not pass, please [ open an issue on GitHub] [ github_new_issue ] and provide the full log of
132- your _ CMake_ and _ make_ invocations.
155+ In case any of the tests do not pass, please [ open an issue on GitHub] [ github_new_issue ] and
156+ provide the full log of your _ CMake_ and _ make_ invocations.
133157
1341585 . (optional) Install \em PFASST++ headers (and compiled examples if specified so):
135159
0 commit comments