from check_index import *

import sys
import os

def check_objects(o, g):
    assert is_list(o)
    assert len(o) == 1
    check_index_object(o[0], "codemodel", 2, 0, check_object_codemodel(g))

def check_backtrace(t, b, backtrace):
    btg = t["backtraceGraph"]
    for expected in backtrace:
        assert is_int(b)
        node = btg["nodes"][b]
        expected_keys = ["file"]
        assert matches(btg["files"][node["file"]], expected["file"])

        if expected["line"] is not None:
            expected_keys.append("line")
            assert is_int(node["line"], expected["line"])

        if expected["command"] is not None:
            expected_keys.append("command")
            assert is_int(node["command"])
            assert is_string(btg["commands"][node["command"]], expected["command"])

        if expected["hasParent"]:
            expected_keys.append("parent")
            assert is_int(node["parent"])
            b = node["parent"]
        else:
            b = None

        assert sorted(node.keys()) == sorted(expected_keys)

    assert b is None

def check_directory(c):
    def _check(actual, expected):
        assert is_dict(actual)
        expected_keys = ["build", "source", "projectIndex"]
        assert matches(actual["build"], expected["build"])

        assert is_int(actual["projectIndex"])
        assert is_string(c["projects"][actual["projectIndex"]]["name"], expected["projectName"])

        if expected["parentSource"] is not None:
            expected_keys.append("parentIndex")
            assert is_int(actual["parentIndex"])
            assert matches(c["directories"][actual["parentIndex"]]["source"], expected["parentSource"])

        if expected["childSources"] is not None:
            expected_keys.append("childIndexes")
            check_list_match(lambda a, e: matches(c["directories"][a]["source"], e),
                             actual["childIndexes"], expected["childSources"],
                             missing_exception=lambda e: "Child source: %s" % e,
                             extra_exception=lambda a: "Child source: %s" % a["source"])

        if expected["targetIds"] is not None:
            expected_keys.append("targetIndexes")
            check_list_match(lambda a, e: matches(c["targets"][a]["id"], e),
                             actual["targetIndexes"], expected["targetIds"],
                             missing_exception=lambda e: "Target ID: %s" % e,
                             extra_exception=lambda a: "Target ID: %s" % c["targets"][a]["id"])

        if expected["minimumCMakeVersion"] is not None:
            expected_keys.append("minimumCMakeVersion")
            assert is_dict(actual["minimumCMakeVersion"])
            assert sorted(actual["minimumCMakeVersion"].keys()) == ["string"]
            assert is_string(actual["minimumCMakeVersion"]["string"], expected["minimumCMakeVersion"])

        if expected["hasInstallRule"] is not None:
            expected_keys.append("hasInstallRule")
            assert is_bool(actual["hasInstallRule"], expected["hasInstallRule"])

        assert sorted(actual.keys()) == sorted(expected_keys)

    return _check

def check_target_backtrace_graph(t):
    btg = t["backtraceGraph"]
    assert is_dict(btg)
    assert sorted(btg.keys()) == ["commands", "files", "nodes"]
    assert is_list(btg["commands"])

    for c in btg["commands"]:
        assert is_string(c)

    for f in btg["files"]:
        assert is_string(f)

    for n in btg["nodes"]:
        expected_keys = ["file"]
        assert is_dict(n)
        assert is_int(n["file"])
        assert 0 <= n["file"] < len(btg["files"])

        if "line" in n:
            expected_keys.append("line")
            assert is_int(n["line"])

        if "command" in n:
            expected_keys.append("command")
            assert is_int(n["command"])
            assert 0 <= n["command"] < len(btg["commands"])

        if "parent" in n:
            expected_keys.append("parent")
            assert is_int(n["parent"])
            assert 0 <= n["parent"] < len(btg["nodes"])

        assert sorted(n.keys()) == sorted(expected_keys)

def check_target(c):
    def _check(actual, expected):
        assert is_dict(actual)
        assert sorted(actual.keys()) == ["directoryIndex", "id", "jsonFile", "name", "projectIndex"]
        assert is_int(actual["directoryIndex"])
        assert matches(c["directories"][actual["directoryIndex"]]["source"], expected["directorySource"])
        assert is_string(actual["name"], expected["name"])
        assert is_string(actual["jsonFile"])
        assert is_int(actual["projectIndex"])
        assert is_string(c["projects"][actual["projectIndex"]]["name"], expected["projectName"])

        filepath = os.path.join(reply_dir, actual["jsonFile"])
        with open(filepath) as f:
            obj = json.load(f)

        expected_keys = ["name", "id", "type", "backtraceGraph", "paths", "sources"]
        assert is_dict(obj)
        assert is_string(obj["name"], expected["name"])
        assert matches(obj["id"], expected["id"])
        assert is_string(obj["type"], expected["type"])
        check_target_backtrace_graph(obj)

        assert is_dict(obj["paths"])
        assert sorted(obj["paths"].keys()) == ["build", "source"]
        assert matches(obj["paths"]["build"], expected["build"])
        assert matches(obj["paths"]["source"], expected["source"])

        def check_source(actual, expected):
            assert is_dict(actual)
            expected_keys = ["path"]

            if expected["compileGroupLanguage"] is not None:
                expected_keys.append("compileGroupIndex")
                assert is_string(obj["compileGroups"][actual["compileGroupIndex"]]["language"], expected["compileGroupLanguage"])

            if expected["sourceGroupName"] is not None:
                expected_keys.append("sourceGroupIndex")
                assert is_string(obj["sourceGroups"][actual["sourceGroupIndex"]]["name"], expected["sourceGroupName"])

            if expected["isGenerated"] is not None:
                expected_keys.append("isGenerated")
                assert is_bool(actual["isGenerated"], expected["isGenerated"])

            if expected["backtrace"] is not None:
                expected_keys.append("backtrace")
                check_backtrace(obj, actual["backtrace"], expected["backtrace"])

            assert sorted(actual.keys()) == sorted(expected_keys)

        check_list_match(lambda a, e: matches(a["path"], e["path"]), obj["sources"],
                         expected["sources"], check=check_source,
                         check_exception=lambda a, e: "Source file: %s" % a["path"],
                         missing_exception=lambda e: "Source file: %s" % e["path"],
                         extra_exception=lambda a: "Source file: %s" % a["path"])

        if expected["backtrace"] is not None:
            expected_keys.append("backtrace")
            check_backtrace(obj, obj["backtrace"], expected["backtrace"])

        if expected["folder"] is not None:
            expected_keys.append("folder")
            assert is_dict(obj["folder"])
            assert sorted(obj["folder"].keys()) == ["name"]
            assert is_string(obj["folder"]["name"], expected["folder"])

        if expected["nameOnDisk"] is not None:
            expected_keys.append("nameOnDisk")
            assert matches(obj["nameOnDisk"], expected["nameOnDisk"])

        if expected["artifacts"] is not None:
            expected_keys.append("artifacts")

            def check_artifact(actual, expected):
                assert is_dict(actual)
                assert sorted(actual.keys()) == ["path"]

            check_list_match(lambda a, e: matches(a["path"], e["path"]),
                             obj["artifacts"], expected["artifacts"],
                             check=check_artifact,
                             check_exception=lambda a, e: "Artifact: %s" % a["path"],
                             missing_exception=lambda e: "Artifact: %s" % e["path"],
                             extra_exception=lambda a: "Artifact: %s" % a["path"])

        if expected["isGeneratorProvided"] is not None:
            expected_keys.append("isGeneratorProvided")
            assert is_bool(obj["isGeneratorProvided"], expected["isGeneratorProvided"])

        if expected["install"] is not None:
            expected_keys.append("install")
            assert is_dict(obj["install"])
            assert sorted(obj["install"].keys()) == ["destinations", "prefix"]

            assert is_dict(obj["install"]["prefix"])
            assert sorted(obj["install"]["prefix"].keys()) == ["path"]
            assert matches(obj["install"]["prefix"]["path"], expected["install"]["prefix"])

            def check_install_destination(actual, expected):
                assert is_dict(actual)
                expected_keys = ["path"]

                if expected["backtrace"] is not None:
                    expected_keys.append("backtrace")
                    check_backtrace(obj, actual["backtrace"], expected["backtrace"])

                assert sorted(actual.keys()) == sorted(expected_keys)

            check_list_match(lambda a, e: matches(a["path"], e["path"]),
                             obj["install"]["destinations"], expected["install"]["destinations"],
                             check=check_install_destination,
                             check_exception=lambda a, e: "Install path: %s" % a["path"],
                             missing_exception=lambda e: "Install path: %s" % e["path"],
                             extra_exception=lambda a: "Install path: %s" % a["path"])

        if expected["link"] is not None:
            expected_keys.append("link")
            assert is_dict(obj["link"])
            link_keys = ["language"]

            assert is_string(obj["link"]["language"], expected["link"]["language"])

            # FIXME: Properly test commandFragments
            if "commandFragments" in obj["link"]:
                link_keys.append("commandFragments")
                assert is_list(obj["link"]["commandFragments"])
                for f in obj["link"]["commandFragments"]:
                    assert is_dict(f)
                    assert sorted(f.keys()) == ["fragment", "role"]
                    assert is_string(f["fragment"])
                    assert is_string(f["role"])
                    assert f["role"] in ("flags", "libraries", "libraryPath", "frameworkPath")

            if expected["link"]["lto"] is not None:
                link_keys.append("lto")
                assert is_bool(obj["link"]["lto"], expected["link"]["lto"])

            # FIXME: Properly test sysroot
            if "sysroot" in obj["link"]:
                link_keys.append("sysroot")
                assert is_string(obj["link"]["sysroot"])

            assert sorted(obj["link"].keys()) == sorted(link_keys)

        if expected["archive"] is not None:
            expected_keys.append("archive")
            assert is_dict(obj["archive"])
            archive_keys = []

            # FIXME: Properly test commandFragments
            if "commandFragments" in obj["archive"]:
                archive_keys.append("commandFragments")
                assert is_list(obj["archive"]["commandFragments"])
                for f in obj["archive"]["commandFragments"]:
                    assert is_dict(f)
                    assert sorted(f.keys()) == ["fragment", "role"]
                    assert is_string(f["fragment"])
                    assert is_string(f["role"])
                    assert f["role"] in ("flags")

            if expected["archive"]["lto"] is not None:
                archive_keys.append("lto")
                assert is_bool(obj["archive"]["lto"], expected["archive"]["lto"])

            assert sorted(obj["archive"].keys()) == sorted(archive_keys)

        if expected["dependencies"] is not None:
            expected_keys.append("dependencies")

            def check_dependency(actual, expected):
                assert is_dict(actual)
                expected_keys = ["id"]

                if expected["backtrace"] is not None:
                    expected_keys.append("backtrace")
                    check_backtrace(obj, actual["backtrace"], expected["backtrace"])

                assert sorted(actual.keys()) == sorted(expected_keys)

            check_list_match(lambda a, e: matches(a["id"], e["id"]),
                             obj["dependencies"], expected["dependencies"],
                             check=check_dependency,
                             check_exception=lambda a, e: "Dependency ID: %s" % a["id"],
                             missing_exception=lambda e: "Dependency ID: %s" % e["id"],
                             extra_exception=lambda a: "Dependency ID: %s" % a["id"])

        if expected["sourceGroups"] is not None:
            expected_keys.append("sourceGroups")

            def check_source_group(actual, expected):
                assert is_dict(actual)
                assert sorted(actual.keys()) == ["name", "sourceIndexes"]

                check_list_match(lambda a, e: matches(obj["sources"][a]["path"], e),
                                 actual["sourceIndexes"], expected["sourcePaths"],
                                 missing_exception=lambda e: "Source path: %s" % e,
                                 extra_exception=lambda a: "Source path: %s" % obj["sources"][a]["path"])

            check_list_match(lambda a, e: is_string(a["name"], e["name"]),
                             obj["sourceGroups"], expected["sourceGroups"],
                             check=check_source_group,
                             check_exception=lambda a, e: "Source group: %s" % a["name"],
                             missing_exception=lambda e: "Source group: %s" % e["name"],
                             extra_exception=lambda a: "Source group: %s" % a["name"])

        if expected["compileGroups"] is not None:
            expected_keys.append("compileGroups")

            def check_compile_group(actual, expected):
                assert is_dict(actual)
                expected_keys = ["sourceIndexes", "language"]

                check_list_match(lambda a, e: matches(obj["sources"][a]["path"], e),
                                 actual["sourceIndexes"], expected["sourcePaths"],
                                 missing_exception=lambda e: "Source path: %s" % e,
                                 extra_exception=lambda a: "Source path: %s" % obj["sources"][a]["path"])

                # FIXME: Properly test compileCommandFragments
                if "compileCommandFragments" in actual:
                    expected_keys.append("compileCommandFragments")
                    assert is_list(actual["compileCommandFragments"])
                    for f in actual["compileCommandFragments"]:
                        assert is_dict(f)
                        assert sorted(f.keys()) == ["fragment"]
                        assert is_string(f["fragment"])

                if expected["includes"] is not None:
                    expected_keys.append("includes")

                    def check_include(actual, expected):
                        assert is_dict(actual)
                        expected_keys = ["path"]

                        if expected["isSystem"] is not None:
                            expected_keys.append("isSystem")
                            assert is_bool(actual["isSystem"], expected["isSystem"])

                        if expected["backtrace"] is not None:
                            expected_keys.append("backtrace")
                            check_backtrace(obj, actual["backtrace"], expected["backtrace"])

                        assert sorted(actual.keys()) == sorted(expected_keys)

                    check_list_match(lambda a, e: matches(a["path"], e["path"]),
                                     actual["includes"], expected["includes"],
                                     check=check_include,
                                     check_exception=lambda a, e: "Include path: %s" % a["path"],
                                     missing_exception=lambda e: "Include path: %s" % e["path"],
                                     extra_exception=lambda a: "Include path: %s" % a["path"])

                if expected["defines"] is not None:
                    expected_keys.append("defines")

                    def check_define(actual, expected):
                        assert is_dict(actual)
                        expected_keys = ["define"]

                        if expected["backtrace"] is not None:
                            expected_keys.append("backtrace")
                            check_backtrace(obj, actual["backtrace"], expected["backtrace"])

                        assert sorted(actual.keys()) == sorted(expected_keys)

                    check_list_match(lambda a, e: is_string(a["define"], e["define"]),
                                     actual["defines"], expected["defines"],
                                     check=check_define,
                                     check_exception=lambda a, e: "Define: %s" % a["define"],
                                     missing_exception=lambda e: "Define: %s" % e["define"],
                                     extra_exception=lambda a: "Define: %s" % a["define"])

                # FIXME: Properly test sysroot
                if "sysroot" in actual:
                    expected_keys.append("sysroot")
                    assert is_string(actual["sysroot"])

                assert sorted(actual.keys()) == sorted(expected_keys)

            check_list_match(lambda a, e: is_string(a["language"], e["language"]),
                             obj["compileGroups"], expected["compileGroups"],
                             check=check_compile_group,
                             check_exception=lambda a, e: "Compile group: %s" % a["language"],
                             missing_exception=lambda e: "Compile group: %s" % e["language"],
                             extra_exception=lambda a: "Compile group: %s" % a["language"])

        assert sorted(obj.keys()) == sorted(expected_keys)

    return _check

