# Build profiles DCR supports two profiles: - `debug` (default) - `release` ## How to select ```sh dcr build --debug dcr build --release dcr run --release dcr clean --debug ``` ## Default profile flags ### GCC/Clang-like toolchains - `debug`: `-O0 -g -Wall -Wextra -fno-omit-frame-pointer -DDEBUG` - `release`: `-O3 -DNDEBUG -march=native` ### MSVC toolchain - `debug`: `/Od /Zi /W4 /DDEBUG /Oy-` - `release`: `/O2 /DNDEBUG` ## Artifacts By default: - `target/debug/` (or `.exe` on Windows) - `target/release/` (or `.exe` on Windows) Default compiler flags: GCC/Clang: - `debug`: `-O0 -g -Wall -Wextra -fno-omit-frame-pointer -DDEBUG` - `release`: `-O3 -DNDEBUG -march=native` MSVC: - `debug`: `/Od /Zi /W4 /DDEBUG /Oy-` - `release`: `/O2 /DNDEBUG` Static library mode (`kind = "staticlib"`): - Linux/macOS: `lib.a` - Windows: `.lib` Shared library mode (`kind = "sharedlib"`): - Linux: `lib.so` - macOS: `lib.dylib` - Windows: `.dll`