[
    {
       "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",
                                 "Makefile", ".conf", ".yml", ".cfg", ".yaml",
                                 ".tag", ".dynlist", "cmake.in", "Info.plist", ".prf",
                                 ".gradle", ".in"],
        "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 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", ".qdoc.sample", "README.md",
                                 "README", "README.txt", "qt_attribution.json",
                                 ".md", ".dox", "qtdeclarative.doxy"],
        "location":{
            "": {
                "comment": "",
                "file type": "documentation",
                "spdx": ["LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only"]
            },
            "tests/benchmarks/qml/binding/data/": {
                "comment": "",
                "file type": "test",
                "spdx": ["LicenseRef-Qt-Commercial OR GPL-3.0-only"]
            },
            "tests/auto/quick/qquicktextdocument/data/hello.md": {
                "comment": "",
                "file type": "test",
                "spdx": ["LicenseRef-Qt-Commercial OR GPL-3.0-only"]
            },
            "src/quickcontrols/universal/README.md": {
                "comment": "",
                "file type": "3rd party",
                "spdx": ["Unlicense"]
            }

        }
    },
    {
       "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"]
            },
            "coin/": {
                "comment": "Default",
                "file type": "build system",
                "spdx": ["BSD-3-Clause"]
            },
            "src/quickcontrols/qmldir": {
                "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"]
            },
            "src/quick/items/syncexcludes": {
                "comment": "Default",
                "file type": "build system",
                "spdx": ["BSD-3-Clause"]
            },
            "tests/manual/painterpathquickshape/FONTLOG.txt": {
                "comment": "",
                "file type": "documentation 3rd party",
                "spdx": ["OFL-1.1"]
            },
            "tests/manual/painterpathquickshape/OFL-FAQ.txt": {
                "comment": "",
                "file type": "documentation 3rd party",
                "spdx": ["OFL-1.1"]
            },
            "tests/manual/painterpathquickshape/(1535737773.svg|hand-print.svg|peace_victory.svg)": {
                "comment": "Public domain",
                "file type": "3rd party",
                "spdx": ["CC0-1.0"]
            },
            "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"]
            },
            "src/qmlcompiler/": {
                "comment": "",
                "file type": "tools and utils",
                "spdx": ["LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0"]
            },
            "src/plugins/qmlls/": {
                "comment": "",
                "file type": "tools and utils",
                "spdx": ["LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0"]
            },
            "src/plugins/qmllint/": {
                "comment": "",
                "file type": "tools and utils",
                "spdx": ["LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0"]
            },
            "src/qmltoolingsettings/": {
                "comment": "",
                "file type": "tools and utils",
                "spdx": ["LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0"]
            },
            "src/qmltyperegistrar/": {
                "comment": "",
                "file type": "tools and utils",
                "spdx": ["LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0"]
            },
            "(examples/|.*)(.*)/doc/images/": {
                "comment": "Default",
                "file type": "documentation",
                "spdx": ["LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only"]
            },
            ".*/doc/src/": {
                "comment": "This is example and snippets",
                "file type": "examples and snippets",
                "spdx": ["LicenseRef-Qt-Commercial OR BSD-3-Clause"]
            },
            "tests/": {
                "comment": "",
                "file type": "test",
                "spdx": ["LicenseRef-Qt-Commercial OR GPL-3.0-only"]
            },
            "tests/manual/painterpathquickshape/Graziano.ttf": {
                "comment": "",
                "file type": "3rd party",
                "spdx": ["OFL-1.1"]
            },
            "tests/manual/windowembedding/examples/": {
                "comment": "Exception test files",
                "file type": "test",
                "spdx": ["LicenseRef-Qt-Commercial OR GPL-3.0-only"]
            },
            "tests/auto/quick/examples/": {
                "comment": "Exception test files",
                "file type": "test",
                "spdx": ["LicenseRef-Qt-Commercial OR GPL-3.0-only"]
            },
            "examples/quick/quickshapes/weatherforecast/": {
                "comment": "",
                "file type": "examples and snippets",
                "spdx": ["LicenseRef-Qt-Commercial OR BSD-3-Clause", "Apache-2.0", "CC-BY-3.0",
                "LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only", "MIT"]
            },
            "(.*)(examples/|snippets/)": {
                "comment": "Default",
                "file type": "examples and snippets",
                "spdx": ["LicenseRef-Qt-Commercial OR BSD-3-Clause"]
            },
            "tests/auto/quickcontrols/snippets/tst_snippets.cpp": {
                "comment": "Default",
                "file type": "test",
                "spdx": ["LicenseRef-Qt-Commercial OR GPL-3.0-only"]
            },
            "tests/auto/quickcontrols/snippets/": {
                "comment": "Default",
                "file type": "examples and snippets",
                "spdx": ["LicenseRef-Qt-Commercial OR BSD-3-Clause"]
            },
            "tools/": {
                "comment": "",
                "file type": "tools",
                "spdx": ["LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0"]
            },
            "src/quicktestutils/": {
                "comment": "Library only for Qt tests",
                "file type": "util",
                "spdx": ["LicenseRef-Qt-Commercial OR GPL-3.0-only"]
            },
            "src/quickcontrolstestutils/": {
                "comment": "Library only for Qt tests",
                "file type": "test",
                "spdx": ["LicenseRef-Qt-Commercial OR GPL-3.0-only"]
            },
            "examples/quick/quickshapes/weatherforecast/assets/gear-alt-stroke.svg": {
                "comment": "Framework7",
                "file type": "3rd party",
                "spdx": ["MIT"]
            },
            "examples/quick/quickshapes/weatherforecast/Gear_generated.qml": {
                "comment": "Framework7",
                "file type": "3rd party",
                "spdx": ["MIT"]
            },
            "examples/quick/quickshapes/weatherforecast/assets/WorkSans-Regular.ttf": {
                "file type": "3rd party",
                "spdx": ["OFL-1.1"]
            },
            "examples/quick/quickshapes/weatherforecast/assets/Europe.svg": {
                "file type": "3rd party",
                "spdx": ["CC-BY-3.0"]
            },
            "examples/quick/quickshapes/weatherforecast/Europe_generated.qml": {
                "file type": "3rd party",
                "spdx": ["CC-BY-3.0"]
            },
            "examples/quick/quickshapes/weatherforecast/assets/sun-": {
                "file type": "3rd party",
                "spdx": ["Apache-2.0"]
            },
            "examples/quick/quickshapes/weatherforecast/assets/cloud-": {
                "file type": "3rd party",
                "spdx": ["Apache-2.0"]
            },
            "src/quickcontrols/imagine/design/9-patch-export.sketchplugin/Contents/Sketch/": {
                "file type": "3rd party",
                "spdx": ["MIT"]
            },
            "src/quickcontrols/material/impl/ElevationEffect.qml": {
                "comment": "in file license check can't see the mix",
                "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 MIT",
                          "LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only"]
            }
        }
    }
]
