aboutsummaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/reference/items/convenience/application.qdoc25
-rw-r--r--doc/reference/items/convenience/autotestrunner.qdoc4
-rw-r--r--doc/reference/items/convenience/dynamiclibrary.qdoc49
-rw-r--r--doc/reference/items/convenience/staticlibrary.qdoc28
-rw-r--r--doc/reference/modules/autotest-module.qdoc69
-rw-r--r--doc/reference/modules/texttemplate-module.qdoc118
6 files changed, 284 insertions, 9 deletions
diff --git a/doc/reference/items/convenience/application.qdoc b/doc/reference/items/convenience/application.qdoc
index de2bbae48..3c87f51f6 100644
--- a/doc/reference/items/convenience/application.qdoc
+++ b/doc/reference/items/convenience/application.qdoc
@@ -39,9 +39,30 @@
An Application item is a \l{Product} of the \l{Product::}{type}
\c "application".
- It exists for the convenience of project file authors.
-
\note On Android, an Application item instead builds a shared library for
products whose \l{Product::}{consoleApplication} property is set to
\c false.
*/
+
+/*!
+ \qmlproperty bool Application::install
+
+ If \c{true}, the executable that is produced when building the application will be installed
+ to \l installDir.
+
+ \defaultvalue \c false
+ \since Qbs 1.13
+*/
+
+/*!
+ \qmlproperty string Application::installDir
+
+ Where to install the executable that is produced when building the application, if \l install
+ is enabled.
+
+ The value is appended to \l{qbs::installPrefix}{qbs.installPrefix}
+ when constructing the actual installation directory.
+
+ \defaultvalue \c Applications if the app is a \l{bundle::isBundle}{bundle}, \c bin otherwise.
+ \since Qbs 1.13
+*/
diff --git a/doc/reference/items/convenience/autotestrunner.qdoc b/doc/reference/items/convenience/autotestrunner.qdoc
index f4861835b..defb2814e 100644
--- a/doc/reference/items/convenience/autotestrunner.qdoc
+++ b/doc/reference/items/convenience/autotestrunner.qdoc
@@ -73,6 +73,8 @@
\qmlproperty stringList AutotestRunner::arguments
The list of arguments to invoke the autotest with.
+ A test can override this by setting the \l{autotest::arguments}{arguments} property
+ of the \l autotest module.
\defaultvalue \c []
*/
@@ -114,6 +116,8 @@
If this property is set, it will be the working directory for all invoked test executables.
Otherwise, the working directory will the the parent directory of the respective executable.
+ A test can override this by setting the \l{autotest::workingDir}{workingDir} property
+ of the \l autotest module.
\nodefaultvalue
\since Qbs 1.12
diff --git a/doc/reference/items/convenience/dynamiclibrary.qdoc b/doc/reference/items/convenience/dynamiclibrary.qdoc
index 27aa978d1..488aef3eb 100644
--- a/doc/reference/items/convenience/dynamiclibrary.qdoc
+++ b/doc/reference/items/convenience/dynamiclibrary.qdoc
@@ -38,7 +38,7 @@
\brief Dynamic library.
A DynamicLibrary item is a \l{Product} of the \l{Product::}{type}
- \c "dynamiclibrary". It exists for the convenience of project file authors.
+ \c "dynamiclibrary".
For Android targets, the following applies:
\list
@@ -48,3 +48,50 @@
\endlist
*/
+/*!
+ \qmlproperty bool DynamicLibrary::install
+
+ If \c{true}, the library will be installed to \l installDir.
+
+ \defaultvalue \c false
+ \since Qbs 1.13
+*/
+
+/*!
+ \qmlproperty string DynamicLibrary::installDir
+
+ Where to install the library, if \l install is enabled. On Unix, the symbolic links
+ are also installed to this location.
+
+ The value is appended to \l{qbs::installPrefix}{qbs.installPrefix}
+ when constructing the actual installation directory.
+
+ \defaultvalue \c Library/Frameworks if the library is a \l{bundle::isBundle}{bundle},
+ otherwise \c bin for Windows and \c lib for Unix-like targets.
+ \since Qbs 1.13
+*/
+
+/*!
+ \qmlproperty bool DynamicLibrary::installImportLib
+
+ If \c{true}, the import library will be installed to \l importLibInstallDir.
+ This property is only relevant for Windows targets.
+ Enable it if you want to create a development package.
+
+ \defaultvalue \c false
+ \since Qbs 1.13
+*/
+
+/*!
+ \qmlproperty string DynamicLibrary::importLibInstallDir
+
+ Where to install the import library, if \l installImportLib is enabled.
+
+ The value is appended to \l{qbs::installPrefix}{qbs.installPrefix}
+ when constructing the actual installation directory.
+
+ This property is only relevant for Windows targets.
+
+ \defaultvalue \c lib
+ \since Qbs 1.13
+*/
diff --git a/doc/reference/items/convenience/staticlibrary.qdoc b/doc/reference/items/convenience/staticlibrary.qdoc
index a7a94cc43..cd459cf6e 100644
--- a/doc/reference/items/convenience/staticlibrary.qdoc
+++ b/doc/reference/items/convenience/staticlibrary.qdoc
@@ -37,11 +37,27 @@
\brief Static library.
A StaticLibrary item is a \l{Product}{product} of the \l{Product::}{type}
- \c "staticlibrary" that is normally entirely equivalent to the following:
+ \c "staticlibrary".
+*/
+
+/*!
+ \qmlproperty bool StaticLibrary::install
+
+ If \c{true}, the library will be installed to \l installDir.
+
+ \defaultvalue \c false
+ \since Qbs 1.13
+*/
+
+/*!
+ \qmlproperty string StaticLibrary::installDir
+
+ Where to install the library, if \l install is enabled.
+
+ The value is appended to \l{qbs::installPrefix}{qbs.installPrefix}
+ when constructing the actual installation directory.
- \code
- Product {
- type: "staticlibrary"
- }
- \endcode
+ \defaultvalue \c Library/Frameworks if the library is a \l{bundle::isBundle}{bundle},
+ \c lib otherwise.
+ \since Qbs 1.13
*/
diff --git a/doc/reference/modules/autotest-module.qdoc b/doc/reference/modules/autotest-module.qdoc
new file mode 100644
index 000000000..ddd9e0078
--- /dev/null
+++ b/doc/reference/modules/autotest-module.qdoc
@@ -0,0 +1,69 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 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 index.html
+ \qmltype autotest
+ \inqmlmodule QbsModules
+ \since Qbs 1.13
+
+ \brief Allows to fine-tune autotest execution.
+
+ The \c autotest module provides properties that allow autotest applications to specify
+ how exactly they should be run.
+*/
+
+/*!
+ \qmlproperty bool autotest::allowFailure
+
+ Autotests for which this property is \c true can return a non-zero exit code without
+ causing the entire \l AutotestRunner to fail. Use this for tests that are known
+ to be unreliable.
+
+ \defaultvalue \c false
+*/
+
+/*!
+ \qmlproperty stringList autotest::arguments
+
+ The list of arguments to invoke the autotest with. If not specified, then
+ the \l{AutotestRunner::arguments}{arguments} property of the
+ \l AutotestRunner that invokes the autotest is used.
+
+ \nodefaultvalue
+*/
+
+/*!
+ \qmlproperty string autotest::workingDir
+
+ The working directory for running the autotest. If not specified, then
+ the \l{AutotestRunner::workingDir}{workingDir} property of the
+ \l AutotestRunner that invokes the autotest is used.
+
+ \nodefaultvalue
+*/
+
diff --git a/doc/reference/modules/texttemplate-module.qdoc b/doc/reference/modules/texttemplate-module.qdoc
new file mode 100644
index 000000000..6d42560be
--- /dev/null
+++ b/doc/reference/modules/texttemplate-module.qdoc
@@ -0,0 +1,118 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 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 index.html
+ \qmltype texttemplate
+ \inqmlmodule QbsModules
+ \since Qbs 1.13
+
+ \brief Provides support for text template files
+
+ The \c texttemplate module provides support for text template files.
+
+ \section2 Example
+
+ Consider the following text file \e{greeting.txt.in}.
+
+ \code
+ ${greeting} ${name}!
+ \endcode
+
+ This can be used in a project like this:
+
+ \code
+ Product {
+ type: ["text"]
+ files: ["greeting.txt.in"]
+ Depends { name: "texttemplate" }
+ texttemplate.dict: ({
+ greeting: "Hello",
+ name: "World"
+ })
+ }
+ \endcode
+
+ Which will create the file \e{greeting.txt}.
+
+ \code
+ Hello World!
+ \endcode
+
+
+ \section2 Placeholder Syntax
+
+ A placeholder \c{${foo}} is replaced by its corresponding value in
+ \e{texttemplate.dict}.
+ Placeholder names consist of alphanumeric characters only.
+
+ The placeholder \c{${$}} is always replaced with \c{$}.
+ If you need a literal \c{${foo}} in your template, use \c{${$}{foo}}.
+
+ Placeholders that are not defined in the dictionary will produce an error.
+
+
+ \section2 Relevant File Tags
+ \target filetags-texttemplate
+
+ \table
+ \header
+ \li Tag
+ \li Auto-tagged File Names
+ \li Since
+ \li Description
+ \row
+ \li \c{"texttemplate.input"}
+ \li \c{*.in}
+ \li 1.13.0
+ \li Source files with this tag serve as inputs for the text template rule.
+ \endtable
+*/
+
+/*!
+ \qmlproperty var texttemplate::dict
+
+ The dictionary containing values for all keys used in the template file.
+
+ \defaultvalue \c{{}}
+*/
+
+/*!
+ \qmlproperty string outputFileName
+
+ The output file name that is assigned to produced artifacts.
+
+ \defaultvalue Complete base name of the input file
+*/
+
+/*!
+ \qmlproperty string outputTag
+
+ The output tag that is assigned to produced artifacts.
+
+ \defaultvalue \c{"text"}
+*/