[
    {
       "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", "configure",
                                 ".cmake.conf", ".tag", "ci_config_linux.json", ".yaml",
                                 ".qrc"],
        "location": {
            "": {
                "comment": "File with other endings also belong to the build system file type",
                "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"]
                  }
        }
    },
    {
        "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": "",
                "file type": "tools",
                "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", ".qdoc.sample", "README.md",
                                 "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": "",
                "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": "",
                "file type": "module and plugin",
                "spdx": ["LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only"]
            },
            "tests/": {
                "comment": "",
                "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"]
            },
            "util/": {
                "comment": "Default",
                "file type": "util",
                "spdx": ["LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0"]
            },
            "src/core5/codecs/(qbig5codec|qeucjpcodec|qeuckrcodec|qgb18030codec|qjiscodec|qsjiscodec|qtsciicodec).cpp": {
                "comment": "license from REUSE.toml not visible when checking the headers",
                "file type": "3rd party mix",
                "spdx": ["LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only AND BSD-2-Clause",
                          "LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only"]
            }
        }
    }
]
