Merge topic 'fileapi-interface-and-imported-targets'

b626843d71 fileAPI: Output all INTERFACE and IMPORTED targets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !11232
This commit is contained in:
Brad King
2025-09-29 13:21:01 +00:00
committed by Kitware Robot
99 changed files with 1160 additions and 82 deletions
+75 -5
View File
@@ -82,6 +82,13 @@ def check_directory(c, major, minor):
missing_exception=lambda e: "Target ID: %s" % e,
extra_exception=lambda a: "Target ID: %s" % c["targets"][a]["id"])
if expected["abstractTargetIds"] is not None:
expected_keys.append("abstractTargetIndexes")
check_list_match(lambda a, e: matches(c["abstractTargets"][a]["id"], e),
actual["abstractTargetIndexes"], expected["abstractTargetIds"],
missing_exception=lambda e: "Abstract target ID: %s" % e,
extra_exception=lambda a: "Abstract target ID: %s" % c["abstractTargets"][a]["id"])
if expected["minimumCMakeVersion"] is not None:
expected_keys.append("minimumCMakeVersion")
assert is_dict(actual["minimumCMakeVersion"])
@@ -295,6 +302,18 @@ def check_target(c, major, minor):
assert is_string(obj["type"], expected["type"])
check_backtrace_graph(obj["backtraceGraph"])
if expected["imported"] is not None:
expected_keys.append("imported")
assert is_bool(obj["imported"], expected["imported"])
if expected["local"] is not None:
expected_keys.append("local")
assert is_bool(obj["local"], expected["local"])
if expected["abstract"] is not None:
expected_keys.append("abstract")
assert is_bool(obj["abstract"], expected["abstract"])
assert is_dict(obj["paths"])
assert sorted(obj["paths"].keys()) == ["build", "source"]
assert matches(obj["paths"]["build"], expected["build"])
@@ -747,6 +766,13 @@ def check_project(c):
missing_exception=lambda e: "Target ID: %s" % e,
extra_exception=lambda a: "Target ID: %s" % c["targets"][a]["id"])
if expected["abstractTargetIds"] is not None:
expected_keys.append("abstractTargetIndexes")
check_list_match(lambda a, e: matches(c["abstractTargets"][a]["id"], e),
actual["abstractTargetIndexes"], expected["abstractTargetIds"],
missing_exception=lambda e: "Abstract target ID: %s" % e,
extra_exception=lambda a: "Abstract target ID: %s" % c["abstractTargets"][a]["id"])
assert sorted(actual.keys()) == sorted(expected_keys)
return _check
@@ -779,6 +805,7 @@ def gen_check_directories(c, g):
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"])
e["abstractTargetIds"] = filter_list(lambda t: not matches(t, "^\\^(imported_object_lib)"), e["abstractTargetIds"])
else:
for e in expected:
@@ -815,7 +842,7 @@ def check_directories(c, g, major, minor):
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):
def gen_check_build_system_targets(c, g, inSource):
expected = [
read_codemodel_json_data("targets/all_build_top.json"),
read_codemodel_json_data("targets/zero_check_top.json"),
@@ -1015,14 +1042,55 @@ def gen_check_targets(c, g, inSource):
return expected
def check_targets(c, g, major, minor, inSource):
def gen_check_abstract_targets(c, g, inSource):
expected = [
read_codemodel_json_data("targets/interface_lib.json"),
read_codemodel_json_data("targets/import_framework.json"),
read_codemodel_json_data("targets/imported_exe.json"),
read_codemodel_json_data("targets/imported_lib.json"),
read_codemodel_json_data("targets/imported_interface_lib.json"),
read_codemodel_json_data("targets/imported_object_lib.json"),
read_codemodel_json_data("targets/imported_shared_lib.json"),
read_codemodel_json_data("targets/imported_static_lib.json"),
read_codemodel_json_data("targets/iface_none.json"),
]
if sys.platform == "darwin":
for e in expected:
if e["name"] == "import_framework":
apple_import_framework = read_codemodel_json_data("targets/apple_import_framework.json")
e["artifacts"] = apple_import_framework["artifacts"]
e["nameOnDisk"] = apple_import_framework["nameOnDisk"]
if g["name"] == "Xcode":
if ';' in os.environ.get("CMAKE_OSX_ARCHITECTURES", ""):
expected = filter_list(lambda e: e["name"] not in ("imported_object_lib"), expected)
if sys.platform not in ("win32", "cygwin", "msys"):
for e in expected:
e["artifacts"] = filter_list(lambda a: not a["_dllExtra"], e["artifacts"])
return expected
def check_build_system_targets(c, g, major, minor, inSource):
check_list_match(lambda a, e: matches(a["id"], e["id"]),
c["targets"], gen_check_targets(c, g, inSource),
c["targets"], gen_check_build_system_targets(c, g, inSource),
check=check_target(c, major, minor),
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 check_abstract_targets(c, g, major, minor, inSource):
check_list_match(lambda a, e: matches(a["id"], e["id"]),
c["abstractTargets"], gen_check_abstract_targets(c, g, inSource),
check=check_target(c, major, minor),
check_exception=lambda a, e: "Abstract target ID: %s" % a["id"],
missing_exception=lambda e: "Abstract target ID: %s" % e["id"],
extra_exception=lambda a: "Abstract target ID: %s" % a["id"])
def gen_check_projects(c, g):
expected = [
read_codemodel_json_data("projects/codemodel-v2.json"),
@@ -1045,6 +1113,7 @@ def gen_check_projects(c, g):
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"])
e["abstractTargetIds"] = filter_list(lambda t: not matches(t, "^\\^(imported_object_lib)"), e["abstractTargetIds"])
else:
for e in expected:
@@ -1060,10 +1129,11 @@ def check_projects(c, g):
extra_exception=lambda a: "Project name: %s" % a["name"])
def check_object_codemodel_configuration(c, g, major, minor, inSource):
assert sorted(c.keys()) == ["directories", "name", "projects", "targets"]
assert sorted(c.keys()) == ["abstractTargets", "directories", "name", "projects", "targets"]
assert is_string(c["name"])
check_directories(c, g, major, minor)
check_targets(c, g, major, minor, inSource)
check_build_system_targets(c, g, major, minor, inSource)
check_abstract_targets(c, g, major, minor, inSource)
check_projects(c, g)
def check_object_codemodel(g, major, minor):
@@ -9,6 +9,7 @@
"^c_alias_exe::@53632cba2752272bb008$",
"^cxx_alias_exe::@53632cba2752272bb008$"
],
"abstractTargetIds": null,
"projectName": "Alias",
"minimumCMakeVersion": "3.13",
"hasInstallRule": null,
@@ -9,6 +9,7 @@
"^custom_exe::@c11385ffed57b860da63$",
"^custom_tgt::@c11385ffed57b860da63$"
],
"abstractTargetIds": null,
"projectName": "Custom",
"minimumCMakeVersion": "3.13",
"hasInstallRule": null,
@@ -9,6 +9,7 @@
"^cxx_exe_cross_emulator_args::@ee4a268216d1f53c4e2e$",
"^cxx_exe_test_launcher_and_cross_emulator::@ee4a268216d1f53c4e2e$"
],
"abstractTargetIds": null,
"projectName": "Cxx",
"minimumCMakeVersion": "3.13",
"hasInstallRule": null,
@@ -18,6 +18,7 @@
"^cxx_static_exe::@a56b12a3f5c0529fb296$",
"^cxx_static_lib::@a56b12a3f5c0529fb296$"
],
"abstractTargetIds": null,
"projectName": "Cxx",
"minimumCMakeVersion": "3.13",
"hasInstallRule": true,
@@ -7,6 +7,7 @@
"^dir/very-long$"
],
"targetIds": null,
"abstractTargetIds": null,
"projectName": "codemodel-v2",
"minimumCMakeVersion": "3.13",
"hasInstallRule": null,
@@ -4,6 +4,7 @@
"parentSource": "^dir$",
"childSources": null,
"targetIds": null,
"abstractTargetIds": null,
"projectName": "codemodel-v2",
"minimumCMakeVersion": "3.13",
"hasInstallRule": null,
@@ -4,6 +4,7 @@
"parentSource": "^dir$",
"childSources": null,
"targetIds": null,
"abstractTargetIds": null,
"projectName": "codemodel-v2",
"minimumCMakeVersion": "3.13",
"hasInstallRule": null,
@@ -8,6 +8,7 @@
"^ZERO_CHECK::@[0-9a-f]+$",
"^generated_exe::@[0-9a-f]+$"
],
"abstractTargetIds": null,
"projectName": "External",
"minimumCMakeVersion": "3.13",
"hasInstallRule": true,
@@ -7,6 +7,7 @@
"^c_headers_1::@6b8db101d64c125f29fe$",
"^c_headers_2::@6b8db101d64c125f29fe$"
],
"abstractTargetIds": null,
"projectName": "codemodel-v2",
"minimumCMakeVersion": "3.13",
"hasInstallRule": true,
@@ -10,6 +10,9 @@
"^static_framework::@217a96c3a62328a73ef4$",
"^exe_framework::@217a96c3a62328a73ef4$"
],
"abstractTargetIds": [
"^import_framework::@217a96c3a62328a73ef4$"
],
"projectName": "Framework",
"minimumCMakeVersion": "3.13",
"hasInstallRule": null,
@@ -12,6 +12,14 @@
"^link_imported_shared_exe::@ba7eb709d0b48779c6c8$",
"^link_imported_static_exe::@ba7eb709d0b48779c6c8$"
],
"abstractTargetIds": [
"^imported_exe::@ba7eb709d0b48779c6c8$",
"^imported_interface_lib::@ba7eb709d0b48779c6c8$",
"^imported_lib::@ba7eb709d0b48779c6c8$",
"^imported_object_lib::@ba7eb709d0b48779c6c8$",
"^imported_shared_lib::@ba7eb709d0b48779c6c8$",
"^imported_static_lib::@ba7eb709d0b48779c6c8$"
],
"projectName": "Imported",
"minimumCMakeVersion": "3.13",
"hasInstallRule": true,
@@ -34,7 +42,7 @@
"backtrace": [
{
"file": "^imported/CMakeLists\\.txt$",
"line": 32,
"line": 35,
"command": "install",
"hasParent": true
},
@@ -64,7 +72,7 @@
"backtrace": [
{
"file": "^imported/CMakeLists\\.txt$",
"line": 35,
"line": 38,
"command": "install",
"hasParent": true
},
@@ -8,6 +8,9 @@
"^ZERO_CHECK::@25b7fa8ea00134654b85$",
"^iface_srcs::@25b7fa8ea00134654b85$"
],
"abstractTargetIds": [
"^iface_none::@25b7fa8ea00134654b85$"
],
"projectName": "Interface",
"minimumCMakeVersion": "3.13",
"hasInstallRule": null,
@@ -11,6 +11,7 @@
"^cxx_object_exe::@5ed5358f70faf8d8af7a$",
"^cxx_object_lib::@5ed5358f70faf8d8af7a$"
],
"abstractTargetIds": null,
"projectName": "Object",
"minimumCMakeVersion": "3.13",
"hasInstallRule": true,
@@ -4,6 +4,7 @@
"parentSource": "^\\.$",
"childSources": null,
"targetIds": null,
"abstractTargetIds": null,
"projectName": "codemodel-v2",
"minimumCMakeVersion": "3.13",
"hasInstallRule": null,
@@ -27,6 +27,9 @@
"^c_subdir::@6890427a1f51a3e7e1df$",
"^interface_exe::@6890427a1f51a3e7e1df$"
],
"abstractTargetIds": [
"^interface_lib::@6890427a1f51a3e7e1df$"
],
"projectName": "codemodel-v2",
"minimumCMakeVersion": "3.13",
"hasInstallRule": true,
@@ -10,5 +10,6 @@
"^ZERO_CHECK::@53632cba2752272bb008$",
"^c_alias_exe::@53632cba2752272bb008$",
"^cxx_alias_exe::@53632cba2752272bb008$"
]
],
"abstractTargetIds": null
}
@@ -32,5 +32,8 @@
"^c_subdir::@6890427a1f51a3e7e1df$",
"^c_headers_1::@6b8db101d64c125f29fe$",
"^c_headers_2::@6b8db101d64c125f29fe$"
],
"abstractTargetIds": [
"^interface_lib::@6890427a1f51a3e7e1df$"
]
}
@@ -10,5 +10,6 @@
"^ZERO_CHECK::@c11385ffed57b860da63$",
"^custom_tgt::@c11385ffed57b860da63$",
"^custom_exe::@c11385ffed57b860da63$"
]
],
"abstractTargetIds": null
}
@@ -21,5 +21,6 @@
"^cxx_shared_exe::@a56b12a3f5c0529fb296$",
"^cxx_static_lib::@a56b12a3f5c0529fb296$",
"^cxx_static_exe::@a56b12a3f5c0529fb296$"
]
],
"abstractTargetIds": null
}
@@ -9,5 +9,6 @@
"^ALL_BUILD::@[0-9a-f]+$",
"^ZERO_CHECK::@[0-9a-f]+$",
"^generated_exe::@[0-9a-f]+$"
]
],
"abstractTargetIds": null
}
@@ -11,5 +11,8 @@
"^shared_framework::@217a96c3a62328a73ef4$",
"^static_framework::@217a96c3a62328a73ef4$",
"^exe_framework::@217a96c3a62328a73ef4$"
],
"abstractTargetIds": [
"^import_framework::@217a96c3a62328a73ef4$"
]
}
@@ -13,5 +13,13 @@
"^link_imported_static_exe::@ba7eb709d0b48779c6c8$",
"^link_imported_object_exe::@ba7eb709d0b48779c6c8$",
"^link_imported_interface_exe::@ba7eb709d0b48779c6c8$"
],
"abstractTargetIds": [
"^imported_exe::@ba7eb709d0b48779c6c8$",
"^imported_lib::@ba7eb709d0b48779c6c8$",
"^imported_interface_lib::@ba7eb709d0b48779c6c8$",
"^imported_object_lib::@ba7eb709d0b48779c6c8$",
"^imported_shared_lib::@ba7eb709d0b48779c6c8$",
"^imported_static_lib::@ba7eb709d0b48779c6c8$"
]
}
@@ -9,5 +9,8 @@
"^ALL_BUILD::@25b7fa8ea00134654b85$",
"^ZERO_CHECK::@25b7fa8ea00134654b85$",
"^iface_srcs::@25b7fa8ea00134654b85$"
],
"abstractTargetIds": [
"^iface_none::@25b7fa8ea00134654b85$"
]
}
@@ -12,5 +12,6 @@
"^c_object_exe::@5ed5358f70faf8d8af7a$",
"^cxx_object_lib::@5ed5358f70faf8d8af7a$",
"^cxx_object_exe::@5ed5358f70faf8d8af7a$"
]
],
"abstractTargetIds": null
}
@@ -4,6 +4,9 @@
"directorySource": "^alias$",
"projectName": "Alias",
"type": "UTILITY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": true,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^custom$",
"projectName": "Custom",
"type": "UTILITY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": true,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^cxx$",
"projectName": "Cxx",
"type": "UTILITY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": true,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^.*/Tests/RunCMake/FileAPIExternalSource$",
"projectName": "External",
"type": "UTILITY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": true,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^framework$",
"projectName": "Framework",
"type": "UTILITY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": true,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^imported$",
"projectName": "Imported",
"type": "UTILITY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": true,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^interface$",
"projectName": "Interface",
"type": "UTILITY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": true,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^object$",
"projectName": "Object",
"type": "UTILITY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": true,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^\\.$",
"projectName": "codemodel-v2",
"type": "UTILITY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": true,
"fileSets": null,
"sources": [
@@ -0,0 +1,9 @@
{
"nameOnDisk": "^Foo",
"artifacts": [
{
"path": "^/usr/Frameworks/Foo.framework/Foo$",
"_dllExtra": false
}
]
}
@@ -4,6 +4,9 @@
"directorySource": "^alias$",
"projectName": "Alias",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^\\.$",
"projectName": "codemodel-v2",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^fileset$",
"projectName": "codemodel-v2",
"type": "STATIC_LIBRARY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": [
{
@@ -4,6 +4,9 @@
"directorySource": "^fileset$",
"projectName": "codemodel-v2",
"type": "STATIC_LIBRARY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": [
{
@@ -4,6 +4,9 @@
"directorySource": "^\\.$",
"projectName": "codemodel-v2",
"type": "STATIC_LIBRARY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^object$",
"projectName": "Object",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^object$",
"projectName": "Object",
"type": "OBJECT_LIBRARY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^\\.$",
"projectName": "codemodel-v2",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^\\.$",
"projectName": "codemodel-v2",
"type": "SHARED_LIBRARY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^\\.$",
"projectName": "codemodel-v2",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^\\.$",
"projectName": "codemodel-v2",
"type": "STATIC_LIBRARY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^\\.$",
"projectName": "codemodel-v2",
"type": "STATIC_LIBRARY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^custom$",
"projectName": "Custom",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^custom$",
"projectName": "Custom",
"type": "UTILITY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^alias$",
"projectName": "Alias",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^cxx$",
"projectName": "Cxx",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^cxx/cross$",
"projectName": "Cxx",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^cxx/cross$",
"projectName": "Cxx",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^cxx$",
"projectName": "Cxx",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^cxx/cross$",
"projectName": "Cxx",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^cxx$",
"projectName": "Cxx",
"type": "STATIC_LIBRARY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^object$",
"projectName": "Object",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^object$",
"projectName": "Object",
"type": "OBJECT_LIBRARY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^cxx$",
"projectName": "Cxx",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^cxx$",
"projectName": "Cxx",
"type": "SHARED_LIBRARY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^cxx$",
"projectName": "Cxx",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^cxx$",
"projectName": "Cxx",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^cxx$",
"projectName": "Cxx",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^cxx$",
"projectName": "Cxx",
"type": "STATIC_LIBRARY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^framework$",
"projectName": "Framework",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^.*/Tests/RunCMake/FileAPIExternalSource$",
"projectName": "External",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -0,0 +1,38 @@
{
"name": "iface_none",
"id": "^iface_none::@25b7fa8ea00134654b85$",
"directorySource": "^interface$",
"projectName": "Interface",
"type": "INTERFACE_LIBRARY",
"imported": null,
"local": null,
"abstract": true,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [],
"sourceGroups": null,
"compileGroups": null,
"backtrace": [
{
"file": "^interface/CMakeLists\\.txt$",
"line": 2,
"command": "add_library",
"hasParent": true
},
{
"file": "^interface/CMakeLists\\.txt$",
"line": null,
"command": null,
"hasParent": false
}
],
"folder": null,
"nameOnDisk": null,
"artifacts": null,
"build": "^interface$",
"source": "^interface$",
"install": null,
"link": null,
"archive": null,
"dependencies": null
}
@@ -4,6 +4,9 @@
"directorySource": "^interface$",
"projectName": "Interface",
"type": "INTERFACE_LIBRARY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -0,0 +1,47 @@
{
"name": "import_framework",
"id": "^import_framework::@217a96c3a62328a73ef4$",
"directorySource": "^framework$",
"projectName": "Framework",
"type": "SHARED_LIBRARY",
"imported": true,
"local": true,
"abstract": true,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [],
"sourceGroups": null,
"compileGroups": null,
"backtrace": [
{
"file": "^framework/CMakeLists\\.txt$",
"line": 11,
"command": "add_library",
"hasParent": true
},
{
"file": "^framework/CMakeLists\\.txt$",
"line": null,
"command": null,
"hasParent": false
}
],
"folder": null,
"nameOnDisk": "^(lib|cyg|msys-)?Foo(\\.(so|dll))?$",
"artifacts": [
{
"path": "^/usr/Frameworks/Foo.framework/Foo(\\.(so|dll))?$",
"_dllExtra": false
},
{
"path": "^/usr/Frameworks/Foo.framework/(lib)?Foo\\.(dll\\.a|lib|l)$",
"_dllExtra": true
}
],
"build": "^framework$",
"source": "^framework$",
"install": null,
"link": null,
"archive": null,
"dependencies": null
}
@@ -0,0 +1,43 @@
{
"name": "imported_exe",
"id": "^imported_exe::@ba7eb709d0b48779c6c8$",
"directorySource": "^imported$",
"projectName": "Imported",
"type": "EXECUTABLE",
"imported": true,
"local": true,
"abstract": true,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [],
"sourceGroups": null,
"compileGroups": null,
"backtrace": [
{
"file": "^imported/CMakeLists\\.txt$",
"line": 5,
"command": "add_executable",
"hasParent": true
},
{
"file": "^imported/CMakeLists\\.txt$",
"line": null,
"command": null,
"hasParent": false
}
],
"folder": null,
"nameOnDisk": "^imported_exe(\\.exe)?$",
"artifacts": [
{
"path": "^((Debug|Release|RelWithDebInfo|MinSizeRel)/)?imported_exe(\\.exe)?$",
"_dllExtra": false
}
],
"build": "^imported$",
"source": "^imported$",
"install": null,
"link": null,
"archive": null,
"dependencies": null
}
@@ -0,0 +1,38 @@
{
"name": "imported_interface_lib",
"id": "^imported_interface_lib::@ba7eb709d0b48779c6c8$",
"directorySource": "^imported$",
"projectName": "Imported",
"type": "INTERFACE_LIBRARY",
"imported": true,
"local": true,
"abstract": true,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [],
"sourceGroups": null,
"compileGroups": null,
"backtrace": [
{
"file": "^imported/CMakeLists\\.txt$",
"line": 31,
"command": "add_library",
"hasParent": true
},
{
"file": "^imported/CMakeLists\\.txt$",
"line": null,
"command": null,
"hasParent": false
}
],
"folder": null,
"nameOnDisk": null,
"artifacts": null,
"build": "^imported$",
"source": "^imported$",
"install": null,
"link": null,
"archive": null,
"dependencies": null
}
@@ -0,0 +1,38 @@
{
"name": "imported_lib",
"id": "^imported_lib::@ba7eb709d0b48779c6c8$",
"directorySource": "^imported$",
"projectName": "Imported",
"type": "UNKNOWN_LIBRARY",
"imported": true,
"local": true,
"abstract": true,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [],
"sourceGroups": null,
"compileGroups": null,
"backtrace": [
{
"file": "^imported/CMakeLists\\.txt$",
"line": 3,
"command": "add_library",
"hasParent": true
},
{
"file": "^imported/CMakeLists\\.txt$",
"line": null,
"command": null,
"hasParent": false
}
],
"folder": null,
"nameOnDisk": null,
"artifacts": null,
"build": "^imported$",
"source": "^imported$",
"install": null,
"link": null,
"archive": null,
"dependencies": null
}
@@ -0,0 +1,38 @@
{
"name": "imported_object_lib",
"id": "^imported_object_lib::@ba7eb709d0b48779c6c8$",
"directorySource": "^imported$",
"projectName": "Imported",
"type": "OBJECT_LIBRARY",
"imported": true,
"local": true,
"abstract": true,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [],
"sourceGroups": null,
"compileGroups": null,
"backtrace": [
{
"file": "^imported/CMakeLists\\.txt$",
"line": 26,
"command": "add_library",
"hasParent": true
},
{
"file": "^imported/CMakeLists\\.txt$",
"line": null,
"command": null,
"hasParent": false
}
],
"folder": null,
"nameOnDisk": null,
"artifacts": null,
"build": "^imported$",
"source": "^imported$",
"install": null,
"link": null,
"archive": null,
"dependencies": null
}
@@ -0,0 +1,47 @@
{
"name": "imported_shared_lib",
"id": "^imported_shared_lib::@ba7eb709d0b48779c6c8$",
"directorySource": "^imported$",
"projectName": "Imported",
"type": "SHARED_LIBRARY",
"imported": true,
"local": true,
"abstract": true,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [],
"sourceGroups": null,
"compileGroups": null,
"backtrace": [
{
"file": "^imported/CMakeLists\\.txt$",
"line": 12,
"command": "add_library",
"hasParent": true
},
{
"file": "^imported/CMakeLists\\.txt$",
"line": null,
"command": null,
"hasParent": false
}
],
"folder": null,
"nameOnDisk": "^(lib|cyg|msys-)?imported_shared\\.(so|dylib|dll)$",
"artifacts": [
{
"path": "^((Debug|Release|RelWithDebInfo|MinSizeRel)/)?(lib|cyg|msys-)?imported_shared\\.(so|dylib|dll)$",
"_dllExtra": false
},
{
"path": "^((Debug|Release|RelWithDebInfo|MinSizeRel)/)?(lib)?imported_shared\\.(dll\\.a|lib|l)$",
"_dllExtra": true
}
],
"build": "^imported$",
"source": "^imported$",
"install": null,
"link": null,
"archive": null,
"dependencies": null
}
@@ -0,0 +1,43 @@
{
"name": "imported_static_lib",
"id": "^imported_static_lib::@ba7eb709d0b48779c6c8$",
"directorySource": "^imported$",
"projectName": "Imported",
"type": "STATIC_LIBRARY",
"imported": true,
"local": true,
"abstract": true,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [],
"sourceGroups": null,
"compileGroups": null,
"backtrace": [
{
"file": "^imported/CMakeLists\\.txt$",
"line": 20,
"command": "add_library",
"hasParent": true
},
{
"file": "^imported/CMakeLists\\.txt$",
"line": null,
"command": null,
"hasParent": false
}
],
"folder": null,
"nameOnDisk": "^(lib)?imported_static\\.(a|lib|l)$",
"artifacts": [
{
"path": "^((Debug|Release|RelWithDebInfo|MinSizeRel)/)?(lib)?imported_static\\.(a|lib|l)$",
"_dllExtra": false
}
],
"build": "^imported$",
"source": "^imported$",
"install": null,
"link": null,
"archive": null,
"dependencies": null
}
@@ -4,6 +4,9 @@
"directorySource": "^\\.$",
"projectName": "codemodel-v2",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -0,0 +1,62 @@
{
"name": "interface_lib",
"id": "^interface_lib::@6890427a1f51a3e7e1df$",
"directorySource": "^\\.$",
"projectName": "codemodel-v2",
"type": "INTERFACE_LIBRARY",
"imported": null,
"local": null,
"abstract": true,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [],
"sourceGroups": null,
"compileGroups": null,
"backtrace": [
{
"file": "^include_test\\.cmake$",
"line": 1,
"command": "add_library",
"hasParent": true
},
{
"file": "^include_test\\.cmake$",
"line": null,
"command": null,
"hasParent": true
},
{
"file": "^codemodel-v2\\.cmake$",
"line": 7,
"command": "include",
"hasParent": true
},
{
"file": "^codemodel-v2\\.cmake$",
"line": null,
"command": null,
"hasParent": true
},
{
"file": "^CMakeLists\\.txt$",
"line": 3,
"command": "include",
"hasParent": true
},
{
"file": "^CMakeLists\\.txt$",
"line": null,
"command": null,
"hasParent": false
}
],
"folder": null,
"nameOnDisk": null,
"artifacts": null,
"build": "^\\.$",
"source": "^\\.$",
"install": null,
"link": null,
"archive": null,
"dependencies": null
}
@@ -4,6 +4,9 @@
"directorySource": "^imported$",
"projectName": "Imported",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -16,7 +19,7 @@
"backtrace": [
{
"file": "^imported/CMakeLists\\.txt$",
"line": 6,
"line": 9,
"command": "add_executable",
"hasParent": true
},
@@ -52,7 +55,7 @@
"backtrace": [
{
"file": "^imported/CMakeLists\\.txt$",
"line": 6,
"line": 9,
"command": "add_executable",
"hasParent": true
},
@@ -4,6 +4,9 @@
"directorySource": "^imported$",
"projectName": "Imported",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -16,7 +19,7 @@
"backtrace": [
{
"file": "^imported/CMakeLists\\.txt$",
"line": 29,
"line": 32,
"command": "add_executable",
"hasParent": true
},
@@ -52,7 +55,7 @@
"backtrace": [
{
"file": "^imported/CMakeLists\\.txt$",
"line": 29,
"line": 32,
"command": "add_executable",
"hasParent": true
},
@@ -4,6 +4,9 @@
"directorySource": "^imported$",
"projectName": "Imported",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -16,7 +19,7 @@
"backtrace": [
{
"file": "^imported/CMakeLists\\.txt$",
"line": 24,
"line": 27,
"command": "add_executable",
"hasParent": true
},
@@ -52,7 +55,7 @@
"backtrace": [
{
"file": "^imported/CMakeLists\\.txt$",
"line": 24,
"line": 27,
"command": "add_executable",
"hasParent": true
},
@@ -4,6 +4,9 @@
"directorySource": "^imported$",
"projectName": "Imported",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -16,7 +19,7 @@
"backtrace": [
{
"file": "^imported/CMakeLists\\.txt$",
"line": 14,
"line": 17,
"command": "add_executable",
"hasParent": true
},
@@ -52,7 +55,7 @@
"backtrace": [
{
"file": "^imported/CMakeLists\\.txt$",
"line": 14,
"line": 17,
"command": "add_executable",
"hasParent": true
},
@@ -4,6 +4,9 @@
"directorySource": "^imported$",
"projectName": "Imported",
"type": "EXECUTABLE",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -16,7 +19,7 @@
"backtrace": [
{
"file": "^imported/CMakeLists\\.txt$",
"line": 19,
"line": 22,
"command": "add_executable",
"hasParent": true
},
@@ -52,7 +55,7 @@
"backtrace": [
{
"file": "^imported/CMakeLists\\.txt$",
"line": 19,
"line": 22,
"command": "add_executable",
"hasParent": true
},
@@ -4,6 +4,9 @@
"directorySource": "^framework$",
"projectName": "Framework",
"type": "SHARED_LIBRARY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^framework$",
"projectName": "Framework",
"type": "STATIC_LIBRARY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": null,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^alias$",
"projectName": "Alias",
"type": "UTILITY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": true,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^custom$",
"projectName": "Custom",
"type": "UTILITY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": true,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^cxx$",
"projectName": "Cxx",
"type": "UTILITY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": true,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^.*/Tests/RunCMake/FileAPIExternalSource$",
"projectName": "External",
"type": "UTILITY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": true,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^framework$",
"projectName": "Framework",
"type": "UTILITY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": true,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^imported$",
"projectName": "Imported",
"type": "UTILITY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": true,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^interface$",
"projectName": "Interface",
"type": "UTILITY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": true,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^object$",
"projectName": "Object",
"type": "UTILITY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": true,
"fileSets": null,
"sources": [
@@ -4,6 +4,9 @@
"directorySource": "^\\.$",
"projectName": "codemodel-v2",
"type": "UTILITY",
"imported": null,
"local": null,
"abstract": null,
"isGeneratorProvided": true,
"fileSets": null,
"sources": [
@@ -3,6 +3,9 @@ project(Imported)
add_library(imported_lib UNKNOWN IMPORTED)
set_target_properties(imported_lib PROPERTIES IMPORTED_LOCATION "imported_unk${CMAKE_STATIC_LIBRARY_SUFFIX}")
add_executable(imported_exe IMPORTED)
set_target_properties(imported_exe PROPERTIES
IMPORTED_LOCATION "imported_exe${CMAKE_EXECUTABLE_SUFFIX}"
)
add_executable(link_imported_exe ../empty.c)
target_link_libraries(link_imported_exe PRIVATE imported_lib)