// Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only

/*!
    \page licensing.html
    \title Qt Licensing
    \brief Information about licenses and licensing issues.

    Qt is available under different licensing options designed to accommodate
    the needs of our various users:

    \list
      \li Qt licensed under \e commercial licenses is appropriate for
          development of proprietary/commercial software where you do not want
          to share any source code with third parties or otherwise cannot
          comply with the terms of the GNU LGPL version 3.

      \li Qt licensed under the \l{GNU Lesser General Public License (LGPL)}
          version 3 is appropriate for the development of Qt applications
          provided you can comply with the terms and conditions of the GNU LGPL
          version 3 (or GNU GPL version 3).
      \li Qt components licensed under the \l{Qt Marketplace License Agreement}
          are appropriate for the development of Qt applications commonly with
          Qt software components licensed under the commercial or GNU LGPL
          version 3 (or GNU GPL version 3) terms and conditions.
    \endlist

    Qt contains also \l {Third-Party Code Used in Qt}{third-party code} that is licensed
    under specific open-source licenses from the original authors.

    \note For open-source licensed Qt, some specific parts (modules) are not
    available under the GNU LGPL version 3, but under the
    \l {GNU General Public License (GPL)} instead.

    //! TODO: Use grouping for automatically-generated list
    \details {Modules available under GNU General Public License v3}
        \list
            \li \l {qtcharts-index.html}{Qt Charts}
            \li \l {qtcoap-index.html}{Qt CoAP}
            \li \l {qtdatavisualization-index.html}{Qt Data Visualization}
            \li \l {qtgraphs-index.html}{Qt Graphs}
            \li \l {qtgrpc-index.html}{Qt GRPC}
            \li \l {qthttpserver-index.html}{Qt HTTP Server}
            \li \l {qtlottieanimation-index.html}{Qt Lottie Animation}
            \li \l {qtmqtt-index.html}{Qt MQTT}
            \li \l {qtnetworkauth-index.html}{Qt Network Authorization}
            \li \l {qtquick3d-index.html}{Qt Quick 3D}
            \li \l {qtquick3dphysics-index.html}{Qt Quick 3D Physics}
            \li \l {qtquicktimeline-index.html}{Qt Quick Timeline}
            \li \l {qtvirtualkeyboard-index.html}{Qt Virtual Keyboard}
            \li \l {qtwaylandcompositor-index.html}{Qt Wayland Compositor}
            \li \l {qtgraphicaleffects5-index.html}{Qt 5 Compatibility APIs: Graphical Effects}
        \endlist
    \enddetails

    For commercial licensees, all modules are available under a single, commercial Qt
    license.

    \e {Qt documentation} is available under commercial licenses from
    The Qt Company, and under the terms of the \l{GNU Free
    Documentation License (FDL)} version 1.3, as published by the Free Software
    Foundation.

    \e {Qt examples} are available under commercial licenses from The Qt Company,
    and under a \l{License of Qt examples}{BSD-3-clause} license.

    \l {Qt Educational License}{Educational licenses} are available for students
    and educators in qualified educational institutions or universities.

    See \l{http://qt.io/licensing/} for an overview of Qt licensing.

    \section1 Purchasing and Sales Information

    To purchase a Qt license, visit \l{http://www.qt.io/download/}.

    For further information and assistance about Qt licensing, contact our
    sales; see \l{http://www.qt.io/locations/} for contact details.

    \section1 Third-Party Code in Qt

    The following page documents the open-source licenses used in different
    parts of Qt:

    \list
        \li \l {Third-Party Code Used in Qt}
    \endlist

    \section1 Software Bill of Materials (SBOM)

    Starting from Qt 6.8, Software Bill of Materials (SBOM) documents of
    third-party components in Qt are available. Information such as copyrights,
    licenses, versions, source repositories, and other relevant information are
    declared in SPDX 2.3 format.

    \list
        \li \l {Software Bill of Materials}
    \endlist

    \section1 Export Controls

    Many jurisdictions impose export controls for various hardware and software
    products. In general, the mass-market Qt framework as well as the related
    tools provided by the Qt Group do not contain functionality that would
    cause them to be under tight regulations. The following page lists the
    relevant information about export controls.

    \list
        \li \l {Export Control of Qt Framework and Tools}
    \endlist

*/

