[xharness] Process "$(ProjectDir)" in mtouch extra args when cloning project files.

This commit is contained in:
Rolf Bjarne Kvinge 2017-02-06 19:34:54 +01:00
Родитель 90d8b0b29c
Коммит 9d3f4da6f2
1 изменённых файлов: 10 добавлений и 0 удалений

Просмотреть файл

@ -669,6 +669,10 @@ namespace xharness
new string [] { "ObjcBindingNativeLibrary", "Include" }, new string [] { "ObjcBindingNativeLibrary", "Include" },
new string [] { "ObjcBindingNativeFramework", "Include" }, new string [] { "ObjcBindingNativeFramework", "Include" },
}; };
var nodes_with_variables = new string []
{
"MtouchExtraArgs",
};
Func<string, string> convert = (input) => Func<string, string> convert = (input) =>
{ {
if (input [0] == '/') if (input [0] == '/')
@ -685,6 +689,12 @@ namespace xharness
foreach (var node in nodes) foreach (var node in nodes)
node.InnerText = convert (node.InnerText); node.InnerText = convert (node.InnerText);
} }
foreach (var key in nodes_with_variables) {
var nodes = csproj.SelectElementNodes (key);
foreach (var node in nodes) {
node.InnerText = node.InnerText.Replace ("${ProjectDir}", Harness.Quote (System.IO.Path.GetDirectoryName (project_path)));
}
}
foreach (var kvp in attributes_with_paths) { foreach (var kvp in attributes_with_paths) {
var element = kvp [0]; var element = kvp [0];
var attrib = kvp [1]; var attrib = kvp [1];