def check_project(c):
    def _check(actual, expected):
        assert is_dict(actual)
        expected_keys = ["name", "directoryIndexes"]

        check_list_match(lambda a, e: matches(c["directories"][a]["source"], e),
                         actual["directoryIndexes"], expected["directorySources"],
                         missing_exception=lambda e: "Directory source: %s" % e,
                         extra_exception=lambda a: "Directory source: %s" % c["directories"][a]["source"])

        if expected["parentName"] is not None:
            expected_keys.append("parentIndex")
            assert is_int(actual["parentIndex"])
            assert is_string(c["projects"][actual["parentIndex"]]["name"], expected["parentName"])

        if expected["childNames"] is not None:
            expected_keys.append("childIndexes")
            check_list_match(lambda a, e: is_string(c["projects"][a]["name"], e),
                             actual["childIndexes"], expected["childNames"],
                             missing_exception=lambda e: "Child name: %s" % e,
                             extra_exception=lambda a: "Child name: %s" % c["projects"][a]["name"])

        if expected["targetIds"] is not None:
            expected_keys.append("targetIndexes")
            check_list_match(lambda a, e: matches(c["targets"][a]["id"], e),
                             actual["targetIndexes"], expected["targetIds"],
                             missing_exception=lambda e: "Target ID: %s" % e,
                             extra_exception=lambda a: "Target ID: %s" % c["targets"][a]["id"])

        assert sorted(actual.keys()) == sorted(expected_keys)

    return _check

def gen_check_directories(c, g):
    expected = [
        {
            "source": "^\\.$",
            "build": "^\\.$",
            "parentSource": None,
            "childSources": [
                "^alias$",
                "^custom$",
                "^cxx$",
                "^imported$",
                "^object$",
                "^.*/Tests/RunCMake/FileAPIExternalSource$",
                "^dir$",
            ],
            "targetIds": [
                "^ALL_BUILD::@6890427a1f51a3e7e1df$",
                "^ZERO_CHECK::@6890427a1f51a3e7e1df$",
                "^c_exe::@6890427a1f51a3e7e1df$",
                "^c_lib::@6890427a1f51a3e7e1df$",
                "^c_shared_exe::@6890427a1f51a3e7e1df$",
                "^c_shared_lib::@6890427a1f51a3e7e1df$",
                "^c_static_exe::@6890427a1f51a3e7e1df$",
                "^c_static_lib::@6890427a1f51a3e7e1df$",
                "^interface_exe::@6890427a1f51a3e7e1df$",
            ],
            "projectName": "codemodel-v2",
            "minimumCMakeVersion": "3.12",
            "hasInstallRule": True,
        },
        {
            "source": "^alias$",
            "build": "^alias$",
            "parentSource": "^\\.$",
            "childSources": None,
            "targetIds": [
                "^ALL_BUILD::@53632cba2752272bb008$",
                "^ZERO_CHECK::@53632cba2752272bb008$",
                "^c_alias_exe::@53632cba2752272bb008$",
                "^cxx_alias_exe::@53632cba2752272bb008$",
            ],
            "projectName": "Alias",
            "minimumCMakeVersion": "3.12",
            "hasInstallRule": None,
        },
        {
            "source": "^custom$",
            "build": "^custom$",
            "parentSource": "^\\.$",
            "childSources": None,
            "targetIds": [
                "^ALL_BUILD::@c11385ffed57b860da63$",
                "^ZERO_CHECK::@c11385ffed57b860da63$",
                "^custom_exe::@c11385ffed57b860da63$",
                "^custom_tgt::@c11385ffed57b860da63$",
            ],
            "projectName": "Custom",
            "minimumCMakeVersion": "3.12",
            "hasInstallRule": None,
        },
        {
            "source": "^cxx$",
            "build": "^cxx$",
            "parentSource": "^\\.$",
            "childSources": None,
            "targetIds": [
                "^ALL_BUILD::@a56b12a3f5c0529fb296$",
                "^ZERO_CHECK::@a56b12a3f5c0529fb296$",
                "^cxx_exe::@a56b12a3f5c0529fb296$",
                "^cxx_lib::@a56b12a3f5c0529fb296$",
                "^cxx_shared_exe::@a56b12a3f5c0529fb296$",
                "^cxx_shared_lib::@a56b12a3f5c0529fb296$",
                "^cxx_static_exe::@a56b12a3f5c0529fb296$",
                "^cxx_static_lib::@a56b12a3f5c0529fb296$",
            ],
            "projectName": "Cxx",
            "minimumCMakeVersion": "3.12",
            "hasInstallRule": None,
        },
        {
            "source": "^imported$",
            "build": "^imported$",
            "parentSource": "^\\.$",
            "childSources": None,
            "targetIds": [
                "^ALL_BUILD::@ba7eb709d0b48779c6c8$",
                "^ZERO_CHECK::@ba7eb709d0b48779c6c8$",
                "^link_imported_exe::@ba7eb709d0b48779c6c8$",
                "^link_imported_interface_exe::@ba7eb709d0b48779c6c8$",
                "^link_imported_object_exe::@ba7eb709d0b48779c6c8$",
                "^link_imported_shared_exe::@ba7eb709d0b48779c6c8$",
                "^link_imported_static_exe::@ba7eb709d0b48779c6c8$",
            ],
            "projectName": "Imported",
            "minimumCMakeVersion": "3.12",
            "hasInstallRule": None,
        },
        {
            "source": "^object$",
            "build": "^object$",
            "parentSource": "^\\.$",
            "childSources": None,
            "targetIds": [
                "^ALL_BUILD::@5ed5358f70faf8d8af7a$",
                "^ZERO_CHECK::@5ed5358f70faf8d8af7a$",
                "^c_object_exe::@5ed5358f70faf8d8af7a$",
                "^c_object_lib::@5ed5358f70faf8d8af7a$",
                "^cxx_object_exe::@5ed5358f70faf8d8af7a$",
                "^cxx_object_lib::@5ed5358f70faf8d8af7a$",
            ],
            "projectName": "Object",
            "minimumCMakeVersion": "3.13",
            "hasInstallRule": True,
        },
        {
            "source": "^dir$",
            "build": "^dir$",
            "parentSource": "^\\.$",
            "childSources": [
                "^dir/dir$",
            ],
            "targetIds": None,
            "projectName": "codemodel-v2",
            "minimumCMakeVersion": "3.12",
            "hasInstallRule": None,
        },
        {
            "source": "^dir/dir$",
            "build": "^dir/dir$",
            "parentSource": "^dir$",
            "childSources": None,
            "targetIds": None,
            "projectName": "codemodel-v2",
            "minimumCMakeVersion": "3.12",
            "hasInstallRule": None,
        },
        {
            "source": "^.*/Tests/RunCMake/FileAPIExternalSource$",
            "build": "^.*/Tests/RunCMake/FileAPI/FileAPIExternalBuild$",
            "parentSource": "^\\.$",
            "childSources": None,
            "targetIds": [
                "^ALL_BUILD::@[0-9a-f]+$",
                "^ZERO_CHECK::@[0-9a-f]+$",
                "^generated_exe::@[0-9a-f]+$",
            ],
            "projectName": "External",
            "minimumCMakeVersion": "3.12",
            "hasInstallRule": None,
        },
    ]

    if matches(g, "^Visual Studio "):
        for e in expected:
            if e["parentSource"] is not None:
                e["targetIds"] = filter_list(lambda t: not matches(t, "^\\^ZERO_CHECK"), e["targetIds"])

    elif g == "Xcode":
        if ';' in os.environ.get("CMAKE_OSX_ARCHITECTURES", ""):
            for e in expected:
                e["targetIds"] = filter_list(lambda t: not matches(t, "^\\^(link_imported_object_exe)"), e["targetIds"])

    else:
        for e in expected:
            e["targetIds"] = filter_list(lambda t: not matches(t, "^\\^(ALL_BUILD|ZERO_CHECK)"), e["targetIds"])

    return expected

def check_directories(c, g):
    check_list_match(lambda a, e: matches(a["source"], e["source"]), c["directories"], gen_check_directories(c, g),
                     check=check_directory(c),
                     check_exception=lambda a, e: "Directory source: %s" % a["source"],
                     missing_exception=lambda e: "Directory source: %s" % e["source"],
                     extra_exception=lambda a: "Directory source: %s" % a["source"])

