summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorJoerg Bornemann <joerg.bornemann@digia.com>2013-03-22 10:23:33 +0100
committerChristian Kandeler <christian.kandeler@digia.com>2013-03-27 10:20:35 +0100
commitd989719fb6eb42a1ebf880a376ff7e929782ccb0 (patch)
tree064803ccb6ccefbff144b001c67b0f35c1a24c08 /doc
parentfabbefc70fe6308436cf6b4e32ba8c7b0d62da6e (diff)
downloadqbs-d989719fb6eb42a1ebf880a376ff7e929782ccb0.tar.gz
Doc: document the qbs module
Change-Id: Iaa5b5c1d255e43889207c5461638a63bba6b4a26 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
Diffstat (limited to 'doc')
-rw-r--r--doc/qbs.qdoc161
1 files changed, 161 insertions, 0 deletions
diff --git a/doc/qbs.qdoc b/doc/qbs.qdoc
index 383b2c2a6..afcc1a815 100644
--- a/doc/qbs.qdoc
+++ b/doc/qbs.qdoc
@@ -802,6 +802,167 @@
\title Module qbs
+ The \c qbs module is implicitly loaded in every product. It contains properties of the current
+ build environment, independent of the used programming languages and toolchains.
+
+
+ \section1 buildVariant
+
+ \table
+ \row \li \b{Type:} \li \c{string}
+ \row \li \b{Default:} \li \c{"debug"}
+ \endtable
+
+ Contains the name of the build variant for the current build.
+
+
+ \section1 debugInformation
+
+ \table
+ \row \li \b{Type:} \li \c bool
+ \row \li \b{Default:} \li \c{true} for debug builds, \c{false} otherwise
+ \endtable
+
+ Specifies whether to generate debug information.
+
+
+ \section1 enableDebugCode
+
+ \table
+ \row \li \b{Type:} \li \c bool
+ \row \li \b{Default:} \li \c{true} for debug builds, \c{false} otherwise
+ \endtable
+
+ Specifies whether to compile debug code in the product.
+ This is typically enabled for debug builds and disabled for release builds.
+
+
+ \section1 optimization
+
+ \table
+ \row \li \b{Type:} \li \c{string}
+ \row \li \b{Allowed Values:} \li \c{"none"}, \c{"fast"}, \c{"small"}
+ \row \li \b{Default:} \li \c{"none"} for debug builds, \c{"fast"} for release builds
+ \endtable
+
+ Specifies the general type of optimization that should be performed by all toolchains.
+
+
+ \section1 hostOS
+
+ \table
+ \row \li \b{Type:} \li \c{string} (read only)
+ \row \li \b{Possible Values:} \c{"windows"}, \c{"linux"}, \c{"mac"}, \c{"unix"}
+ \endtable
+
+ This property is set by qbs internally and contains the name of the OS qbs is running on.
+
+
+ \section1 targetOS
+
+ \table
+ \row \li \b{Type:} \li \c{string}
+ \endtable
+
+ Specifies the OS you want to build the project for. This is typically set in a profile.
+ The possible values for this property are the values of \c hostOS plus a growing number
+ of supported operating systems like \c{"ios"}.
+
+
+ \section1 architecture
+
+ \table
+ \row \li \b{Type:} \li \c{string}
+ \endtable
+
+ Specifies the target platform's processor architecture.
+ This is typically set in a profile.
+ Currently used values are: \c{"x86"}, \c{"x86_64"} and \c{"arm"}.
+
+
+ \section1 endianness
+
+ \table
+ \row \li \b{Type:} \li \c{string}
+ \row \li \b{Allowed Values:} \li \c{"big"}, \c{"little"}, \c{"mixed"}
+ \row \li \b{Default:} \li \c{undefined}
+ \endtable
+
+ Specifies the endianness of the target platform's processor architecture.
+
+
+ \section1 targetPlatform
+
+ \table
+ \row \li \b{Type:} \li \c{Array} of \c{string}s
+ \endtable
+
+ Holds attributes of the target platform. Always contains the value of \c{targetOS}.
+ Additional values of this property are:
+ \table
+ \header
+ \li Value
+ \li Description
+ \row
+ \li \c{"unix"}
+ \li The platform is a Unix derivative. E.g. this is set for Linux, OS X and Android.
+ \row
+ \li \c{"darwin"}
+ \li The platform is derived from Darwin. This is set for OS X and iOS.
+ \endtable
+
+
+ \section1 toolchain
+
+ \table
+ \row \li \b{Type:} \li \c{string}
+ \row \li \b{Allowed Values:} \li \c{"gcc"}, \c{"clang"}, \c{"mingw"}, \c{"msvc"}
+ \endtable
+
+ Specifies the toolchain that is going to be used for this build.
+
+
+ \section1 sysroot
+
+ \table
+ \row \li \b{Type:} \li \c{string}
+ \row \li \b{Default:} \li \c{undefined}
+ \endtable
+
+ Specifies the sysroot of the target platform. This property is typically set in a profile
+ for cross-compiling.
+
+
+ \section1 install
+
+ \table
+ \row \li \b{Type:} \li \c{bool}
+ \row \li \b{Default:} \li \c{false}
+ \endtable
+
+ Specifies whether to install a certain set of files.
+ This is typically set in a \c{Group} item to mark a number of files as installable.
+
+
+ \section1 installDir
+
+ \table
+ \row \li \b{Type:} \li \c{string}
+ \row \li \b{Default:} \li \c{undefined}
+ \endtable
+
+ Specifies the installation directory for the files of a product or a \c{Group}. The value of
+ this property is a path that is relative to the install root.
+
+
+ \section1 pathListSeparator
+
+ \table
+ \row \li \b{Type:} \li \c{string}
+ \endtable
+
+ Holds the platform-specific separator for path list that is used in environment variables or
+ other contexts. E.g. on Windows is this \c{";"}, on Unix derivatives \c{":"}.
*/