/*!
    \page licenses-used-in-qt.html
    \keyword Third-Party Licenses Used in Qt
    \keyword Licenses Used in Qt
    \title Third-Party Code Used in Qt
    \brief Information about third-party code used in Qt.

    Qt libraries and plugins can contain code that is not intellectual
    property of The Qt Company, but is available under specific open-source
    licenses from the original authors.

    The Qt Company gratefully acknowledges these and other contributions to Qt.
    We recommend that programs that use Qt also acknowledge these contributions
    and quote these license statements in an appendix to the documentation.

    \note You only need to acknowledge and comply with the licenses of the
    third-party components that you are actually shipping with your
    application. Click the name of the component to see the licensing details.

    \b {Third-party Licenses}

    The following sections list third-party components in Qt \QtVersion, grouped by
    \l{All Modules}{Qt module}. If the third-party component itself consists of
    parts that are of a different origin (so-called
    4th-party or Nth-party code), these are listed, too.

    Starting from Qt 6.8, Software Bill of Materials (SBOM) documents of
    third-party components in Qt are available. Information such as copyrights,
    licenses, versions, source repositories, and other relevant information are
    declared in SPDX 2.3 format. For more information, visit the
    \l {Software Bill of Materials} page.

    \div {class="fixed"}
    \generatelist annotatedattributions

    \section1 Additional Information

    The following table lists related documents, such as information about Trademarks
    and other licenses used in parts of Qt.

    \annotatedlist licensing
    \enddiv
*/

/*!
    \page qt-attribution-cmake-macros.html
    \title Macros for Building with CMake
    \ingroup licensing
    \brief BSD 3-clause "New" or "Revised" License

    The following files contain macros that enable users to build Qt-based
    projects using CMake.

    \list
        \li \c qtbase/src/corelib/Qt6CoreMacros.cmake
        \li \c qtbase/src/dbus/Qt6DBusMacros.cmake
        \li \c qtbase/src/widgets/Qt6WidgetsMacros.cmake
        \li \c qttools/src/linguist/Qt6LinguistToolsMacros.cmake
    \endlist

    \badcode
    Copyright 2005-2011 Kitware, Inc.
    All rights reserved.
    \endcode

    \l {https://spdx.org/licenses/BSD-3-Clause.html}
       {BSD 3-clause "New" or "Revised" License}

    \badcode
    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:

    * Redistributions of source code must retain the above copyright
      notice, this list of conditions and the following disclaimer.

    * Redistributions in binary form must reproduce the above copyright
      notice, this list of conditions and the following disclaimer in the
      documentation and/or other materials provided with the distribution.

    * Neither the name of Kitware, Inc. nor the names of its
      contributors may be used to endorse or promote products derived
      from this software without specific prior written permission.

    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
    "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
    LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
    A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
    HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
    SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
    LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
    DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
    THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
    (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
    OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
    \endcode
*/

/*!
    \page qt-attribution-llvmpipe.html
    \title Mesa llvmpipe
    \ingroup licensing
    \brief MIT License and Boost Software License 1.0

    Mesa is a 3-D graphics library with an API which is very similar to that of OpenGL.
    The llvmpipe software renderer allows running of OpenGL applications without any
    hardware / driver support.

    Shipped as part of the binary packages for Windows (opengl32sw.dll).

    \badcode
    Copyright (C) 1999-2007  Brian Paul.
    \endcode

    \l {https://spdx.org/licenses/MIT.html}
       {MIT License}
    \l {https://spdx.org/licenses/BSL-1.0.html}
       {Boost Software License 1.0}

    \badcode
    Copyright (C) 1999-2007  Brian Paul   All Rights Reserved.

    Permission is hereby granted, free of charge, to any person obtaining a
    copy of this software and associated documentation files (the "Software"),
    to deal in the Software without restriction, including without limitation
    the rights to use, copy, modify, merge, publish, distribute, sublicense,
    and/or sell copies of the Software, and to permit persons to whom the
    Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included
    in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
    OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
    FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
    BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
    AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
    CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
    \endcode

    \badcode
    Copyright (c) 2013-2016 The Khronos Group Inc.

    Permission is hereby granted, free of charge, to any person obtaining a
    copy of this software and/or associated documentation files (the
    "Materials"), to deal in the Materials without restriction, including
    without limitation the rights to use, copy, modify, merge, publish,
    distribute, sublicense, and/or sell copies of the Materials, and to
    permit persons to whom the Materials are furnished to do so, subject to
    the following conditions:

    The above copyright notice and this permission notice shall be included
    in all copies or substantial portions of the Materials.

    THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
    EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
    MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
    IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
    CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
    TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
    MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
    \endcode

    \badcode
    C11 <threads.h> emulation library

    (C) Copyright yohhoy 2012.
    Distributed under the Boost Software License, Version 1.0.

    Permission is hereby granted, free of charge, to any person or organization
    obtaining a copy of the software and accompanying documentation covered by
    this license (the "Software") to use, reproduce, display, distribute,
    execute, and transmit the Software, and to prepare [[derivative work]]s of the
    Software, and to permit third-parties to whom the Software is furnished to
    do so, all subject to the following:

    The copyright notices in the Software and this entire statement, including
    the above license grant, this restriction and the following disclaimer,
    must be included in all copies of the Software, in whole or in part, and
    all derivative works of the Software, unless such copies or derivative
    works are solely in the form of machine-executable object code generated by
    a source language processor.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
    IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
    FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
    SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
    FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
    ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
    DEALINGS IN THE SOFTWARE.
    \endcode
*/

