mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
[Frontend] Add some paths to the output of -print-target-info.
Add various target-specific and compiler-determined paths to the output of `-print-target-info`, such as the runtime resource path, SDK path, and runtime library paths.
This commit is contained in:
@@ -1892,6 +1892,38 @@ static void printTargetInfo(CompilerInvocation &invocation,
|
||||
<< (tripleRequiresRPathForSwiftInOS(langOpts.Target) ? "true" : "false")
|
||||
<< "\n";
|
||||
|
||||
out << " },\n";
|
||||
|
||||
// Various paths.
|
||||
auto &searchOpts = invocation.getSearchPathOptions();
|
||||
out << " \"paths\": {\n";
|
||||
|
||||
if (!searchOpts.SDKPath.empty()) {
|
||||
out << " \"sdkPath\": \"";
|
||||
out.write_escaped(searchOpts.SDKPath);
|
||||
out << "\",\n";
|
||||
}
|
||||
|
||||
auto outputPaths = [&](StringRef name, const std::vector<std::string> &paths){
|
||||
out << " \"" << name << "\": [\n";
|
||||
interleave(paths, [&out](const std::string &path) {
|
||||
out << " \"";
|
||||
out.write_escaped(path);
|
||||
out << "\"";
|
||||
}, [&out] {
|
||||
out << ",\n";
|
||||
});
|
||||
out << "\n ],\n";
|
||||
};
|
||||
|
||||
outputPaths("runtimeLibraryPaths", searchOpts.RuntimeLibraryPaths);
|
||||
outputPaths("runtimeLibraryImportPaths",
|
||||
searchOpts.RuntimeLibraryImportPaths);
|
||||
|
||||
out << " \"runtimeResourcePath\": \"";
|
||||
out.write_escaped(searchOpts.RuntimeResourcePath);
|
||||
out << "\"\n";
|
||||
|
||||
out << " }\n";
|
||||
|
||||
out << "}\n";
|
||||
|
||||
Reference in New Issue
Block a user