Initial Vexta Core v0.1.0 release
This commit is contained in:
commit
25c454329d
2481 changed files with 689289 additions and 0 deletions
53
build_msvc/msbuild/tasks/hexdump.targets
Normal file
53
build_msvc/msbuild/tasks/hexdump.targets
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<UsingTask
|
||||
TaskName="HeaderFromHexdump"
|
||||
TaskFactory="CodeTaskFactory"
|
||||
AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.Core.dll" >
|
||||
<ParameterGroup>
|
||||
<RawFilePath Required="true" />
|
||||
<HeaderFilePath Required="true" />
|
||||
<SourceHeader Required="true" />
|
||||
<SourceFooter Required="true" />
|
||||
</ParameterGroup>
|
||||
<Task>
|
||||
<Using Namespace="System"/>
|
||||
<Using Namespace="System.IO"/>
|
||||
<Code Type="Fragment" Language="cs">
|
||||
<![CDATA[
|
||||
Log.LogMessage("msbuild inline hexdump task for " + RawFilePath + ".");
|
||||
if(File.Exists(RawFilePath) == false) {
|
||||
Log.LogError("hexdump task could not locate " + RawFilePath + ".");
|
||||
}
|
||||
else {
|
||||
FileInfo inFileInfo = new FileInfo(RawFilePath);
|
||||
FileInfo outFileInfo = new FileInfo(HeaderFilePath);
|
||||
|
||||
if (outFileInfo.Exists == false || inFileInfo.LastWriteTime > outFileInfo.LastWriteTime)
|
||||
{
|
||||
using (Stream inStm = File.OpenRead(RawFilePath))
|
||||
{
|
||||
using (StreamWriter sw = new StreamWriter(HeaderFilePath))
|
||||
{
|
||||
sw.WriteLine(SourceHeader);
|
||||
int count = 0;
|
||||
int rawChar = inStm.ReadByte();
|
||||
while(rawChar != -1)
|
||||
{
|
||||
sw.Write("0x{0:x2}, ", rawChar);
|
||||
count++;
|
||||
if(count % 8 == 0)
|
||||
{
|
||||
sw.WriteLine();
|
||||
}
|
||||
rawChar = inStm.ReadByte();
|
||||
}
|
||||
sw.WriteLine(SourceFooter);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]]>
|
||||
</Code>
|
||||
</Task>
|
||||
</UsingTask>
|
||||
</Project>
|
||||
35
build_msvc/msbuild/tasks/replaceinfile.targets
Normal file
35
build_msvc/msbuild/tasks/replaceinfile.targets
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<UsingTask
|
||||
TaskName="ReplaceInFile"
|
||||
TaskFactory="CodeTaskFactory"
|
||||
AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.Core.dll" >
|
||||
<ParameterGroup>
|
||||
<FilePath Required="true" />
|
||||
<Replace Required="true" />
|
||||
<By Required="false" />
|
||||
<ToFullPath Required="false" />
|
||||
</ParameterGroup>
|
||||
<Task>
|
||||
<Using Namespace="System"/>
|
||||
<Using Namespace="System.IO"/>
|
||||
<Code Type="Fragment" Language="cs">
|
||||
<![CDATA[
|
||||
if(File.Exists(FilePath) == false) {
|
||||
Log.LogError("replaceinfile task could not locate " + FilePath + ".");
|
||||
}
|
||||
else {
|
||||
var data = File.ReadAllText(FilePath);
|
||||
var by = By;
|
||||
if (ToFullPath == "true")
|
||||
{
|
||||
by = Path.GetFullPath(by);
|
||||
}
|
||||
data = data.Replace(Replace, by);
|
||||
Log.LogMessage("Replace '" + Replace + "' by '" + by + "' in " + FilePath);
|
||||
File.WriteAllText(FilePath, data, new System.Text.UTF8Encoding(false));
|
||||
}
|
||||
]]>
|
||||
</Code>
|
||||
</Task>
|
||||
</UsingTask>
|
||||
</Project>
|
||||
Loading…
Reference in a new issue