/*!
    \page qt-attribution-llvm.html
    \title LLVM Attribution
    \ingroup licensing
    \brief University of Illinois/NCSA Open Source License, BSD licenses

    The provided binaries of Qt include a static copy of LLVM inside the \b qdoc
    and \b lupdate binaries.

    Most of LLVM is under the \e{University of Illinois/NCSA Open Source License}:

    \badcode
    University of Illinois/NCSA
    Open Source License

    Copyright (c) 2003-2017 University of Illinois at Urbana-Champaign.
    All rights reserved.

    Developed by:

        LLVM Team

        University of Illinois at Urbana-Champaign

        http://llvm.org

    Permission is hereby granted, free of charge, to any person obtaining a copy of
    this software and associated documentation files (the "Software"), to deal with
    the Software without restriction, including without limitation the rights to
    use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
    of the Software, and to permit persons to whom the Software is furnished to do
    so, subject to the following conditions:

        * Redistributions of source code must retain the above copyright notice,
          this list of conditions and the following disclaimers.

        * Redistributions in binary form must reproduce the above copyright notice,
          this list of conditions and the following disclaimers in the
          documentation and/or other materials provided with the distribution.

        * Neither the names of the LLVM Team, University of Illinois at
          Urbana-Champaign, nor the names of its contributors may be used to
          endorse or promote products derived from this Software without specific
          prior written permission.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
    IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
    FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
    CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
    LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
    OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
    SOFTWARE.
    \endcode

    Furthermore, LLVM contains code from OpenBSD regex :

    \badcode
    $OpenBSD: COPYRIGHT,v 1.3 2003/06/02 20:18:36 millert Exp $

    Copyright 1992, 1993, 1994 Henry Spencer.  All rights reserved.
    This software is not subject to any license of the American Telephone
    and Telegraph Company or of the Regents of the University of California.

    Permission is granted to anyone to use this software for any purpose on
    any computer system, and to alter it and redistribute it, subject
    to the following restrictions:

    1. The author is not responsible for the consequences of use of this
       software, no matter how awful, even if they arise from flaws in it.

    2. The origin of this software must not be misrepresented, either by
       explicit claim or by omission.  Since few users ever read sources,
       credits must appear in the documentation.

    3. Altered versions must be plainly marked as such, and must not be
       misrepresented as being the original software.  Since few users
       ever read sources, credits must appear in the documentation.

    4. This notice may not be removed or altered.
    \endcode

    \badcode
    Copyright (c) 1994
    The Regents of the University of California.  All rights reserved.

    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions
    are met:
    1. Redistributions of source code must retain the above copyright
       notice, this list of conditions and the following disclaimer.
    2. Redistributions in binary form must reproduce the above copyright
       notice, this list of conditions and the following disclaimer in the
       documentation and/or other materials provided with the distribution.
    3. Neither the name of the University nor the names of its contributors
       may be used to endorse or promote products derived from this software
       without specific prior written permission.

    THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
    ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
    ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
    FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
    DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
    OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
    HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
    LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
    OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
    SUCH DAMAGE.

    @(#)COPYRIGHT    8.1 (Berkeley) 3/16/94
    \endcode

    Furthermore, LLVM contains code from md5:

    \badcode
    This is an OpenSSL-compatible implementation of the RSA Data Security, Inc.
    MD5 Message-Digest Algorithm (RFC 1321).

    Homepage:
    http://openwall.info/wiki/people/solar/software/public-domain-source-code/md5

    Author:
    Alexander Peslyak, better known as Solar Designer <solar at openwall.com>

    This software was written by Alexander Peslyak in 2001.  No copyright is
    claimed, and the software is hereby placed in the public domain.
    In case this attempt to disclaim copyright and place the software in the
    public domain is deemed null and void, then the software is
    Copyright (c) 2001 Alexander Peslyak and it is hereby released to the
    general public under the following terms:

    Redistribution and use in source and binary forms, with or without
    modification, are permitted.

    There's ABSOLUTELY NO WARRANTY, express or implied.

    (This is a heavily cut-down "BSD license".)

    This differs from Colin Plumb's older public domain implementation in that
    no exactly 32-bit integer data type is required (any 32-bit or wider
    unsigned integer data type will do), there's no compile-time endianness
    configuration, and the function prototypes match OpenSSL's.  No code from
    Colin Plumb's implementation has been reused; this comment merely compares
    the properties of the two independent implementations.

    The primary goals of this implementation are portability and ease of use.
    It is meant to be fast, but not as fast as possible.  Some known
    optimizations are not included to reduce source code size and avoid
    compile-time configuration.
    \endcode
*/
