/**************************************************************************** ** ** Copyright (C) 2017 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of Qbs. ** ** $QT_BEGIN_LICENSE:FDL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms ** and conditions see https://www.qt.io/terms-conditions. For further ** information use the contact form at https://www.qt.io/contact-us. ** ** GNU Free Documentation License Usage ** Alternatively, this file may be used under the terms of the GNU Free ** Documentation License version 1.3 as published by the Free Software ** Foundation and appearing in the file included in the packaging of ** this file. Please review the following information to ensure ** the GNU Free Documentation License version 1.3 requirements ** will be met: https://www.gnu.org/licenses/fdl-1.3.html. ** $QT_END_LICENSE$ ** ****************************************************************************/ /*! \contentspage list-of-language-items.html \previouspage Profile \nextpage Properties \qmltype Project \inqmlmodule QbsLanguageItems \ingroup list-of-items \keyword QML.Project \brief Represents a collection of products and properties. A Project item represents a collection of of products. In a non-trivial project, these products are typically defined in their own files and referenced in the main project file: \code Project { references: [ "product1/product1.qbs", "product2/product2.qbs" ] } \endcode Any property \c prop attached to this item is available in sub-items as \c project.prop. While the root of the item hierarchy is always a Project, this kind of item can also appear further down the hierarchy. Such sub-projects are usually introduced to group products. See \l{SubProject} for details. \note If your project consists of only one product, the Project item can be omitted. */ /*! \qmlproperty path Project::buildDirectory \readonly The build directory of the top-level project. */ /*! \qmlproperty string Project::name The project name. Only relevant when displaying a project tree in an IDE, for example. \defaultvalue The basename of the file that defines the project. */ /*! \qmlproperty string Project::profile \readonly The top-level \l{Profile}{profile} for building the project. This property is set by \QBS when the project is being set up. */ /*! \qmlproperty bool Project::condition Whether the project is enabled. If \c false, no \l{Product}{products} or sub-projects will be collected. \defaultvalue \c true */ /*! \qmlproperty stringList Project::qbsSearchPaths A list of paths that are searched for imports and modules in addition to the ones listed in \c{preferences.qbsSearchPaths}. The value set here is merged with the value inherited from the parent project, if there is one. The result is inherited by all products in the project. \defaultvalue An empty list */ /*! \qmlproperty pathList Project::references A list of files from which to import products. This is equivalent to defining the respective \l{Product} items directly under this Project item. \defaultvalue An empty list */ /*! \qmlproperty path Project::sourceDirectory \readonly The directory where the file containing the top-level Project item is located. */ /*! \qmlproperty string Project::minimumQbsVersion The minimum version of \QBS that is needed to build this project. \defaultvalue \c "1.3.0" */