/****************************************************************************
**
** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/legal
**
** This file is part of the Qt Build Suite.
**
** 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 Digia.  For licensing terms and
** conditions see http://www.qt.io/licensing.  For further information
** use the contact form at http://www.qt.io/contact-us.
**
** GNU Lesser General Public License Usage
** Alternatively, this file may be used under the terms of the GNU Lesser
** General Public License version 2.1 or version 3 as published by the Free
** Software Foundation and appearing in the file LICENSE.LGPLv21 and
** LICENSE.LGPLv3 included in the packaging of this file.  Please review the
** following information to ensure the GNU Lesser General Public License
** requirements will be met: https://www.gnu.org/licenses/lgpl.html and
** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** In addition, as a special exception, Digia gives you certain additional
** rights.  These rights are described in the Digia Qt LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
****************************************************************************/

/*!
    \contentspage index.html
    \page wix-module.html
    \ingroup list-of-modules

    \title Module wix
    \brief Provides Windows Installer XML Toolset support.

    The \c wix module contains properties and rules for building MSI and
    EXE setup packages with the Windows Installer XML Toolset.

    This module is only available on Windows.

    \section1 General Properties


    \section2 debugInformation

    \table
    \row    \li \b{Type:}            \li \c{bool}
    \row    \li \b{Default:}         \li \c{qbs.debugInformation}
    \endtable

    Generate debug information. See \c{qbs.debugInformation}.

    \section2 defines

    \table
    \row    \li \b{Type:}            \li \c{stringList}
    \row    \li \b{Default:}         \li \c{undefined}
    \endtable

    List of preprocessor macros that get passed to the compiler.
    To set macro values use the following syntax:
    \code
    wix.defines: ["USE_COLORS=1", 'COLOR_STR="blanched almond"']
    \endcode

    \section2 enableQbsDefines

    \table
    \row    \li \b{Type:}            \li \c{bool}
    \row    \li \b{Default:}         \li \c{true}
    \endtable

    Whether to define preprocessor macros corresponding to values from the project and product
    objects. When building a 64-bit package, the preprocessor variable \c{Win64} will also be
    defined.

    \section2 visualStudioCompatibility

    \table
    \row    \li \b{Type:}            \li \c{bool}
    \row    \li \b{Default:}         \li \c{true}
    \endtable

    Passes most of the same preprocessor macros to the compiler as Visual Studio does.
    This allows easier authoring WiX files that are compatible with both \QBS and MSBuild.

    \section2 includePaths

    \table
    \row    \li \b{Type:}            \li \c{pathList}
    \row    \li \b{Default:}         \li \c{undefined}
    \endtable

    List of include paths. Relative paths are considered to be relative to the .qbs product file
    they are used in.

    \section2 treatWarningsAsErrors

    \table
    \row    \li \b{Type:}            \li \c{bool}
    \row    \li \b{Default:}         \li \c{false}
    \endtable

    Warnings will be handled as errors and cause the build to fail.

    \section2 warningLevel

    \table
    \row    \li \b{Type:}            \li \c{string}
    \row    \li \b{Allowed Values:}  \li \c{"none"}, \c{"normal"}, \c{"pedantic"}
    \row    \li \b{Default:}         \li \c{"normal"}
    \endtable

    Severity of warnings to emit. The higher the level, the more warnings will be shown.

    \section2 verboseOutput

    \table
    \row    \li \b{Type:}            \li \c{bool}
    \row    \li \b{Default:}         \li \c{false}
    \endtable

    Whether to display verbose output from the compiler and linker.

    \section2 compilerFlags

    \table
    \row    \li \b{Type:}            \li \c{stringList}
    \row    \li \b{Default:}         \li undefined
    \endtable

    Additional flags for the Candle compiler.

    \section2 linkerFlags

    \table
    \row    \li \b{Type:}            \li \c{stringList}
    \row    \li \b{Default:}         \li undefined
    \endtable

    Additional flags for the Light linker.

    \section2 cultures

    \table
    \row    \li \b{Type:}            \li \c{stringList}
    \row    \li \b{Default:}         \li undefined
    \endtable

    List of localizations to include in the MSI. Use \c{undefined} to include all localizations.

    \section2 extensions

    \table
    \row    \li \b{Type:}            \li \c{stringList}
    \row    \li \b{Default:}         \li \c{["WixBalExtension"]} if the product type is an EXE setup
                                         application, otherwise \c{undefined}.
    \row    \li \b{Possible Values:} \li \c{"WixBalExtension"},
                                         \c{"WixComPlusExtension"},
                                         \c{"WixDependencyExtension"},
                                         \c{"WixDifxAppExtension"},
                                         \c{"WixDirectXExtension"},
                                         \c{"WixFirewallExtension"},
                                         \c{"WixGamingExtension"},
                                         \c{"WixIisExtension"},
                                         \c{"WixMsmqExtension"},
                                         \c{"WixNetFxExtension"},
                                         \c{"WixPSExtension"},
                                         \c{"WixSqlExtension"},
                                         \c{"WixTagExtension"},
                                         \c{"WixUIExtension"},
                                         \c{"WixUtilExtension"},
                                         \c{"WixVSExtension"},
                                         custom assemblies
    \endtable

    List of extension assemblies to link into the output.

    \section2 version

    \table
    \row    \li \b{Type:}            \li \c{string}
    \row    \li \b{Default:}         \li \c{undefined}
    \endtable

    The WiX version. Consists of four numbers separated by dots, for instance "3.7.1224.0".

    \section2 versionMajor

    \table
    \row    \li \b{Type:}            \li \c{int}
    \row    \li \b{Default:}         \li \c{versionParts[0]}
    \endtable

    The WiX major version.

    \section2 versionMinor

    \table
    \row    \li \b{Type:}            \li \c{int}
    \row    \li \b{Default:}         \li \c{versionParts[1]}
    \endtable

    The WiX minor version.

    \section2 versionParts

    \table
    \row    \li \b{Type:}            \li \c{list}
    \row    \li \b{Default:}         \li \c{empty}
    \endtable

    The WiX version as a list. For instance, WiX version 3.7.1224.0 would correspond to a value of
    \c[3, 7, 1224, 0].

    \section2 versionPatch

    \table
    \row    \li \b{Type:}            \li \c{int}
    \row    \li \b{Default:}         \li \c{versionParts[2]}
    \endtable

    The WiX patch level.

    \section2 versionBuild

    \table
    \row    \li \b{Type:}            \li \c{int}
    \row    \li \b{Default:}         \li \c{versionParts[3]}
    \endtable

    The fourth WiX version number component.

    \section2 toolchainInstallPath

    \table
    \row    \li \b{Type:}            \li \c{path}
    \row    \li \b{Default:}         \li determined automatically
    \endtable

    WiX installation directory. Determined by searching the registry for the latest version.
    This should not normally need to be changed.

    \section2 toolchainInstallRoot

    \table
    \row    \li \b{Type:}            \li \c{path}
    \row    \li \b{Default:}         \li determined automatically
    \endtable

    WiX binaries directory. Determined by searching the registry for the latest version.
    This should not normally need to be changed.

    \section2 compilerName

    \table
    \row    \li \b{Type:}            \li \c{string}
    \row    \li \b{Default:}         \li \c{"candle.exe"}
    \endtable

    Name of the compiler binary. This should not normally need to be changed.

    \section2 compilerPath

    \table
    \row    \li \b{Type:}            \li \c{string}
    \row    \li \b{Default:}         \li \c{compilerName}
    \endtable

    Directory where the compiler binary is located. This should not normally need to be changed.

    \section2 linkerName

    \table
    \row    \li \b{Type:}            \li \c{string}
    \row    \li \b{Default:}         \li \c{"light.exe"}
    \endtable

    Name of the linker binary. This should not normally need to be changed.

    \section2 linkerPath

    \table
    \row    \li \b{Type:}            \li \c{string}
    \row    \li \b{Default:}         \li \c{linkerName}
    \endtable

    Directory where the linker binary is located. This should not normally need to be changed.
*/