def gen_check_targets(c, g, inSource):
    expected = [
        {
            "name": "ALL_BUILD",
            "id": "^ALL_BUILD::@6890427a1f51a3e7e1df$",
            "directorySource": "^\\.$",
            "projectName": "codemodel-v2",
            "type": "UTILITY",
            "isGeneratorProvided": True,
            "sources": [
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/CMakeFiles/ALL_BUILD$",
                    "isGenerated": True,
                    "sourceGroupName": "",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/CMakeFiles/ALL_BUILD\\.rule$",
                    "isGenerated": True,
                    "sourceGroupName": "CMake Rules",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/CMakeFiles/ALL_BUILD$",
                    ],
                },
                {
                    "name": "CMake Rules",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/CMakeFiles/ALL_BUILD\\.rule$",
                    ],
                },
            ],
            "compileGroups": None,
            "backtrace": [
                {
                    "file": "^CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": None,
            "artifacts": None,
            "build": "^\\.$",
            "source": "^\\.$",
            "install": None,
            "link": None,
            "archive": None,
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@6890427a1f51a3e7e1df$",
                    "backtrace": None,
                },
                {
                    "id": "^interface_exe::@6890427a1f51a3e7e1df$",
                    "backtrace": None,
                },
                {
                    "id": "^c_lib::@6890427a1f51a3e7e1df$",
                    "backtrace": None,
                },
                {
                    "id": "^c_exe::@6890427a1f51a3e7e1df$",
                    "backtrace": None,
                },
                {
                    "id": "^c_shared_lib::@6890427a1f51a3e7e1df$",
                    "backtrace": None,
                },
                {
                    "id": "^c_shared_exe::@6890427a1f51a3e7e1df$",
                    "backtrace": None,
                },
                {
                    "id": "^c_static_lib::@6890427a1f51a3e7e1df$",
                    "backtrace": None,
                },
                {
                    "id": "^c_static_exe::@6890427a1f51a3e7e1df$",
                    "backtrace": None,
                },
                {
                    "id": "^c_alias_exe::@53632cba2752272bb008$",
                    "backtrace": None,
                },
                {
                    "id": "^cxx_alias_exe::@53632cba2752272bb008$",
                    "backtrace": None,
                },
                {
                    "id": "^cxx_lib::@a56b12a3f5c0529fb296$",
                    "backtrace": None,
                },
                {
                    "id": "^cxx_exe::@a56b12a3f5c0529fb296$",
                    "backtrace": None,
                },
                {
                    "id": "^cxx_shared_lib::@a56b12a3f5c0529fb296$",
                    "backtrace": None,
                },
                {
                    "id": "^cxx_shared_exe::@a56b12a3f5c0529fb296$",
                    "backtrace": None,
                },
                {
                    "id": "^cxx_static_lib::@a56b12a3f5c0529fb296$",
                    "backtrace": None,
                },
                {
                    "id": "^cxx_static_exe::@a56b12a3f5c0529fb296$",
                    "backtrace": None,
                },
                {
                    "id": "^c_object_lib::@5ed5358f70faf8d8af7a$",
                    "backtrace": None,
                },
                {
                    "id": "^c_object_exe::@5ed5358f70faf8d8af7a$",
                    "backtrace": None,
                },
                {
                    "id": "^cxx_object_lib::@5ed5358f70faf8d8af7a$",
                    "backtrace": None,
                },
                {
                    "id": "^cxx_object_exe::@5ed5358f70faf8d8af7a$",
                    "backtrace": None,
                },
                {
                    "id": "^link_imported_exe::@ba7eb709d0b48779c6c8$",
                    "backtrace": None,
                },
                {
                    "id": "^link_imported_shared_exe::@ba7eb709d0b48779c6c8$",
                    "backtrace": None,
                },
                {
                    "id": "^link_imported_static_exe::@ba7eb709d0b48779c6c8$",
                    "backtrace": None,
                },
                {
                    "id": "^link_imported_object_exe::@ba7eb709d0b48779c6c8$",
                    "backtrace": None,
                },
                {
                    "id": "^link_imported_interface_exe::@ba7eb709d0b48779c6c8$",
                    "backtrace": None,
                },
                {
                    "id": "^custom_exe::@c11385ffed57b860da63$",
                    "backtrace": None,
                },
                {
                    "id": "^generated_exe::@[0-9a-f]+$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "ZERO_CHECK",
            "id": "^ZERO_CHECK::@6890427a1f51a3e7e1df$",
            "directorySource": "^\\.$",
            "projectName": "codemodel-v2",
            "type": "UTILITY",
            "isGeneratorProvided": True,
            "sources": [
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/CMakeFiles/ZERO_CHECK$",
                    "isGenerated": True,
                    "sourceGroupName": "",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/CMakeFiles/ZERO_CHECK\\.rule$",
                    "isGenerated": True,
                    "sourceGroupName": "CMake Rules",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/CMakeFiles/ZERO_CHECK$",
                    ],
                },
                {
                    "name": "CMake Rules",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/CMakeFiles/ZERO_CHECK\\.rule$",
                    ],
                },
            ],
            "compileGroups": None,
            "backtrace": [
                {
                    "file": "^CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": None,
            "artifacts": None,
            "build": "^\\.$",
            "source": "^\\.$",
            "install": None,
            "link": None,
            "archive": None,
            "dependencies": None,
        },
        {
            "name": "interface_exe",
            "id": "^interface_exe::@6890427a1f51a3e7e1df$",
            "directorySource": "^\\.$",
            "projectName": "codemodel-v2",
            "type": "EXECUTABLE",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.c$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "C",
                    "backtrace": [
                        {
                            "file": "^include_test\\.cmake$",
                            "line": 3,
                            "command": "add_executable",
                            "hasParent": True,
                        },
                        {
                            "file": "^include_test\\.cmake$",
                            "line": None,
                            "command": None,
                            "hasParent": True,
                        },
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": 3,
                            "command": "include",
                            "hasParent": True,
                        },
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": None,
                            "command": None,
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": 3,
                            "command": "include",
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "C",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                    "includes": None,
                    "defines": [
                        {
                            "define": "interface_exe_EXPORTS",
                            "backtrace": None,
                        },
                    ],
                },
            ],
            "backtrace": [
                {
                    "file": "^include_test\\.cmake$",
                    "line": 3,
                    "command": "add_executable",
                    "hasParent": True,
                },
                {
                    "file": "^include_test\\.cmake$",
                    "line": None,
                    "command": None,
                    "hasParent": True,
                },
                {
                    "file": "^codemodel-v2\\.cmake$",
                    "line": 3,
                    "command": "include",
                    "hasParent": True,
                },
                {
                    "file": "^codemodel-v2\\.cmake$",
                    "line": None,
                    "command": None,
                    "hasParent": True,
                },
                {
                    "file": "^CMakeLists\\.txt$",
                    "line": 3,
                    "command": "include",
                    "hasParent": True,
                },
                {
                    "file": "^CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^my_interface_exe\\.myexe$",
            "artifacts": [
                {
                    "path": "^bin/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?my_interface_exe\\.myexe$",
                    "_dllExtra": False,
                },
                {
                    "path": "^lib/my_interface_exe\\.imp$",
                    "_aixExtra": True,
                    "_dllExtra": False,
                },
                {
                    "path": "^lib/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?(lib)?my_interface_exe\\.(dll\\.a|lib)$",
                    "_dllExtra": True,
                },
                {
                    "path": "^bin/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?my_interface_exe\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^\\.$",
            "source": "^\\.$",
            "install": None,
            "link": {
                "language": "C",
                "lto": None,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@6890427a1f51a3e7e1df$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "c_lib",
            "id": "^c_lib::@6890427a1f51a3e7e1df$",
            "directorySource": "^\\.$",
            "projectName": "codemodel-v2",
            "type": "STATIC_LIBRARY",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.c$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "C",
                    "backtrace": [
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": 5,
                            "command": "add_library",
                            "hasParent": True,
                        },
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": None,
                            "command": None,
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": 3,
                            "command": "include",
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "C",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^codemodel-v2\\.cmake$",
                    "line": 5,
                    "command": "add_library",
                    "hasParent": True,
                },
                {
                    "file": "^codemodel-v2\\.cmake$",
                    "line": None,
                    "command": None,
                    "hasParent": True,
                },
                {
                    "file": "^CMakeLists\\.txt$",
                    "line": 3,
                    "command": "include",
                    "hasParent": True,
                },
                {
                    "file": "^CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^(lib)?c_lib\\.(a|lib)$",
            "artifacts": [
                {
                    "path": "^((Debug|Release|RelWithDebInfo|MinSizeRel)/)?(lib)?c_lib\\.(a|lib)$",
                    "_dllExtra": False,
                },
            ],
            "build": "^\\.$",
            "source": "^\\.$",
            "install": None,
            "link": None,
            "archive": {
                "lto": None,
            },
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@6890427a1f51a3e7e1df$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "c_exe",
            "id": "^c_exe::@6890427a1f51a3e7e1df$",
            "directorySource": "^\\.$",
            "projectName": "codemodel-v2",
            "type": "EXECUTABLE",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.c$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "C",
                    "backtrace": [
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": 6,
                            "command": "add_executable",
                            "hasParent": True,
                        },
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": None,
                            "command": None,
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": 3,
                            "command": "include",
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "C",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^codemodel-v2\\.cmake$",
                    "line": 6,
                    "command": "add_executable",
                    "hasParent": True,
                },
                {
                    "file": "^codemodel-v2\\.cmake$",
                    "line": None,
                    "command": None,
                    "hasParent": True,
                },
                {
                    "file": "^CMakeLists\\.txt$",
                    "line": 3,
                    "command": "include",
                    "hasParent": True,
                },
                {
                    "file": "^CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^c_exe(\\.exe)?$",
            "artifacts": [
                {
                    "path": "^((Debug|Release|RelWithDebInfo|MinSizeRel)/)?c_exe(\\.exe)?$",
                    "_dllExtra": False,
                },
                {
                    "path": "^((Debug|Release|RelWithDebInfo|MinSizeRel)/)?c_exe\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^\\.$",
            "source": "^\\.$",
            "install": None,
            "link": {
                "language": "C",
                "lto": None,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^c_lib::@6890427a1f51a3e7e1df$",
                    "backtrace": [
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": 7,
                            "command": "target_link_libraries",
                            "hasParent": True,
                        },
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": None,
                            "command": None,
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": 3,
                            "command": "include",
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "id": "^ZERO_CHECK::@6890427a1f51a3e7e1df$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "c_shared_lib",
            "id": "^c_shared_lib::@6890427a1f51a3e7e1df$",
            "directorySource": "^\\.$",
            "projectName": "codemodel-v2",
            "type": "SHARED_LIBRARY",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.c$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "C",
                    "backtrace": [
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": 9,
                            "command": "add_library",
                            "hasParent": True,
                        },
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": None,
                            "command": None,
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": 3,
                            "command": "include",
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "C",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                    "includes": None,
                    "defines": [
                        {
                            "define": "c_shared_lib_EXPORTS",
                            "backtrace": None,
                        },
                    ],
                },
            ],
            "backtrace": [
                {
                    "file": "^codemodel-v2\\.cmake$",
                    "line": 9,
                    "command": "add_library",
                    "hasParent": True,
                },
                {
                    "file": "^codemodel-v2\\.cmake$",
                    "line": None,
                    "command": None,
                    "hasParent": True,
                },
                {
                    "file": "^CMakeLists\\.txt$",
                    "line": 3,
                    "command": "include",
                    "hasParent": True,
                },
                {
                    "file": "^CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^(lib|cyg)?c_shared_lib\\.(so|dylib|dll)$",
            "artifacts": [
                {
                    "path": "^lib/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?(lib|cyg)?c_shared_lib\\.(so|dylib|dll)$",
                    "_dllExtra": False,
                },
                {
                    "path": "^((Debug|Release|RelWithDebInfo|MinSizeRel)/)?(lib)?c_shared_lib\\.(dll\\.a|lib)$",
                    "_dllExtra": True,
                },
                {
                    "path": "^lib/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?(lib|cyg)?c_shared_lib\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^\\.$",
            "source": "^\\.$",
            "install": None,
            "link": {
                "language": "C",
                "lto": True,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@6890427a1f51a3e7e1df$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "c_shared_exe",
            "id": "^c_shared_exe::@6890427a1f51a3e7e1df$",
            "directorySource": "^\\.$",
            "projectName": "codemodel-v2",
            "type": "EXECUTABLE",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.c$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "C",
                    "backtrace": [
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": 10,
                            "command": "add_executable",
                            "hasParent": True,
                        },
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": None,
                            "command": None,
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": 3,
                            "command": "include",
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "C",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^codemodel-v2\\.cmake$",
                    "line": 10,
                    "command": "add_executable",
                    "hasParent": True,
                },
                {
                    "file": "^codemodel-v2\\.cmake$",
                    "line": None,
                    "command": None,
                    "hasParent": True,
                },
                {
                    "file": "^CMakeLists\\.txt$",
                    "line": 3,
                    "command": "include",
                    "hasParent": True,
                },
                {
                    "file": "^CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^c_shared_exe(\\.exe)?$",
            "artifacts": [
                {
                    "path": "^((Debug|Release|RelWithDebInfo|MinSizeRel)/)?c_shared_exe(\\.exe)?$",
                    "_dllExtra": False,
                },
                {
                    "path": "^((Debug|Release|RelWithDebInfo|MinSizeRel)/)?c_shared_exe\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^\\.$",
            "source": "^\\.$",
            "install": None,
            "link": {
                "language": "C",
                "lto": True,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^c_shared_lib::@6890427a1f51a3e7e1df$",
                    "backtrace": [
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": 11,
                            "command": "target_link_libraries",
                            "hasParent": True,
                        },
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": None,
                            "command": None,
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": 3,
                            "command": "include",
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "id": "^ZERO_CHECK::@6890427a1f51a3e7e1df$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "c_static_lib",
            "id": "^c_static_lib::@6890427a1f51a3e7e1df$",
            "directorySource": "^\\.$",
            "projectName": "codemodel-v2",
            "type": "STATIC_LIBRARY",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.c$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "C",
                    "backtrace": [
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": 13,
                            "command": "add_library",
                            "hasParent": True,
                        },
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": None,
                            "command": None,
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": 3,
                            "command": "include",
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "C",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^codemodel-v2\\.cmake$",
                    "line": 13,
                    "command": "add_library",
                    "hasParent": True,
                },
                {
                    "file": "^codemodel-v2\\.cmake$",
                    "line": None,
                    "command": None,
                    "hasParent": True,
                },
                {
                    "file": "^CMakeLists\\.txt$",
                    "line": 3,
                    "command": "include",
                    "hasParent": True,
                },
                {
                    "file": "^CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^(lib)?c_static_lib\\.(a|lib)$",
            "artifacts": [
                {
                    "path": "^((Debug|Release|RelWithDebInfo|MinSizeRel)/)?(lib)?c_static_lib\\.(a|lib)$",
                    "_dllExtra": False,
                },
            ],
            "build": "^\\.$",
            "source": "^\\.$",
            "install": None,
            "link": None,
            "archive": {
                "lto": True,
            },
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@6890427a1f51a3e7e1df$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "c_static_exe",
            "id": "^c_static_exe::@6890427a1f51a3e7e1df$",
            "directorySource": "^\\.$",
            "projectName": "codemodel-v2",
            "type": "EXECUTABLE",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.c$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "C",
                    "backtrace": [
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": 14,
                            "command": "add_executable",
                            "hasParent": True,
                        },
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": None,
                            "command": None,
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": 3,
                            "command": "include",
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "C",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^codemodel-v2\\.cmake$",
                    "line": 14,
                    "command": "add_executable",
                    "hasParent": True,
                },
                {
                    "file": "^codemodel-v2\\.cmake$",
                    "line": None,
                    "command": None,
                    "hasParent": True,
                },
                {
                    "file": "^CMakeLists\\.txt$",
                    "line": 3,
                    "command": "include",
                    "hasParent": True,
                },
                {
                    "file": "^CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^c_static_exe(\\.exe)?$",
            "artifacts": [
                {
                    "path": "^((Debug|Release|RelWithDebInfo|MinSizeRel)/)?c_static_exe(\\.exe)?$",
                    "_dllExtra": False,
                },
                {
                    "path": "^((Debug|Release|RelWithDebInfo|MinSizeRel)/)?c_static_exe\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^\\.$",
            "source": "^\\.$",
            "install": None,
            "link": {
                "language": "C",
                "lto": None,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^c_static_lib::@6890427a1f51a3e7e1df$",
                    "backtrace": [
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": 15,
                            "command": "target_link_libraries",
                            "hasParent": True,
                        },
                        {
                            "file": "^codemodel-v2\\.cmake$",
                            "line": None,
                            "command": None,
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": 3,
                            "command": "include",
                            "hasParent": True,
                        },
                        {
                            "file": "^CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "id": "^ZERO_CHECK::@6890427a1f51a3e7e1df$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "ALL_BUILD",
            "id": "^ALL_BUILD::@a56b12a3f5c0529fb296$",
            "directorySource": "^cxx$",
            "projectName": "Cxx",
            "type": "UTILITY",
            "isGeneratorProvided": True,
            "sources": [
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/cxx/CMakeFiles/ALL_BUILD$",
                    "isGenerated": True,
                    "sourceGroupName": "",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/cxx/CMakeFiles/ALL_BUILD\\.rule$",
                    "isGenerated": True,
                    "sourceGroupName": "CMake Rules",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/cxx/CMakeFiles/ALL_BUILD$",
                    ],
                },
                {
                    "name": "CMake Rules",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/cxx/CMakeFiles/ALL_BUILD\\.rule$",
                    ],
                },
            ],
            "compileGroups": None,
            "backtrace": [
                {
                    "file": "^cxx/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": None,
            "artifacts": None,
            "build": "^cxx$",
            "source": "^cxx$",
            "install": None,
            "link": None,
            "archive": None,
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@a56b12a3f5c0529fb296$",
                    "backtrace": None,
                },
                {
                    "id": "^cxx_lib::@a56b12a3f5c0529fb296$",
                    "backtrace": None,
                },
                {
                    "id": "^cxx_exe::@a56b12a3f5c0529fb296$",
                    "backtrace": None,
                },
                {
                    "id": "^cxx_shared_lib::@a56b12a3f5c0529fb296$",
                    "backtrace": None,
                },
                {
                    "id": "^cxx_shared_exe::@a56b12a3f5c0529fb296$",
                    "backtrace": None,
                },
                {
                    "id": "^cxx_static_lib::@a56b12a3f5c0529fb296$",
                    "backtrace": None,
                },
                {
                    "id": "^cxx_static_exe::@a56b12a3f5c0529fb296$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "ZERO_CHECK",
            "id": "^ZERO_CHECK::@a56b12a3f5c0529fb296$",
            "directorySource": "^cxx$",
            "projectName": "Cxx",
            "type": "UTILITY",
            "isGeneratorProvided": True,
            "sources": [
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/cxx/CMakeFiles/ZERO_CHECK$",
                    "isGenerated": True,
                    "sourceGroupName": "",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/cxx/CMakeFiles/ZERO_CHECK\\.rule$",
                    "isGenerated": True,
                    "sourceGroupName": "CMake Rules",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/cxx/CMakeFiles/ZERO_CHECK$",
                    ],
                },
                {
                    "name": "CMake Rules",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/cxx/CMakeFiles/ZERO_CHECK\\.rule$",
                    ],
                },
            ],
            "compileGroups": None,
            "backtrace": [
                {
                    "file": "^cxx/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": None,
            "artifacts": None,
            "build": "^cxx$",
            "source": "^cxx$",
            "install": None,
            "link": None,
            "archive": None,
            "dependencies": None,
        },
        {
            "name": "cxx_lib",
            "id": "^cxx_lib::@a56b12a3f5c0529fb296$",
            "directorySource": "^cxx$",
            "projectName": "Cxx",
            "type": "STATIC_LIBRARY",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.cxx$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "CXX",
                    "backtrace": [
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": 4,
                            "command": "add_library",
                            "hasParent": True,
                        },
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.cxx$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "CXX",
                    "sourcePaths": [
                        "^empty\\.cxx$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^cxx/CMakeLists\\.txt$",
                    "line": 4,
                    "command": "add_library",
                    "hasParent": True,
                },
                {
                    "file": "^cxx/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^(lib)?cxx_lib\\.(a|lib)$",
            "artifacts": [
                {
                    "path": "^cxx/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?(lib)?cxx_lib\\.(a|lib)$",
                    "_dllExtra": False,
                },
            ],
            "build": "^cxx$",
            "source": "^cxx$",
            "install": None,
            "link": None,
            "archive": {
                "lto": None,
            },
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@a56b12a3f5c0529fb296$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "cxx_exe",
            "id": "^cxx_exe::@a56b12a3f5c0529fb296$",
            "directorySource": "^cxx$",
            "projectName": "Cxx",
            "type": "EXECUTABLE",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.cxx$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "CXX",
                    "backtrace": [
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": 5,
                            "command": "add_executable",
                            "hasParent": True,
                        },
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.cxx$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "CXX",
                    "sourcePaths": [
                        "^empty\\.cxx$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^cxx/CMakeLists\\.txt$",
                    "line": 5,
                    "command": "add_executable",
                    "hasParent": True,
                },
                {
                    "file": "^cxx/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": "bin",
            "nameOnDisk": "^cxx_exe(\\.exe)?$",
            "artifacts": [
                {
                    "path": "^cxx/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?cxx_exe(\\.exe)?$",
                    "_dllExtra": False,
                },
                {
                    "path": "^cxx/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?cxx_exe\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^cxx$",
            "source": "^cxx$",
            "install": {
                "prefix": "^(/usr/local|[A-Za-z]:.*/codemodel-v2)$",
                "destinations": [
                    {
                        "path": "bin",
                        "backtrace": [
                            {
                                "file": "^codemodel-v2\\.cmake$",
                                "line": 37,
                                "command": "install",
                                "hasParent": True,
                            },
                            {
                                "file": "^codemodel-v2\\.cmake$",
                                "line": None,
                                "command": None,
                                "hasParent": True,
                            },
                            {
                                "file": "^CMakeLists\\.txt$",
                                "line": 3,
                                "command": "include",
                                "hasParent": True,
                            },
                            {
                                "file": "^CMakeLists\\.txt$",
                                "line": None,
                                "command": None,
                                "hasParent": False,
                            },
                        ],
                    },
                ],
            },
            "link": {
                "language": "CXX",
                "lto": None,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^cxx_lib::@a56b12a3f5c0529fb296$",
                    "backtrace": [
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": 6,
                            "command": "target_link_libraries",
                            "hasParent": True,
                        },
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "id": "^ZERO_CHECK::@a56b12a3f5c0529fb296$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "cxx_shared_lib",
            "id": "^cxx_shared_lib::@a56b12a3f5c0529fb296$",
            "directorySource": "^cxx$",
            "projectName": "Cxx",
            "type": "SHARED_LIBRARY",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.cxx$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "CXX",
                    "backtrace": [
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": 9,
                            "command": "add_library",
                            "hasParent": True,
                        },
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.cxx$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "CXX",
                    "sourcePaths": [
                        "^empty\\.cxx$",
                    ],
                    "includes": None,
                    "defines": [
                        {
                            "define": "cxx_shared_lib_EXPORTS",
                            "backtrace": None,
                        },
                    ],
                },
            ],
            "backtrace": [
                {
                    "file": "^cxx/CMakeLists\\.txt$",
                    "line": 9,
                    "command": "add_library",
                    "hasParent": True,
                },
                {
                    "file": "^cxx/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^(lib|cyg)?cxx_shared_lib\\.(so|dylib|dll)$",
            "artifacts": [
                {
                    "path": "^cxx/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?(lib|cyg)?cxx_shared_lib\\.(so|dylib|dll)$",
                    "_dllExtra": False,
                },
                {
                    "path": "^cxx/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?(lib)?cxx_shared_lib\\.(dll\\.a|lib)$",
                    "_dllExtra": True,
                },
                {
                    "path": "^cxx/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?(lib|cyg)?cxx_shared_lib\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^cxx$",
            "source": "^cxx$",
            "install": None,
            "link": {
                "language": "CXX",
                "lto": None,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@a56b12a3f5c0529fb296$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "cxx_shared_exe",
            "id": "^cxx_shared_exe::@a56b12a3f5c0529fb296$",
            "directorySource": "^cxx$",
            "projectName": "Cxx",
            "type": "EXECUTABLE",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.cxx$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "CXX",
                    "backtrace": [
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": 10,
                            "command": "add_executable",
                            "hasParent": True,
                        },
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.cxx$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "CXX",
                    "sourcePaths": [
                        "^empty\\.cxx$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^cxx/CMakeLists\\.txt$",
                    "line": 10,
                    "command": "add_executable",
                    "hasParent": True,
                },
                {
                    "file": "^cxx/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^cxx_shared_exe(\\.exe)?$",
            "artifacts": [
                {
                    "path": "^cxx/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?cxx_shared_exe(\\.exe)?$",
                    "_dllExtra": False,
                },
                {
                    "path": "^cxx/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?cxx_shared_exe\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^cxx$",
            "source": "^cxx$",
            "install": None,
            "link": {
                "language": "CXX",
                "lto": None,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^cxx_shared_lib::@a56b12a3f5c0529fb296$",
                    "backtrace": [
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": 11,
                            "command": "target_link_libraries",
                            "hasParent": True,
                        },
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "id": "^ZERO_CHECK::@a56b12a3f5c0529fb296$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "cxx_static_lib",
            "id": "^cxx_static_lib::@a56b12a3f5c0529fb296$",
            "directorySource": "^cxx$",
            "projectName": "Cxx",
            "type": "STATIC_LIBRARY",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.cxx$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "CXX",
                    "backtrace": [
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": 13,
                            "command": "add_library",
                            "hasParent": True,
                        },
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.cxx$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "CXX",
                    "sourcePaths": [
                        "^empty\\.cxx$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^cxx/CMakeLists\\.txt$",
                    "line": 13,
                    "command": "add_library",
                    "hasParent": True,
                },
                {
                    "file": "^cxx/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^(lib)?cxx_static_lib\\.(a|lib)$",
            "artifacts": [
                {
                    "path": "^cxx/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?(lib)?cxx_static_lib\\.(a|lib)$",
                    "_dllExtra": False,
                },
            ],
            "build": "^cxx$",
            "source": "^cxx$",
            "install": None,
            "link": None,
            "archive": {
                "lto": None,
            },
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@a56b12a3f5c0529fb296$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "cxx_static_exe",
            "id": "^cxx_static_exe::@a56b12a3f5c0529fb296$",
            "directorySource": "^cxx$",
            "projectName": "Cxx",
            "type": "EXECUTABLE",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.cxx$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "CXX",
                    "backtrace": [
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": 14,
                            "command": "add_executable",
                            "hasParent": True,
                        },
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.cxx$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "CXX",
                    "sourcePaths": [
                        "^empty\\.cxx$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^cxx/CMakeLists\\.txt$",
                    "line": 14,
                    "command": "add_executable",
                    "hasParent": True,
                },
                {
                    "file": "^cxx/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^cxx_static_exe(\\.exe)?$",
            "artifacts": [
                {
                    "path": "^cxx/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?cxx_static_exe(\\.exe)?$",
                    "_dllExtra": False,
                },
                {
                    "path": "^cxx/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?cxx_static_exe\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^cxx$",
            "source": "^cxx$",
            "install": None,
            "link": {
                "language": "CXX",
                "lto": None,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^cxx_static_lib::@a56b12a3f5c0529fb296$",
                    "backtrace": [
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": 15,
                            "command": "target_link_libraries",
                            "hasParent": True,
                        },
                        {
                            "file": "^cxx/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "id": "^ZERO_CHECK::@a56b12a3f5c0529fb296$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "ALL_BUILD",
            "id": "^ALL_BUILD::@53632cba2752272bb008$",
            "directorySource": "^alias$",
            "projectName": "Alias",
            "type": "UTILITY",
            "isGeneratorProvided": True,
            "sources": [
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/alias/CMakeFiles/ALL_BUILD$",
                    "isGenerated": True,
                    "sourceGroupName": "",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^alias/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/alias/CMakeFiles/ALL_BUILD\\.rule$",
                    "isGenerated": True,
                    "sourceGroupName": "CMake Rules",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^alias/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/alias/CMakeFiles/ALL_BUILD$",
                    ],
                },
                {
                    "name": "CMake Rules",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/alias/CMakeFiles/ALL_BUILD\\.rule$",
                    ],
                },
            ],
            "compileGroups": None,
            "backtrace": [
                {
                    "file": "^alias/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": None,
            "artifacts": None,
            "build": "^alias$",
            "source": "^alias$",
            "install": None,
            "link": None,
            "archive": None,
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@53632cba2752272bb008$",
                    "backtrace": None,
                },
                {
                    "id": "^c_alias_exe::@53632cba2752272bb008$",
                    "backtrace": None,
                },
                {
                    "id": "^cxx_alias_exe::@53632cba2752272bb008$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "ZERO_CHECK",
            "id": "^ZERO_CHECK::@53632cba2752272bb008$",
            "directorySource": "^alias$",
            "projectName": "Alias",
            "type": "UTILITY",
            "isGeneratorProvided": True,
            "sources": [
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/alias/CMakeFiles/ZERO_CHECK$",
                    "isGenerated": True,
                    "sourceGroupName": "",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^alias/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/alias/CMakeFiles/ZERO_CHECK\\.rule$",
                    "isGenerated": True,
                    "sourceGroupName": "CMake Rules",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^alias/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/alias/CMakeFiles/ZERO_CHECK$",
                    ],
                },
                {
                    "name": "CMake Rules",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/alias/CMakeFiles/ZERO_CHECK\\.rule$",
                    ],
                },
            ],
            "compileGroups": None,
            "backtrace": [
                {
                    "file": "^alias/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": None,
            "artifacts": None,
            "build": "^alias$",
            "source": "^alias$",
            "install": None,
            "link": None,
            "archive": None,
            "dependencies": None,
        },
        {
            "name": "c_alias_exe",
            "id": "^c_alias_exe::@53632cba2752272bb008$",
            "directorySource": "^alias$",
            "projectName": "Alias",
            "type": "EXECUTABLE",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.c$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "C",
                    "backtrace": [
                        {
                            "file": "^alias/CMakeLists\\.txt$",
                            "line": 5,
                            "command": "add_executable",
                            "hasParent": True,
                        },
                        {
                            "file": "^alias/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "C",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^alias/CMakeLists\\.txt$",
                    "line": 5,
                    "command": "add_executable",
                    "hasParent": True,
                },
                {
                    "file": "^alias/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^c_alias_exe(\\.exe)?$",
            "artifacts": [
                {
                    "path": "^alias/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?c_alias_exe(\\.exe)?$",
                    "_dllExtra": False,
                },
                {
                    "path": "^alias/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?c_alias_exe\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^alias$",
            "source": "^alias$",
            "install": None,
            "link": {
                "language": "C",
                "lto": None,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^c_lib::@6890427a1f51a3e7e1df$",
                    "backtrace": [
                        {
                            "file": "^alias/CMakeLists\\.txt$",
                            "line": 6,
                            "command": "target_link_libraries",
                            "hasParent": True,
                        },
                        {
                            "file": "^alias/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "id": "^ZERO_CHECK::@53632cba2752272bb008$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "cxx_alias_exe",
            "id": "^cxx_alias_exe::@53632cba2752272bb008$",
            "directorySource": "^alias$",
            "projectName": "Alias",
            "type": "EXECUTABLE",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.cxx$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "CXX",
                    "backtrace": [
                        {
                            "file": "^alias/CMakeLists\\.txt$",
                            "line": 9,
                            "command": "add_executable",
                            "hasParent": True,
                        },
                        {
                            "file": "^alias/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.cxx$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "CXX",
                    "sourcePaths": [
                        "^empty\\.cxx$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^alias/CMakeLists\\.txt$",
                    "line": 9,
                    "command": "add_executable",
                    "hasParent": True,
                },
                {
                    "file": "^alias/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^cxx_alias_exe(\\.exe)?$",
            "artifacts": [
                {
                    "path": "^alias/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?cxx_alias_exe(\\.exe)?$",
                    "_dllExtra": False,
                },
                {
                    "path": "^alias/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?cxx_alias_exe\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^alias$",
            "source": "^alias$",
            "install": None,
            "link": {
                "language": "CXX",
                "lto": None,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^cxx_lib::@a56b12a3f5c0529fb296$",
                    "backtrace": [
                        {
                            "file": "^alias/CMakeLists\\.txt$",
                            "line": 10,
                            "command": "target_link_libraries",
                            "hasParent": True,
                        },
                        {
                            "file": "^alias/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "id": "^ZERO_CHECK::@53632cba2752272bb008$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "ALL_BUILD",
            "id": "^ALL_BUILD::@5ed5358f70faf8d8af7a$",
            "directorySource": "^object$",
            "projectName": "Object",
            "type": "UTILITY",
            "isGeneratorProvided": True,
            "sources": [
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/object/CMakeFiles/ALL_BUILD$",
                    "isGenerated": True,
                    "sourceGroupName": "",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^object/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/object/CMakeFiles/ALL_BUILD\\.rule$",
                    "isGenerated": True,
                    "sourceGroupName": "CMake Rules",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^object/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/object/CMakeFiles/ALL_BUILD$",
                    ],
                },
                {
                    "name": "CMake Rules",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/object/CMakeFiles/ALL_BUILD\\.rule$",
                    ],
                },
            ],
            "compileGroups": None,
            "backtrace": [
                {
                    "file": "^object/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": None,
            "artifacts": None,
            "build": "^object$",
            "source": "^object$",
            "install": None,
            "link": None,
            "archive": None,
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@5ed5358f70faf8d8af7a$",
                    "backtrace": None,
                },
                {
                    "id": "^c_object_lib::@5ed5358f70faf8d8af7a$",
                    "backtrace": None,
                },
                {
                    "id": "^c_object_exe::@5ed5358f70faf8d8af7a$",
                    "backtrace": None,
                },
                {
                    "id": "^cxx_object_lib::@5ed5358f70faf8d8af7a$",
                    "backtrace": None,
                },
                {
                    "id": "^cxx_object_exe::@5ed5358f70faf8d8af7a$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "ZERO_CHECK",
            "id": "^ZERO_CHECK::@5ed5358f70faf8d8af7a$",
            "directorySource": "^object$",
            "projectName": "Object",
            "type": "UTILITY",
            "isGeneratorProvided": True,
            "sources": [
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/object/CMakeFiles/ZERO_CHECK$",
                    "isGenerated": True,
                    "sourceGroupName": "",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^object/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/object/CMakeFiles/ZERO_CHECK\\.rule$",
                    "isGenerated": True,
                    "sourceGroupName": "CMake Rules",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^object/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/object/CMakeFiles/ZERO_CHECK$",
                    ],
                },
                {
                    "name": "CMake Rules",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/object/CMakeFiles/ZERO_CHECK\\.rule$",
                    ],
                },
            ],
            "compileGroups": None,
            "backtrace": [
                {
                    "file": "^object/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": None,
            "artifacts": None,
            "build": "^object$",
            "source": "^object$",
            "install": None,
            "link": None,
            "archive": None,
            "dependencies": None,
        },
        {
            "name": "c_object_lib",
            "id": "^c_object_lib::@5ed5358f70faf8d8af7a$",
            "directorySource": "^object$",
            "projectName": "Object",
            "type": "OBJECT_LIBRARY",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.c$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "C",
                    "backtrace": [
                        {
                            "file": "^object/CMakeLists\\.txt$",
                            "line": 5,
                            "command": "add_library",
                            "hasParent": True,
                        },
                        {
                            "file": "^object/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "C",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^object/CMakeLists\\.txt$",
                    "line": 5,
                    "command": "add_library",
                    "hasParent": True,
                },
                {
                    "file": "^object/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": None,
            "artifacts": [
                {
                    "path": "^object/.*/empty(\\.c)?\\.o(bj)?$",
                    "_dllExtra": False,
                },
            ],
            "build": "^object$",
            "source": "^object$",
            "install": None,
            "link": None,
            "archive": None,
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@5ed5358f70faf8d8af7a$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "c_object_exe",
            "id": "^c_object_exe::@5ed5358f70faf8d8af7a$",
            "directorySource": "^object$",
            "projectName": "Object",
            "type": "EXECUTABLE",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.c$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "C",
                    "backtrace": [
                        {
                            "file": "^object/CMakeLists\\.txt$",
                            "line": 6,
                            "command": "add_executable",
                            "hasParent": True,
                        },
                        {
                            "file": "^object/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/object/.*/empty(\\.c)?\\.o(bj)?$",
                    "isGenerated": True,
                    "sourceGroupName": "Object Libraries",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^object/CMakeLists\\.txt$",
                            "line": 7,
                            "command": "target_link_libraries",
                            "hasParent": True,
                        },
                        {
                            "file": "^object/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                },
                {
                    "name": "Object Libraries",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/object/.*/empty(\\.c)?\\.o(bj)?$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "C",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^object/CMakeLists\\.txt$",
                    "line": 6,
                    "command": "add_executable",
                    "hasParent": True,
                },
                {
                    "file": "^object/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^c_object_exe(\\.exe)?$",
            "artifacts": [
                {
                    "path": "^object/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?c_object_exe(\\.exe)?$",
                    "_dllExtra": False,
                },
                {
                    "path": "^object/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?c_object_exe\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^object$",
            "source": "^object$",
            "install": {
                "prefix": "^(/usr/local|[A-Za-z]:.*/codemodel-v2)$",
                "destinations": [
                    {
                        "path": "bin",
                        "backtrace": [
                            {
                                "file": "^object/CMakeLists\\.txt$",
                                "line": 13,
                                "command": "install",
                                "hasParent": True,
                            },
                            {
                                "file": "^object/CMakeLists\\.txt$",
                                "line": None,
                                "command": None,
                                "hasParent": False,
                            },
                        ],
                    },
                ],
            },
            "link": {
                "language": "C",
                "lto": None,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^c_object_lib::@5ed5358f70faf8d8af7a$",
                    # FIXME: Add a backtrace here when it becomes available.
                    # You'll know when it's available, because this test will
                    # fail.
                    "backtrace": None,
                },
                {
                    "id": "^ZERO_CHECK::@5ed5358f70faf8d8af7a$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "cxx_object_lib",
            "id": "^cxx_object_lib::@5ed5358f70faf8d8af7a$",
            "directorySource": "^object$",
            "projectName": "Object",
            "type": "OBJECT_LIBRARY",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.cxx$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "CXX",
                    "backtrace": [
                        {
                            "file": "^object/CMakeLists\\.txt$",
                            "line": 9,
                            "command": "add_library",
                            "hasParent": True,
                        },
                        {
                            "file": "^object/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.cxx$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "CXX",
                    "sourcePaths": [
                        "^empty\\.cxx$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^object/CMakeLists\\.txt$",
                    "line": 9,
                    "command": "add_library",
                    "hasParent": True,
                },
                {
                    "file": "^object/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": None,
            "artifacts": [
                {
                    "path": "^object/.*/empty(\\.cxx)?\\.o(bj)?$",
                    "_dllExtra": False,
                },
            ],
            "build": "^object$",
            "source": "^object$",
            "install": None,
            "link": None,
            "archive": None,
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@5ed5358f70faf8d8af7a$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "cxx_object_exe",
            "id": "^cxx_object_exe::@5ed5358f70faf8d8af7a$",
            "directorySource": "^object$",
            "projectName": "Object",
            "type": "EXECUTABLE",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.cxx$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "CXX",
                    "backtrace": [
                        {
                            "file": "^object/CMakeLists\\.txt$",
                            "line": 10,
                            "command": "add_executable",
                            "hasParent": True,
                        },
                        {
                            "file": "^object/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/object/.*/empty(\\.cxx)?\\.o(bj)?$",
                    "isGenerated": True,
                    "sourceGroupName": "Object Libraries",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^object/CMakeLists\\.txt$",
                            "line": 11,
                            "command": "target_link_libraries",
                            "hasParent": True,
                        },
                        {
                            "file": "^object/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.cxx$",
                    ],
                },
                {
                    "name": "Object Libraries",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/object/.*/empty(\\.cxx)?\\.o(bj)?$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "CXX",
                    "sourcePaths": [
                        "^empty\\.cxx$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^object/CMakeLists\\.txt$",
                    "line": 10,
                    "command": "add_executable",
                    "hasParent": True,
                },
                {
                    "file": "^object/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^cxx_object_exe(\\.exe)?$",
            "artifacts": [
                {
                    "path": "^object/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?cxx_object_exe(\\.exe)?$",
                    "_dllExtra": False,
                },
                {
                    "path": "^object/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?cxx_object_exe\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^object$",
            "source": "^object$",
            "install": {
                "prefix": "^(/usr/local|[A-Za-z]:.*/codemodel-v2)$",
                "destinations": [
                    {
                        "path": "bin",
                        "backtrace": [
                            {
                                "file": "^object/CMakeLists\\.txt$",
                                "line": 13,
                                "command": "install",
                                "hasParent": True,
                            },
                            {
                                "file": "^object/CMakeLists\\.txt$",
                                "line": None,
                                "command": None,
                                "hasParent": False,
                            },
                        ],
                    },
                ],
            },
            "link": {
                "language": "CXX",
                "lto": None,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^cxx_object_lib::@5ed5358f70faf8d8af7a$",
                    # FIXME: Add a backtrace here when it becomes available.
                    # You'll know when it's available, because this test will
                    # fail.
                    "backtrace": None,
                },
                {
                    "id": "^ZERO_CHECK::@5ed5358f70faf8d8af7a$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "ALL_BUILD",
            "id": "^ALL_BUILD::@ba7eb709d0b48779c6c8$",
            "directorySource": "^imported$",
            "projectName": "Imported",
            "type": "UTILITY",
            "isGeneratorProvided": True,
            "sources": [
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/imported/CMakeFiles/ALL_BUILD$",
                    "isGenerated": True,
                    "sourceGroupName": "",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^imported/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/imported/CMakeFiles/ALL_BUILD\\.rule$",
                    "isGenerated": True,
                    "sourceGroupName": "CMake Rules",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^imported/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/imported/CMakeFiles/ALL_BUILD$",
                    ],
                },
                {
                    "name": "CMake Rules",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/imported/CMakeFiles/ALL_BUILD\\.rule$",
                    ],
                },
            ],
            "compileGroups": None,
            "backtrace": [
                {
                    "file": "^imported/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": None,
            "artifacts": None,
            "build": "^imported$",
            "source": "^imported$",
            "install": None,
            "link": None,
            "archive": None,
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@ba7eb709d0b48779c6c8$",
                    "backtrace": None,
                },
                {
                    "id": "^link_imported_exe::@ba7eb709d0b48779c6c8$",
                    "backtrace": None,
                },
                {
                    "id": "^link_imported_shared_exe::@ba7eb709d0b48779c6c8$",
                    "backtrace": None,
                },
                {
                    "id": "^link_imported_static_exe::@ba7eb709d0b48779c6c8$",
                    "backtrace": None,
                },
                {
                    "id": "^link_imported_object_exe::@ba7eb709d0b48779c6c8$",
                    "backtrace": None,
                },
                {
                    "id": "^link_imported_interface_exe::@ba7eb709d0b48779c6c8$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "ZERO_CHECK",
            "id": "^ZERO_CHECK::@ba7eb709d0b48779c6c8$",
            "directorySource": "^imported$",
            "projectName": "Imported",
            "type": "UTILITY",
            "isGeneratorProvided": True,
            "sources": [
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/imported/CMakeFiles/ZERO_CHECK$",
                    "isGenerated": True,
                    "sourceGroupName": "",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^imported/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/imported/CMakeFiles/ZERO_CHECK\\.rule$",
                    "isGenerated": True,
                    "sourceGroupName": "CMake Rules",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^imported/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/imported/CMakeFiles/ZERO_CHECK$",
                    ],
                },
                {
                    "name": "CMake Rules",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/imported/CMakeFiles/ZERO_CHECK\\.rule$",
                    ],
                },
            ],
            "compileGroups": None,
            "backtrace": [
                {
                    "file": "^imported/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": None,
            "artifacts": None,
            "build": "^imported$",
            "source": "^imported$",
            "install": None,
            "link": None,
            "archive": None,
            "dependencies": None,
        },
        {
            "name": "link_imported_exe",
            "id": "^link_imported_exe::@ba7eb709d0b48779c6c8$",
            "directorySource": "^imported$",
            "projectName": "Imported",
            "type": "EXECUTABLE",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.c$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "C",
                    "backtrace": [
                        {
                            "file": "^imported/CMakeLists\\.txt$",
                            "line": 5,
                            "command": "add_executable",
                            "hasParent": True,
                        },
                        {
                            "file": "^imported/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "C",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^imported/CMakeLists\\.txt$",
                    "line": 5,
                    "command": "add_executable",
                    "hasParent": True,
                },
                {
                    "file": "^imported/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^link_imported_exe(\\.exe)?$",
            "artifacts": [
                {
                    "path": "^imported/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?link_imported_exe(\\.exe)?$",
                    "_dllExtra": False,
                },
                {
                    "path": "^imported/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?link_imported_exe\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^imported$",
            "source": "^imported$",
            "install": None,
            "link": {
                "language": "C",
                "lto": None,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@ba7eb709d0b48779c6c8$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "link_imported_shared_exe",
            "id": "^link_imported_shared_exe::@ba7eb709d0b48779c6c8$",
            "directorySource": "^imported$",
            "projectName": "Imported",
            "type": "EXECUTABLE",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.c$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "C",
                    "backtrace": [
                        {
                            "file": "^imported/CMakeLists\\.txt$",
                            "line": 9,
                            "command": "add_executable",
                            "hasParent": True,
                        },
                        {
                            "file": "^imported/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "C",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^imported/CMakeLists\\.txt$",
                    "line": 9,
                    "command": "add_executable",
                    "hasParent": True,
                },
                {
                    "file": "^imported/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^link_imported_shared_exe(\\.exe)?$",
            "artifacts": [
                {
                    "path": "^imported/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?link_imported_shared_exe(\\.exe)?$",
                    "_dllExtra": False,
                },
                {
                    "path": "^imported/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?link_imported_shared_exe\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^imported$",
            "source": "^imported$",
            "install": None,
            "link": {
                "language": "C",
                "lto": None,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@ba7eb709d0b48779c6c8$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "link_imported_static_exe",
            "id": "^link_imported_static_exe::@ba7eb709d0b48779c6c8$",
            "directorySource": "^imported$",
            "projectName": "Imported",
            "type": "EXECUTABLE",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.c$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "C",
                    "backtrace": [
                        {
                            "file": "^imported/CMakeLists\\.txt$",
                            "line": 13,
                            "command": "add_executable",
                            "hasParent": True,
                        },
                        {
                            "file": "^imported/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "C",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^imported/CMakeLists\\.txt$",
                    "line": 13,
                    "command": "add_executable",
                    "hasParent": True,
                },
                {
                    "file": "^imported/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^link_imported_static_exe(\\.exe)?$",
            "artifacts": [
                {
                    "path": "^imported/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?link_imported_static_exe(\\.exe)?$",
                    "_dllExtra": False,
                },
                {
                    "path": "^imported/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?link_imported_static_exe\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^imported$",
            "source": "^imported$",
            "install": None,
            "link": {
                "language": "C",
                "lto": None,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@ba7eb709d0b48779c6c8$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "link_imported_object_exe",
            "id": "^link_imported_object_exe::@ba7eb709d0b48779c6c8$",
            "directorySource": "^imported$",
            "projectName": "Imported",
            "type": "EXECUTABLE",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.c$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "C",
                    "backtrace": [
                        {
                            "file": "^imported/CMakeLists\\.txt$",
                            "line": 18,
                            "command": "add_executable",
                            "hasParent": True,
                        },
                        {
                            "file": "^imported/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "C",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^imported/CMakeLists\\.txt$",
                    "line": 18,
                    "command": "add_executable",
                    "hasParent": True,
                },
                {
                    "file": "^imported/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^link_imported_object_exe(\\.exe)?$",
            "artifacts": [
                {
                    "path": "^imported/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?link_imported_object_exe(\\.exe)?$",
                    "_dllExtra": False,
                },
                {
                    "path": "^imported/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?link_imported_object_exe\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^imported$",
            "source": "^imported$",
            "install": None,
            "link": {
                "language": "C",
                "lto": None,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@ba7eb709d0b48779c6c8$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "link_imported_interface_exe",
            "id": "^link_imported_interface_exe::@ba7eb709d0b48779c6c8$",
            "directorySource": "^imported$",
            "projectName": "Imported",
            "type": "EXECUTABLE",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.c$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "C",
                    "backtrace": [
                        {
                            "file": "^imported/CMakeLists\\.txt$",
                            "line": 23,
                            "command": "add_executable",
                            "hasParent": True,
                        },
                        {
                            "file": "^imported/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "C",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^imported/CMakeLists\\.txt$",
                    "line": 23,
                    "command": "add_executable",
                    "hasParent": True,
                },
                {
                    "file": "^imported/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^link_imported_interface_exe(\\.exe)?$",
            "artifacts": [
                {
                    "path": "^imported/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?link_imported_interface_exe(\\.exe)?$",
                    "_dllExtra": False,
                },
                {
                    "path": "^imported/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?link_imported_interface_exe\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^imported$",
            "source": "^imported$",
            "install": None,
            "link": {
                "language": "C",
                "lto": None,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@ba7eb709d0b48779c6c8$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "ALL_BUILD",
            "id": "^ALL_BUILD::@c11385ffed57b860da63$",
            "directorySource": "^custom$",
            "projectName": "Custom",
            "type": "UTILITY",
            "isGeneratorProvided": True,
            "sources": [
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/custom/CMakeFiles/ALL_BUILD$",
                    "isGenerated": True,
                    "sourceGroupName": "",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^custom/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/custom/CMakeFiles/ALL_BUILD\\.rule$",
                    "isGenerated": True,
                    "sourceGroupName": "CMake Rules",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^custom/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/custom/CMakeFiles/ALL_BUILD$",
                    ],
                },
                {
                    "name": "CMake Rules",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/custom/CMakeFiles/ALL_BUILD\\.rule$",
                    ],
                },
            ],
            "compileGroups": None,
            "backtrace": [
                {
                    "file": "^custom/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": None,
            "artifacts": None,
            "build": "^custom$",
            "source": "^custom$",
            "install": None,
            "link": None,
            "archive": None,
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@c11385ffed57b860da63$",
                    "backtrace": None,
                },
                {
                    "id": "^custom_exe::@c11385ffed57b860da63$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "ZERO_CHECK",
            "id": "^ZERO_CHECK::@c11385ffed57b860da63$",
            "directorySource": "^custom$",
            "projectName": "Custom",
            "type": "UTILITY",
            "isGeneratorProvided": True,
            "sources": [
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/custom/CMakeFiles/ZERO_CHECK$",
                    "isGenerated": True,
                    "sourceGroupName": "",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^custom/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/custom/CMakeFiles/ZERO_CHECK\\.rule$",
                    "isGenerated": True,
                    "sourceGroupName": "CMake Rules",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^custom/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/custom/CMakeFiles/ZERO_CHECK$",
                    ],
                },
                {
                    "name": "CMake Rules",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/custom/CMakeFiles/ZERO_CHECK\\.rule$",
                    ],
                },
            ],
            "compileGroups": None,
            "backtrace": [
                {
                    "file": "^custom/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": None,
            "artifacts": None,
            "build": "^custom$",
            "source": "^custom$",
            "install": None,
            "link": None,
            "archive": None,
            "dependencies": None,
        },
        {
            "name": "custom_tgt",
            "id": "^custom_tgt::@c11385ffed57b860da63$",
            "directorySource": "^custom$",
            "projectName": "Custom",
            "type": "UTILITY",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/custom/CMakeFiles/custom_tgt$",
                    "isGenerated": True,
                    "sourceGroupName": "",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^custom/CMakeLists\\.txt$",
                            "line": 3,
                            "command": "add_custom_target",
                            "hasParent": True,
                        },
                        {
                            "file": "^custom/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/(custom/)?CMakeFiles/([0-9a-f]+/)?custom_tgt\\.rule$",
                    "isGenerated": True,
                    "sourceGroupName": "CMake Rules",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^custom/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/custom/CMakeFiles/custom_tgt$",
                    ],
                },
                {
                    "name": "CMake Rules",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/(custom/)?CMakeFiles/([0-9a-f]+/)?custom_tgt\\.rule$",
                    ],
                },
            ],
            "compileGroups": None,
            "backtrace": [
                {
                    "file": "^custom/CMakeLists\\.txt$",
                    "line": 3,
                    "command": "add_custom_target",
                    "hasParent": True,
                },
                {
                    "file": "^custom/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": None,
            "artifacts": None,
            "build": "^custom$",
            "source": "^custom$",
            "install": None,
            "link": None,
            "archive": None,
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@c11385ffed57b860da63$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "custom_exe",
            "id": "^custom_exe::@c11385ffed57b860da63$",
            "directorySource": "^custom$",
            "projectName": "Custom",
            "type": "EXECUTABLE",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^empty\\.c$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "C",
                    "backtrace": [
                        {
                            "file": "^custom/CMakeLists\\.txt$",
                            "line": 4,
                            "command": "add_executable",
                            "hasParent": True,
                        },
                        {
                            "file": "^custom/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "C",
                    "sourcePaths": [
                        "^empty\\.c$",
                    ],
                    "includes": None,
                    "defines": None,
                },
            ],
            "backtrace": [
                {
                    "file": "^custom/CMakeLists\\.txt$",
                    "line": 4,
                    "command": "add_executable",
                    "hasParent": True,
                },
                {
                    "file": "^custom/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^custom_exe(\\.exe)?$",
            "artifacts": [
                {
                    "path": "^custom/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?custom_exe(\\.exe)?$",
                    "_dllExtra": False,
                },
                {
                    "path": "^custom/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?custom_exe\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^custom$",
            "source": "^custom$",
            "install": None,
            "link": {
                "language": "C",
                "lto": None,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^custom_tgt::@c11385ffed57b860da63$",
                    "backtrace": [
                        {
                            "file": "^custom/CMakeLists\\.txt$",
                            "line": 5,
                            "command": "add_dependencies",
                            "hasParent": True,
                        },
                        {
                            "file": "^custom/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "id": "^ZERO_CHECK::@c11385ffed57b860da63$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "ALL_BUILD",
            "id": "^ALL_BUILD::@[0-9a-f]+$",
            "directorySource": "^.*/Tests/RunCMake/FileAPIExternalSource$",
            "projectName": "External",
            "type": "UTILITY",
            "isGeneratorProvided": True,
            "sources": [
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/FileAPIExternalBuild/CMakeFiles/ALL_BUILD$",
                    "isGenerated": True,
                    "sourceGroupName": "",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/FileAPIExternalBuild/CMakeFiles/ALL_BUILD\\.rule$",
                    "isGenerated": True,
                    "sourceGroupName": "CMake Rules",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/FileAPIExternalBuild/CMakeFiles/ALL_BUILD$",
                    ],
                },
                {
                    "name": "CMake Rules",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/FileAPIExternalBuild/CMakeFiles/ALL_BUILD\\.rule$",
                    ],
                },
            ],
            "compileGroups": None,
            "backtrace": [
                {
                    "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": None,
            "artifacts": None,
            "build": "^.*/Tests/RunCMake/FileAPI/FileAPIExternalBuild$",
            "source": "^.*/Tests/RunCMake/FileAPIExternalSource$",
            "install": None,
            "link": None,
            "archive": None,
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@[0-9a-f]+$",
                    "backtrace": None,
                },
                {
                    "id": "^generated_exe::@[0-9a-f]+$",
                    "backtrace": None,
                },
            ],
        },
        {
            "name": "ZERO_CHECK",
            "id": "^ZERO_CHECK::@[0-9a-f]+$",
            "directorySource": "^.*/Tests/RunCMake/FileAPIExternalSource$",
            "projectName": "External",
            "type": "UTILITY",
            "isGeneratorProvided": True,
            "sources": [
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/FileAPIExternalBuild/CMakeFiles/ZERO_CHECK$",
                    "isGenerated": True,
                    "sourceGroupName": "",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/FileAPIExternalBuild/CMakeFiles/ZERO_CHECK\\.rule$",
                    "isGenerated": True,
                    "sourceGroupName": "CMake Rules",
                    "compileGroupLanguage": None,
                    "backtrace": [
                        {
                            "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/FileAPIExternalBuild/CMakeFiles/ZERO_CHECK$",
                    ],
                },
                {
                    "name": "CMake Rules",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/FileAPIExternalBuild/CMakeFiles/ZERO_CHECK\\.rule$",
                    ],
                },
            ],
            "compileGroups": None,
            "backtrace": [
                {
                    "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": None,
            "artifacts": None,
            "build": "^.*/Tests/RunCMake/FileAPI/FileAPIExternalBuild$",
            "source": "^.*/Tests/RunCMake/FileAPIExternalSource$",
            "install": None,
            "link": None,
            "archive": None,
            "dependencies": None,
        },
        {
            "name": "generated_exe",
            "id": "^generated_exe::@[0-9a-f]+$",
            "directorySource": "^.*/Tests/RunCMake/FileAPIExternalSource$",
            "projectName": "External",
            "type": "EXECUTABLE",
            "isGeneratorProvided": None,
            "sources": [
                {
                    "path": "^.*/Tests/RunCMake/FileAPIExternalSource/empty\\.c$",
                    "isGenerated": None,
                    "sourceGroupName": "Source Files",
                    "compileGroupLanguage": "C",
                    "backtrace": [
                        {
                            "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                            "line": 5,
                            "command": "add_executable",
                            "hasParent": True,
                        },
                        {
                            "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/FileAPIExternalBuild/generated\\.cxx$",
                    "isGenerated": True,
                    "sourceGroupName": "Generated Source Files",
                    "compileGroupLanguage": "CXX",
                    "backtrace": [
                        {
                            "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                            "line": 6,
                            "command": "target_sources",
                            "hasParent": True,
                        },
                        {
                            "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                            "line": None,
                            "command": None,
                            "hasParent": False,
                        },
                    ],
                },
            ],
            "sourceGroups": [
                {
                    "name": "Source Files",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPIExternalSource/empty\\.c$",
                    ],
                },
                {
                    "name": "Generated Source Files",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/FileAPIExternalBuild/generated\\.cxx$",
                    ],
                },
            ],
            "compileGroups": [
                {
                    "language": "C",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPIExternalSource/empty\\.c$",
                    ],
                    "includes": [
                        {
                            "path": "^.*/Tests/RunCMake/FileAPI/FileAPIExternalBuild$",
                            "isSystem": None,
                            "backtrace": None,
                        },
                        {
                            "path": "^.*/Tests/RunCMake/FileAPIExternalSource$",
                            "isSystem": True,
                            "backtrace": [
                                {
                                    "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                                    "line": 11,
                                    "command": "target_include_directories",
                                    "hasParent": True,
                                },
                                {
                                    "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                                    "line": None,
                                    "command": None,
                                    "hasParent": False,
                                },
                            ],
                        },
                    ],
                    "defines": [
                        {
                            "define": "EMPTY_C=1",
                            "backtrace": None,
                        },
                        {
                            "define": "SRC_DUMMY",
                            "backtrace": None,
                        },
                        {
                            "define": "GENERATED_EXE=1",
                            "backtrace": [
                                {
                                    "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                                    "line": 12,
                                    "command": "target_compile_definitions",
                                    "hasParent": True,
                                },
                                {
                                    "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                                    "line": None,
                                    "command": None,
                                    "hasParent": False,
                                },
                            ],
                        },
                        {
                            "define": "TGT_DUMMY",
                            "backtrace": [
                                {
                                    "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                                    "line": 12,
                                    "command": "target_compile_definitions",
                                    "hasParent": True,
                                },
                                {
                                    "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                                    "line": None,
                                    "command": None,
                                    "hasParent": False,
                                },
                            ],
                        },
                    ],
                },
                {
                    "language": "CXX",
                    "sourcePaths": [
                        "^.*/Tests/RunCMake/FileAPI/FileAPIExternalBuild/generated\\.cxx$",
                    ],
                    "includes": [
                        {
                            "path": "^.*/Tests/RunCMake/FileAPIExternalSource$",
                            "isSystem": True,
                            "backtrace": [
                                {
                                    "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                                    "line": 11,
                                    "command": "target_include_directories",
                                    "hasParent": True,
                                },
                                {
                                    "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                                    "line": None,
                                    "command": None,
                                    "hasParent": False,
                                },
                            ],
                        },
                    ],
                    "defines": [
                        {
                            "define": "GENERATED_EXE=1",
                            "backtrace": [
                                {
                                    "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                                    "line": 12,
                                    "command": "target_compile_definitions",
                                    "hasParent": True,
                                },
                                {
                                    "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                                    "line": None,
                                    "command": None,
                                    "hasParent": False,
                                },
                            ],
                        },
                        {
                            "define": "TGT_DUMMY",
                            "backtrace": [
                                {
                                    "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                                    "line": 12,
                                    "command": "target_compile_definitions",
                                    "hasParent": True,
                                },
                                {
                                    "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                                    "line": None,
                                    "command": None,
                                    "hasParent": False,
                                },
                            ],
                        },
                    ],
                },
            ],
            "backtrace": [
                {
                    "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                    "line": 5,
                    "command": "add_executable",
                    "hasParent": True,
                },
                {
                    "file": "^.*/Tests/RunCMake/FileAPIExternalSource/CMakeLists\\.txt$",
                    "line": None,
                    "command": None,
                    "hasParent": False,
                },
            ],
            "folder": None,
            "nameOnDisk": "^generated_exe(\\.exe)?$",
            "artifacts": [
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/FileAPIExternalBuild/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?generated_exe(\\.exe)?$",
                    "_dllExtra": False,
                },
                {
                    "path": "^.*/Tests/RunCMake/FileAPI/FileAPIExternalBuild/((Debug|Release|RelWithDebInfo|MinSizeRel)/)?generated_exe\\.pdb$",
                    "_dllExtra": True,
                },
            ],
            "build": "^.*/Tests/RunCMake/FileAPI/FileAPIExternalBuild$",
            "source": "^.*/Tests/RunCMake/FileAPIExternalSource$",
            "install": None,
            "link": {
                "language": "CXX",
                "lto": None,
            },
            "archive": None,
            "dependencies": [
                {
                    "id": "^ZERO_CHECK::@[0-9a-f]+$",
                    "backtrace": None,
                },
            ],
        },
    ]

    if not os.path.exists(os.path.join(reply_dir, "..", "..", "..", "..", "ipo_enabled.txt")):
        for e in expected:
            try:
                e["link"]["lto"] = None
            except TypeError:  # "link" is not a dict, no problem.
                pass
            try:
                e["archive"]["lto"] = None
            except TypeError:  # "archive" is not a dict, no problem.
                pass

    if inSource:
        for e in expected:
            if e["sources"] is not None:
                for s in e["sources"]:
                    s["path"] = s["path"].replace("^.*/Tests/RunCMake/FileAPI/", "^", 1)
            if e["sourceGroups"] is not None:
                for g in e["sourceGroups"]:
                    g["sourcePaths"] = [p.replace("^.*/Tests/RunCMake/FileAPI/", "^", 1) for p in g["sourcePaths"]]
            if e["compileGroups"] is not None:
                for g in e["compileGroups"]:
                    g["sourcePaths"] = [p.replace("^.*/Tests/RunCMake/FileAPI/", "^", 1) for p in g["sourcePaths"]]

    if matches(g, "^Visual Studio "):
        expected = filter_list(lambda e: e["name"] not in ("ZERO_CHECK") or e["id"] == "^ZERO_CHECK::@6890427a1f51a3e7e1df$", expected)
        for e in expected:
            if e["type"] == "UTILITY":
                if e["id"] == "^ZERO_CHECK::@6890427a1f51a3e7e1df$":
                    e["sources"] = [
                        {
                            "path": "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/CMakeFiles/([0-9a-f]+/)?generate\\.stamp\\.rule$",
                            "isGenerated": True,
                            "sourceGroupName": "CMake Rules",
                            "compileGroupLanguage": None,
                            "backtrace": [
                                {
                                    "file": "^CMakeLists\\.txt$",
                                    "line": None,
                                    "command": None,
                                    "hasParent": False,
                                },
                            ],
                        },
                    ]
                    e["sourceGroups"] = [
                        {
                            "name": "CMake Rules",
                            "sourcePaths": [
                                "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build/CMakeFiles/([0-9a-f]+/)?generate\\.stamp\\.rule$",
                            ],
                        },
                    ]
                elif e["name"] in ("ALL_BUILD"):
                    e["sources"] = []
                    e["sourceGroups"] = None
            if e["dependencies"] is not None:
                for d in e["dependencies"]:
                    if matches(d["id"], "^\\^ZERO_CHECK::@"):
                        d["id"] = "^ZERO_CHECK::@6890427a1f51a3e7e1df$"

    elif g == "Xcode":
        if ';' in os.environ.get("CMAKE_OSX_ARCHITECTURES", ""):
            expected = filter_list(lambda e: e["name"] not in ("link_imported_object_exe"), expected)
            for e in expected:
                e["dependencies"] = filter_list(lambda d: not matches(d["id"], "^\\^link_imported_object_exe::@"), e["dependencies"])
                if e["name"] in ("c_object_lib", "cxx_object_lib"):
                    e["artifacts"] = None

    else:
        for e in expected:
            e["dependencies"] = filter_list(lambda d: not matches(d["id"], "^\\^ZERO_CHECK::@"), e["dependencies"])

        expected = filter_list(lambda t: t["name"] not in ("ALL_BUILD", "ZERO_CHECK"), expected)

    if sys.platform not in ("win32", "cygwin", "msys"):
        for e in expected:
            e["artifacts"] = filter_list(lambda a: not a["_dllExtra"], e["artifacts"])

    if "aix" not in sys.platform:
        for e in expected:
            e["artifacts"] = filter_list(lambda a: not a.get("_aixExtra", False), e["artifacts"])

    return expected

def check_targets(c, g, inSource):
    check_list_match(lambda a, e: matches(a["id"], e["id"]),
                     c["targets"], gen_check_targets(c, g, inSource),
                     check=check_target(c),
                     check_exception=lambda a, e: "Target ID: %s" % a["id"],
                     missing_exception=lambda e: "Target ID: %s" % e["id"],
                     extra_exception=lambda a: "Target ID: %s" % a["id"])

def gen_check_projects(c, g):
    expected = [
        {
            "name": "codemodel-v2",
            "parentName": None,
            "childNames": [
                "Alias",
                "Custom",
                "Cxx",
                "Imported",
                "Object",
                "External",
            ],
            "directorySources": [
                "^\\.$",
                "^dir$",
                "^dir/dir$",
            ],
            "targetIds": [
                "^ALL_BUILD::@6890427a1f51a3e7e1df$",
                "^ZERO_CHECK::@6890427a1f51a3e7e1df$",
                "^interface_exe::@6890427a1f51a3e7e1df$",
                "^c_lib::@6890427a1f51a3e7e1df$",
                "^c_exe::@6890427a1f51a3e7e1df$",
                "^c_shared_lib::@6890427a1f51a3e7e1df$",
                "^c_shared_exe::@6890427a1f51a3e7e1df$",
                "^c_static_lib::@6890427a1f51a3e7e1df$",
                "^c_static_exe::@6890427a1f51a3e7e1df$",
            ],
        },
        {
            "name": "Cxx",
            "parentName": "codemodel-v2",
            "childNames": None,
            "directorySources": [
                "^cxx$",
            ],
            "targetIds": [
                "^ALL_BUILD::@a56b12a3f5c0529fb296$",
                "^ZERO_CHECK::@a56b12a3f5c0529fb296$",
                "^cxx_lib::@a56b12a3f5c0529fb296$",
                "^cxx_exe::@a56b12a3f5c0529fb296$",
                "^cxx_shared_lib::@a56b12a3f5c0529fb296$",
                "^cxx_shared_exe::@a56b12a3f5c0529fb296$",
                "^cxx_static_lib::@a56b12a3f5c0529fb296$",
                "^cxx_static_exe::@a56b12a3f5c0529fb296$",
            ],
        },
        {
            "name": "Alias",
            "parentName": "codemodel-v2",
            "childNames": None,
            "directorySources": [
                "^alias$",
            ],
            "targetIds": [
                "^ALL_BUILD::@53632cba2752272bb008$",
                "^ZERO_CHECK::@53632cba2752272bb008$",
                "^c_alias_exe::@53632cba2752272bb008$",
                "^cxx_alias_exe::@53632cba2752272bb008$",
            ],
        },
        {
            "name": "Object",
            "parentName": "codemodel-v2",
            "childNames": None,
            "directorySources": [
                "^object$",
            ],
            "targetIds": [
                "^ALL_BUILD::@5ed5358f70faf8d8af7a$",
                "^ZERO_CHECK::@5ed5358f70faf8d8af7a$",
                "^c_object_lib::@5ed5358f70faf8d8af7a$",
                "^c_object_exe::@5ed5358f70faf8d8af7a$",
                "^cxx_object_lib::@5ed5358f70faf8d8af7a$",
                "^cxx_object_exe::@5ed5358f70faf8d8af7a$",
            ],
        },
        {
            "name": "Imported",
            "parentName": "codemodel-v2",
            "childNames": None,
            "directorySources": [
                "^imported$",
            ],
            "targetIds": [
                "^ALL_BUILD::@ba7eb709d0b48779c6c8$",
                "^ZERO_CHECK::@ba7eb709d0b48779c6c8$",
                "^link_imported_exe::@ba7eb709d0b48779c6c8$",
                "^link_imported_shared_exe::@ba7eb709d0b48779c6c8$",
                "^link_imported_static_exe::@ba7eb709d0b48779c6c8$",
                "^link_imported_object_exe::@ba7eb709d0b48779c6c8$",
                "^link_imported_interface_exe::@ba7eb709d0b48779c6c8$",
            ],
        },
        {
            "name": "Custom",
            "parentName": "codemodel-v2",
            "childNames": None,
            "directorySources": [
                "^custom$",
            ],
            "targetIds": [
                "^ALL_BUILD::@c11385ffed57b860da63$",
                "^ZERO_CHECK::@c11385ffed57b860da63$",
                "^custom_tgt::@c11385ffed57b860da63$",
                "^custom_exe::@c11385ffed57b860da63$",
            ],
        },
        {
            "name": "External",
            "parentName": "codemodel-v2",
            "childNames": None,
            "directorySources": [
                "^.*/Tests/RunCMake/FileAPIExternalSource$",
            ],
            "targetIds": [
                "^ALL_BUILD::@[0-9a-f]+$",
                "^ZERO_CHECK::@[0-9a-f]+$",
                "^generated_exe::@[0-9a-f]+$",
            ],
        },
    ]

    if matches(g, "^Visual Studio "):
        for e in expected:
            if e["parentName"] is not None:
                e["targetIds"] = filter_list(lambda t: not matches(t, "^\\^ZERO_CHECK"), e["targetIds"])

    elif g == "Xcode":
        if ';' in os.environ.get("CMAKE_OSX_ARCHITECTURES", ""):
            for e in expected:
                e["targetIds"] = filter_list(lambda t: not matches(t, "^\\^(link_imported_object_exe)"), e["targetIds"])

    else:
        for e in expected:
            e["targetIds"] = filter_list(lambda t: not matches(t, "^\\^(ALL_BUILD|ZERO_CHECK)"), e["targetIds"])

    return expected

def check_projects(c, g):
    check_list_match(lambda a, e: is_string(a["name"], e["name"]), c["projects"], gen_check_projects(c, g),
                     check=check_project(c),
                     check_exception=lambda a, e: "Project name: %s" % a["name"],
                     missing_exception=lambda e: "Project name: %s" % e["name"],
                     extra_exception=lambda a: "Project name: %s" % a["name"])

def check_object_codemodel_configuration(c, g, inSource):
    assert sorted(c.keys()) == ["directories", "name", "projects", "targets"]
    assert is_string(c["name"])
    check_directories(c, g)
    check_targets(c, g, inSource)
    check_projects(c, g)

def check_object_codemodel(g):
    def _check(o):
        assert sorted(o.keys()) == ["configurations", "kind", "paths", "version"]
        # The "kind" and "version" members are handled by check_index_object.
        assert is_dict(o["paths"])
        assert sorted(o["paths"].keys()) == ["build", "source"]
        assert matches(o["paths"]["build"], "^.*/Tests/RunCMake/FileAPI/codemodel-v2-build$")
        assert matches(o["paths"]["source"], "^.*/Tests/RunCMake/FileAPI$")

        inSource = os.path.dirname(o["paths"]["build"]) == o["paths"]["source"]

        if matches(g, "^(Visual Studio |Xcode$)"):
            assert sorted([c["name"] for c in o["configurations"]]) == ["Debug", "MinSizeRel", "RelWithDebInfo", "Release"]
        else:
            assert len(o["configurations"]) == 1
            assert o["configurations"][0]["name"] in ("", "Debug", "Release", "RelWithDebInfo", "MinSizeRel")

        for c in o["configurations"]:
            check_object_codemodel_configuration(c, g, inSource)
    return _check

assert is_dict(index)
assert sorted(index.keys()) == ["cmake", "objects", "reply"]
check_objects(index["objects"], index["cmake"]["generator"]["name"])
