From b10f3c82ed11df6468d80d7356e88394daae15e6 Mon Sep 17 00:00:00 2001 From: silverqx Date: Mon, 3 Jun 2024 20:20:56 +0200 Subject: [PATCH] docs added LTO options --- docs/building/tinyorm.mdx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/building/tinyorm.mdx b/docs/building/tinyorm.mdx index b01946cf5..5b203ab6c 100644 --- a/docs/building/tinyorm.mdx +++ b/docs/building/tinyorm.mdx @@ -569,6 +569,7 @@ Important `CMake` options. | `CMAKE_CXX_COMPILER` | `auto` | The full path to the `C++` compiler. | | `CMAKE_CXX_COMPILER_LAUNCHER` | `-` | Default compiler launcher to use for the `C++` compiler.
Can be used to enable `ccache`, eg. `ccache.exe` on `MinGW` or `/usr/bin/ccache` on `Linux`. | | `CMAKE_EXPORT_PACKAGE_REGISTRY` | `OFF` | Enable the `export(TinyOrm)` command.
`TinyORM` doesn't set this variable by default. Its initial value is taken from the `TINYORM_EXPORT_PACKAGE_REGISTRY` environment variable if not already defined. | +| `CMAKE_INTERPROCEDURAL_OPTIMIZATION` | `OFF` | Enable [Link time code optimization](https://en.wikipedia.org/wiki/Interprocedural_optimization) ([LTO](https://wiki.gentoo.org/wiki/LTO)).
Works on all [Supported Compilers](supported-compilers.mdx). | | `CMAKE_VERBOSE_MAKEFILE` | `OFF` | Enable verbose output from Makefile builds. | @@ -833,6 +834,7 @@ Important `qmake` options. | `CONFIG` Option Name | Default | Description | | ----------------------------------- | ------- | ----------- | | `ccache` | `OFF` | Enable compiler cache. [Homepage](https://ccache.dev/)
It works only on the Unix systems. It works well with `g++` and `clang++` and also supports precompiled headers. TinyORM overrides this qmake option with the [`ccache`](#ccache) option.
See [Ccache support](#ccache-support) for more information.
| +| `ltcg` | `OFF` | Enable [Link time code optimization](https://en.wikipedia.org/wiki/Interprocedural_optimization) ([LTO](https://wiki.gentoo.org/wiki/LTO)).
Works on all [Supported Compilers](supported-compilers.mdx). | | `precompile_header` | `-` | Enable precompiled headers, you can disable them with:
`CONFIG-=precompile_header`.
The `precompile_header` is enabled by default on `msvc`, `g++`, `clang++`, `clang-cl` on `Windows` and disabled by default on `linux`. | | `static`
`staticlib` | `OFF` | Build as a `static` library (lib only).
If you want to build all libraries in the `TinyORM` project as static library archives and link against static libraries use the [`CONFIG += static`](https://doc.qt.io/qt/qmake-variable-reference.html#config). Don't use the `CONFIG += staticlib`.
See [NOTES.txt](https://github.com/silverqx/TinyORM/blob/main/NOTES.txt) for more information (search `static vs staticlib`).
| | `static_runtime` | `OFF` | Link against the `shared` (dynamic) or `static` run-time library.
The `-MD` becomes `-MT` and `-MDd` becomes `-MTd`. It works only on `MSVC` and `MinGW` or `MSYS2`.
Please don't use this option.
Available when: `msvc` or `mingw`
|