// Copyright (C) 2023 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only

// **********************************************************************
// NOTE: the sections are not ordered by their logical order to avoid
// reshuffling the file each time the index order changes (i.e., often).
// Run the fixnavi.pl script to adjust the links to the index order.
// **********************************************************************

/*!
//! [build systems]

    \section1 Selecting the Build System

    You can use several build systems to build your projects:

    \list

    \li \l{qmake Manual}{qmake} is a cross-platform system for build automation
    that helps simplify the build process for development projects across
    different platforms. qmake automates the generation of build configurations
    so that you need only a few lines of information to create each
    configuration. Qt installers install and configure qmake.
    To use one of the other supported build systems, you need to set it up.

    \li \l {Build with CMake}{CMake} is an alternative to qmake for automating the
    generation of build configurations. For more information, see
    \l {Setting Up CMake}.

    \li \l {https://mesonbuild.com/}{Meson} is a fast and user-friendly
    open-source build system that aims to minimize the time developers spend
    writing or debugging build definitions and waiting for the build system
    to start compiling code. For more information, see \l {Setting Up Meson}.

    \li \l{Qbs Manual}{Qbs} is an all-in-one build tool that generates a build graph
    from a high-level project description (like qmake or CMake do) and executes
    the commands in the low-level build graph (like make does). For more
    information, see \l{Setting Up Qbs}.

    \endlist

    To export a project to some other build system, such as Microsoft Visual
    Studio, select \uicontrol Build > \uicontrol {Run Generator}, and select
    a generator in the list. \QC generates the build files, such as .vcxproj,
    in the project's build directory. The tool that you use to build the project
    (qmake or CMake) provides the generators. Their availability depends on the
    version of the build tool, host platform, and properties of the host system.
    Also, a JSON compilation database generator is available if the
    \l{Parsing C++ Files with the Clang Code Model}{Clang Code Model plugin}
    is enabled (default).

    To change the location of the project directory, and to specify settings
    for building and running projects, select \uicontrol Edit >
    \uicontrol Preferences > \uicontrol {Build & Run} > \uicontrol General.

    Specify build and run settings for different target platforms, in the
    \uicontrol Projects mode. For more information on the options you have,
    see \l{Specifying Build Settings}.

//! [build systems]
*/
