[
    {
        "comment": ["file_pattern_ending: strings matched against the end of a file name.",
                     "location keys: regular expression matched against the beginning of",
                     "the file path (relative to the git submodule root).",
                     "spdx: list of SPDX-License-Expression's allowed in the matching files.",
                     "-------------------------------------------------------",
                     "Files with the following endings are Build System licensed,",
                     "unless they are examples",
                     "Files with other endings can also be build system files"
                     ],
        "file_pattern_ending": ["CMakeLists.txt", ".cmake", ".pro", ".pri", ".prf",
                     "configure", "configure.bat", "cmake.in", "plist.in", "CMakeLists.txt.in",
                     ".cmake.conf", ".tag", ".yaml", "ci_config_linux.json",
                     "configure.json", ".qrc", ".conf", "cfg"],
        "location": {
            "": {
                "comment": "Default",
                "file type": "build system",
                "spdx": ["BSD-3-Clause"]
            },
            "(.*)(examples/|snippets/)": {
                "comment": "Example takes precedence",
                "file type": "examples and snippets",
                "spdx": ["LicenseRef-Qt-Commercial OR BSD-3-Clause"]
            },
            "tests/manual/examples/": {
                "comment": "Example takes precedence",
                "file type": "examples and snippets",
                "spdx": ["LicenseRef-Qt-Commercial OR BSD-3-Clause"]
            }
        }
    },
    {
        "comments": ["Files with the following endings are infrastructure licensed"],
        "file_pattern_ending": [".gitattributes", ".gitignore", ".gitmodules", ".gitreview",
                                "clang-format", "licenseRule.json", "REUSE.toml"],
        "location":{
            "": {
                "comment": "Default",
                "file type": "infrastructure",
                "spdx": ["LicenseRef-Qt-Commercial OR BSD-3-Clause"]
            }
        }
    },
    {
        "comments": ["Files with the following endings are Tool licensed,",
                      "unless they are examples.",
                      "Files with other endings can also be tool files."],
        "file_pattern_ending": [".sh", ".py", ".pl", ".bat", ".ps1"],
        "location":{
            "": {
                "comment": "Default",
                "file type": "tools and utils",
                "spdx": ["LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0"]
            },
            "(.*)(examples/|snippets/)": {
                "comment": "Example takes precedence",
                "file type": "examples and snippets",
                "spdx": ["LicenseRef-Qt-Commercial OR BSD-3-Clause"]
            }
        }
    },
    {
        "comment": "Files with the following endings are Documentation licensed.",
        "file_pattern_ending": [".qdoc", ".qdocinc" , ".qdocconf", "README", "qt_attribution.json"],
        "location":{
            "": {
                "comment": "",
                "file type": "documentation",
                "spdx": ["LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only"]
            }
        }
    },
    {
        "comment": ["All other files",
                     "The licensing is defined only by the file location in the Qt module repository.",
                     "NO <file_pattern_ending> key for this case!",
                     "This needs to be the last entry of the file."],
        "location": {
            "": {
                "comment": "Default",
                "file type": "module and plugin",
                "spdx": ["LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only"]
            },
            "dist/": {
                "comment": "Default",
                "file type": "documentation",
                "spdx": ["LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only"]
            },
            "src/": {
                "comment": "Default",
                "file type": "module and plugin",
                "spdx": ["LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only"]
            },
            "tools/": {
                "comment": "Default",
                "file type": "tools and utils",
                "spdx": ["LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0"]
            },
            "tests/": {
                "comment": "Default",
                "file type": "test",
                "spdx": ["LicenseRef-Qt-Commercial OR GPL-3.0-only"]
            },
            "(.*)(examples/|snippets/)": {
                "comment": "Default",
                "file type": "examples and snippets",
                "spdx": ["LicenseRef-Qt-Commercial OR BSD-3-Clause"]
            },
            "(.*|examples).*/doc/images/": {
                "comment": "Default",
                "file type": "documentation",
                "spdx": ["LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only"]
            }
         }
    }
]
