diff --git a/README.md b/README.md
index ae3d0d2f263628c2951d62ed68e08946b30ed933..1a25762ec162bd7c23e5d78c17436e973caf997a 100644
--- a/README.md
+++ b/README.md
@@ -34,6 +34,34 @@ Option `COMPILER` enables set of compiler-specific options. Most common are `gnu
 ./sfx.exe
 ```
 
+## Building with CMake
+
+Currently there is an implementation of Cmake-based toolchain which allows to build the model quicker and with less hustle (minimum required cmake version is 3.19). Clone the project and load appropriate modules. Create a build directory outside of cloned projects:
+
+```bash
+mkdir build && cd build
+```
+
+The code supports fluxes computations on both CPU and GPU and the CPU implementation has two versions: Fortran and C++ implementation. 
+
+1. Building the Fortran CPU version:
+```bash
+cmake ..
+```
+
+2. Building the C++ CPU version:
+```bash
+cmake -DUSE_CXX=ON ..
+```
+
+3. Building the C++ GPU version:
+```bash
+cmake -DINCLUDE_CUDA=ON -DCMAKE_CUDA_ARCHITECTURES=<N> ..
+```
+where `N` is the architecture to generate device code for.
+
+
+
 ## Running test cases
 We have prepared several dataseta to make the test calculations. Data is prepared on the basis of measurements.