/****************************************************************************
**
** Copyright (C) 2016 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
    \page archiver-module.html
    \ingroup list-of-modules

    \title Module archiver
    \since 1.4
    \brief Provides support for building archives.

    The \c archiver module contains the properties and rules for creating (compressed) archives.
    The output artifact has the file tag "archiver.archive". The sole input artifact is a text file
    containing the list of files to package, with one file path per line. The paths can be
    relative, in which case they will be looked for at \c{archiver.workingDirectory}. The file tag
    of this input artifact is "archiver.input-list".

    \section1 archiver Properties

    \table
    \header
        \li Property
        \li Type
        \li Since
        \li Default
        \li Description
    \row
        \li flags
        \li stringList
        \li 1.4
        \li empty list
        \li Custom options not covered by any of the other properties.
    \row
        \li archiveBaseName
        \li string
        \li 1.4
        \li \c{product.targetName}
        \li The base name of the archive file (in other words, the file name without
            any extensions).
    \row
        \li compressionLevel
        \li string
        \li 1.4
        \li \c undefined
        \li How much effort to put into the compression of a 7-Zip or zip archive.
            Possible values are \c undefined, "0", "1", "2", "3", "4", "5", "6", "7", "8" and "9"
            Higher numbers result in a smaller archive, but the compressing process will take more
            time. 7-Zip only supports 0 and odd numbers.
            A value of \c undefined means to use the default compression level.
    \row
        \li compressionType
        \li string
        \li 1.4
        \li \c{"gz"} for tar archives, otherwise \c undefined
        \li How to compress a tar or zip archive.
            Possible options are "none", "gz", "bz2", "Z", "xz", "deflate", "store".
            \c undefined uses the archiver's default compression type.
    \row
        \li outputDirectory
        \li string
        \li 1.4
        \li \c{product.destinationDirectory}
        \li Where to put the archive file.
    \row
        \li type
        \li string
        \li 1.4
        \li \c{undefined}
        \li Which kind of archiver to use.
            The currently supported values are: "tar", "7zip", "zip".
    \row
        \li workingDirectory
        \li string
        \li 1.4
        \li undefined
        \li The directory in which to execute \c command.
    \row
        \li command
        \li string
        \li 1.4
        \li Depends on \c{type}.
        \li The command with which to invoke the archiver.
    \endtable
*/
