Skip to content
Snippets Groups Projects
README.md 1.57 KiB
Newer Older
Petr Šádek's avatar
Petr Šádek committed
# Warning

Repository moved [here](https://gitlab.com/shetr/morphengine) due to practical reasons.

# Build

Petr Šádek's avatar
Petr Šádek committed
Clone project with submodules:
Petr Šádek's avatar
Petr Šádek committed
```bash
Petr Šádek's avatar
Petr Šádek committed
git clone --recursive https://gitlab.fel.cvut.cz/sadekpet/morphengine.git
```

Or update submodules after clone:

```bash
git submodule update --init --recursive
Petr Šádek's avatar
Petr Šádek committed
```

Configure cmake project:

```bash
# debug config
cmake -S . -B build/Debug -DCMAKE_BUILD_TYPE=Debug
# release config
cmake -S . -B build/Release -DCMAKE_BUILD_TYPE=Release
# deploy config
cmake -S . -B build/Deploy -DCMAKE_BUILD_TYPE=Release -DENABLE_DEPLOY=true
# profile debug config
cmake -S . -B build/ProfileDebug -DCMAKE_BUILD_TYPE=Debug -DENABLE_PROFILING=true
# profile release config
cmake -S . -B build/ProfileRelease -DCMAKE_BUILD_TYPE=Release -DENABLE_PROFILING=true
```

Build cmake project:

For fast build is recommended adding `-j N` to end, where N is number of threads.

```bash
# debug build all
cmake --build build/Debug
# release build all
cmake --build build/Release
# deploy build all
cmake --build build/Deploy
# profile debug build all
cmake --build build/ProfileDebug
# profile release build all
cmake --build build/ProfileRelease


# debug build specific target
cmake --build build/Debug --target your_target
# release build specific target
cmake --build build/Release --target your_target
# deploy build specific target
cmake --build build/Deploy --target your_target
# profile debug build specific target
cmake --build build/ProfileDebug --target your_target
# profile release build specific target
cmake --build build/ProfileRelease --target your_target
Petr Šádek's avatar
Petr Šádek committed
```