| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- FASTBuild
- =========
- Generates a ``fbuild.bff`` file, which can be used to build the project with
- `FASTBuild <https://www.fastbuild.org/docs/home.html>`_.
- Usage
- -----
- Specify the generator when invoking :manual:`cmake(1)`:
- .. code-block:: shell
- cmake [<options>] -G FASTBuild -B <path-to-build> [-S <path-to-source>]
- This writes a FASTBuild configuration file named ``fbuild.bff`` into
- ``<path-to-build>``.
- .. note::
- This generator also produces IDE project files for Visual Studio and Xcode,
- which are placed under:
- * ``<path-to-build>/VisualStudio`` – Visual Studio solution and projects
- * ``<path-to-build>/XCode`` – Xcode workspace and projects
- These IDE files can be generated by building ``xcode`` or ``solution`` targets
- and will build using FASTBuild as the backend.
- Configuration Variables
- -----------------------
- The following variables can be used to configure this generator:
- * :variable:`CMAKE_FASTBUILD_CACHE_PATH`
- * :variable:`CMAKE_FASTBUILD_CAPTURE_SYSTEM_ENV`
- * :variable:`CMAKE_FASTBUILD_COMPILER_EXTRA_FILES`
- * :variable:`CMAKE_FASTBUILD_ENV_OVERRIDES`
- * :variable:`CMAKE_FASTBUILD_TRACK_BYPRODUCTS_AS_OUTPUT`
- * :variable:`CMAKE_FASTBUILD_USE_LIGHTCACHE`
- * :variable:`CMAKE_FASTBUILD_VERBOSE_GENERATOR`
- Notes
- -----
- * This generator does not support directories as outputs of custom commands.
- If you do specify a directory as an output, it should be marked with the
- ``SYMBOLIC`` property to avoid incorrect behavior.
- * It is highly advised to use custom commands with only one output.
- If multiple outputs are specified, the generator will emit an additional
- rule to check the outputs at build time. This adds overhead and is necessary
- because FASTBuild natively supports only a single output per custom step.
- Example
- -------
- .. code-block:: shell
- cmake [<options>] -G FASTBuild -B <path-to-build> -DCMAKE_BUILD_TYPE=Release
- cmake --build <path-to-build> --target my_app
- This generates ``fbuild.bff`` in ``<path-to-build>`` and uses FASTBuild
- to build the ``my_app`` target.
- See Also
- --------
- * :manual:`cmake-generators(7)`
- * `FASTBuild Documentation <https://www.fastbuild.org/docs/documentation.html>`_
|